C# - 输入具有特定范围的数字列表

时间:2015-11-08 15:45:19

标签: c#

如何输入13个数字并确保它们都在0到9之间?我一直试图找到过去一小时的解决方案。

3 个答案:

答案 0 :(得分:1)

在for循环中,使用System.Random获取0到9范围内的int。

希望有帮助,我没有编写解决方案,因为......好吧,如果你要学习c#,你最好能够自己做到这一点!

编辑:

我会继续发布我的回答"与caviet:如果你出于某种职业原因(例如回答学校测试问题或通过就业面试筛选)问这个问题 *那么仅供参考:复制/粘贴别人在StackOverflow上写的解决方案会削弱你的能够在未来获得(或保持)工作,并降低您的赚钱能力。 * 我会继续进一步阐述,但我相信如果我们考虑一下,我们都知道这些影响。

        var random = new Random();
        var list = new List<int>();
        for (var i = 0; i < 13; i++)
        {
            list.Add(random.Next(10));
        }

答案 1 :(得分:1)

使用Linq:

var AllAreBetween0And9 = listOfEnteredIntegers.All(x => x >= 0 && x <= 9);

答案 2 :(得分:0)

我不相信我会这样,但你在这里:

<强>添加

 int[] inputs = new int[13]; // here you have inputs
            for(int i=0;i<13;i++)
            {
                Console.WriteLine("Please gimme number "+ (i+1));
                int value;
                value = int.Parse(Console.ReadLine());
                inputs[i] = value;
            }

<强>检查:

 int[] ints = new[] {0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
        foreach (var i in ints)
        {
            if (i>=0 | i<9)
            {
                //i is between 0-9
            }
            else
            {
                //do nothing
            }
        }

p.s foreach过度,您可以使用for或其他功能较少的循环,也许它会强迫您阅读有关此类问题的内容

因为你是循环的...没有循环的输入,i{number}可以是i[index]的{​​{1}}

无循环添加

int [] i

使用正则表达式进行检查

int i1 = int.Parse(Console.ReadLine());
int i2 = int.Parse(Console.ReadLine());
int i3 = int.Parse(Console.ReadLine());
int i4 = int.Parse(Console.ReadLine());
int i5 = int.Parse(Console.ReadLine());
int i6 = int.Parse(Console.ReadLine());
int i7 = int.Parse(Console.ReadLine());
int i8 = int.Parse(Console.ReadLine());
int i9 = int.Parse(Console.ReadLine());
int i10 = int.Parse(Console.ReadLine());
int i11 = int.Parse(Console.ReadLine());
int i12 = int.Parse(Console.ReadLine());
int i13 = int.Parse(Console.ReadLine());