如题所述,希望用C#语言,或者Sql语言描叙
再举个例子:水果(苹果、桔子、香蕉、菠萝)
生成随机序列,可能是(香蕉、苹果、菠萝、桔子),或者(苹果、菠萝、桔子、香蕉)
这么写就可以了
private void button1_Click(object sender, EventArgs e)
{
List<int> arrList = new List<int>();
string str = "";
for (int i = 0; i < 10; i++)
{
arrList.Add(i);
}
int num;
Random random = new Random();
while (arrList.Count != 0)
{
num = random.Next(0, 10);
if (arrList.Contains(num))
{
str += num + ",";
arrList.Remove(num);
}
}
str = str.Substring(0, str.Length - 1);
MessageBox.Show(str);
}
private void button1_Click(object sender, EventArgs e)
{
List<int> arrList = new List<int>();
string str = "";
for (int i = 0; i < 10; i++)
{
arrList.Add(i);
}
int num;
Random random = new Random();
while (arrList.Count != 0)
{
num = random.Next(0, 10);
if (arrList.Contains(num))
{
str += num + ",";
arrList.Remove(num);
}
}
str = str.Substring(0, str.Length - 1);
MessageBox.Show(str);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2009-07-11
随即输出没什么 最主要的是判断一个数只能出现一次
Random r=new Random() int a=r.next(0,10)
我的用的这个方法 先把这些数放入一个数组里 先随即输出一个 比如输入9 用一个循环把后面的数覆盖到前面一个(for (y = j; y < 9;y++ ){array[y] = array[y + 1];})(循环里y<9 是如果出现最后一位数 就不运行循环不覆盖) 外面套个WHILE(x<10)运行10次
这种方法不用在判断是否重复 个人觉得很简单 就几步
Random r=new Random() int a=r.next(0,10)
我的用的这个方法 先把这些数放入一个数组里 先随即输出一个 比如输入9 用一个循环把后面的数覆盖到前面一个(for (y = j; y < 9;y++ ){array[y] = array[y + 1];})(循环里y<9 是如果出现最后一位数 就不运行循环不覆盖) 外面套个WHILE(x<10)运行10次
这种方法不用在判断是否重复 个人觉得很简单 就几步
第2个回答 2009-07-11
产生几个随机数就行了,如果是水果(苹果、桔子、香蕉、菠萝)
这种的话,用枚举就行
这种的话,用枚举就行