using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int[] num = new int[10];//此数组用于存放随机数
int N;//此变量用于接收随机函数组数
Random r = new Random();//实例化随机对象
Console.WriteLine("本随机触发器,适合七星彩选数");
Console.WriteLine("请输入你要生成的随机数组数");
N = int.Parse(Console.ReadLine());//将键盘读入字符转换为整形
for (int i = 0; i < N; i++)//用于控制生成层数
{
for (int j = 0; j < 7; j++)
{
num[i] = r.Next(10);
}
}
for (int x = 0; x < N; x++)
{
Console.WriteLine("");
for (int k = 0; k < 7; k++)
{
Console.Write(num[k]);
}
} }
}
}
测试中存在BUG,输出的几组随机数都相同,而且输入1,2,只是相应的改变第一位,第二位其它位为0,困惑不解..
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int[] num = new int[10];//此数组用于存放随机数
int N;//此变量用于接收随机函数组数
Random r = new Random();//实例化随机对象
Console.WriteLine("本随机触发器,适合七星彩选数");
Console.WriteLine("请输入你要生成的随机数组数");
N = int.Parse(Console.ReadLine());//将键盘读入字符转换为整形
for (int i = 0; i < N; i++)//用于控制生成层数
{
for (int j = 0; j < 7; j++)
{
num[i] = r.Next(10);
}
}
for (int x = 0; x < N; x++)
{
Console.WriteLine("");
for (int k = 0; k < 7; k++)
{
Console.Write(num[k]);
}
} }
}
}
测试中存在BUG,输出的几组随机数都相同,而且输入1,2,只是相应的改变第一位,第二位其它位为0,困惑不解..
应该是num[j]吧
{
newr = r.next(x);
}
{
Console.WriteLine("");
for (int k = 0; k < 7; k++)
{
Console.Write(num[k]);
}
}
//你这里的循环根本就是同一个输出
//int[] num = new int[10];/你定义了10个,没有赋值的默认为0.。所以就输出了0
{
for (int j = 0; j < 7; j++)
{
num[i] = r.Next(10);
}
}
这个循环J有什么用?
N = int.Parse(Console.ReadLine());//将键盘读入字符转换为整形 for (int i = 0; i < N; i++)//用于控制生成层数
{
for (int j = 0; j < 7; j++)
{
num[j ] = r.Next(10);
Console.Write(num[j]);
}
Console.WriteLine();
}
Console.ReadKey();另外,num 不应该定义成一维数组。