生成随机数1-100

时间:2013-06-01 09:43:03

标签: c# random max average min

我需要生成1到100的随机数,我知道如何做到这一点......

我需要询问用户他想要生成多少个数字(如果他说5该程序需要从1到100生成5个数字)。我现在只知道如何通过在列表中添加新的int来创建可修复的金额。

之前我确实做到了,但后来我无法使它工作,所以它会写出这些数字的平均值和最小值+最大值。

以下是我的代码:

Random k = new Random(); 
//here i added in the same way other variables and put them in a list
int j = k.Next(100);

Console.WriteLine("");
double[] list1 = {j}; 
double povp = list1.Average();
Console.WriteLine(povp);

Console.WriteLine("");
Console.WriteLine(list1.Max()); 
Console.WriteLine("");
Console.WriteLine(list1.Min());

Console.ReadKey();

3 个答案:

答案 0 :(得分:5)

您可以使用以下代码生成N个数字:

IEnumerable<int> numbers = Enumerable.Repeat(1,N).Select(_ => random.Next(100));

答案 1 :(得分:1)

// ask user for input
string input = Console.Readline();
int parsed;
// parse to int, needs error checking (will throw exception when input is not a valid int)
int.TryParse(input, out parsed);

Random random = new Random();
List<double> list = new List<double>();

for(int i = 0; i < parsed; parsed++)
{
  list.Add(random.Next(100));
}

答案 2 :(得分:1)

public void Main()
        {
            const int NUMBERS_FROM = 1;
            const int NUMBERS_TO = 100;

            int n = int.Parse(Console.ReadLine());
            Random rnd = new Random();
            List<int> numbers = new List<int>();

            for (int i = 0; i < n; i++)
            {
                int rndNumber = rnd.Next(NUMBERS_FROM, NUMBERS_TO + 1);
                numbers.Add(rndNumber);
            }

            Console.WriteLine("Numbers : {0}",string.Join(", ",numbers));
        }

这将生成N个数字并将它们添加到列表中,然后将它们打印到控制台。我认为这就是你要找的东西