入门 硬件知识 电脑基础 上网入门 故障 电脑修护 电脑健康 精通电脑 网站 DIV+CSS 建站知识 SEO知识
教程 电脑操作 平面设计 路由设置 技巧 Word Excel QQ技巧 壁纸 自然风景 酷车美女 系统桌面
系统 安装系统 系统技巧 系统设置 安全 木马查杀 黑客防御 安全资讯 美女 明星写真 清纯美女 性感美女

主页 > 电脑编程 > INTRODUCE

C#生成不重复的随机数:抽奖小程序的代码

发布时间:2013-04-07 作者:电脑知识网 来源:www.sogoupc.com 字号:

C#生成不重复的随机数:抽奖小程序的代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, System.EventArgs e)
        {

            int[] arr = getRandomNum(6, 1, 20); //从1至20中取出6个互不相同的随机数

            int i = 0;

            string temp = "";

            while (i <= arr.Length - 1)
            {

                temp += arr[i].ToString() +" ";

                i++;

            }

            label1.Text = temp; //显示在label1中

        }
        public int[] getRandomNum(int num, int minValue, int maxValue)
        {

            Random ra = new Random(unchecked((int)DateTime.Now.Ticks));

            int[] arrNum = new int[num];

            int tmp = 0;

            for (int i = 0; i <= num - 1; i++)
            {

                tmp = ra.Next(minValue, maxValue); //随机取数

                arrNum[i] = getNum(arrNum, tmp, minValue, maxValue, ra); //取出值赋到数组中

            }

            return arrNum;

        }
        public int getNum(int[] arrNum, int tmp, int minValue, int maxValue, Random ra)
        {

            int n = 0;

            while (n <= arrNum.Length - 1)
            {

                if (arrNum[n] == tmp) //利用循环判断是否有重复
                {

                    tmp = ra.Next(minValue, maxValue); //重新随机获取。

                    getNum(arrNum, tmp, minValue, maxValue, ra);//递归:如果取出来的数字和已取得的数字有重复就重新随机获取。

                }

                n++;

            }

            return tmp;

        }

    }
}


文章: C#生成不重复的随机数:抽奖小程序的代码
地址:http://www.sogoupc.com/pcbc/201304/1886.html
------分隔线----------------------------
------分隔线----------------------------
栏目分类
热门电脑编程文章推荐