从数组中读取控制台的用户输入

时间:2013-10-25 23:16:31

标签: c# arrays console-application

您好我正在使用visual studio 2010学习一些C#,目前我正在控制台应用程序中执行数组

我创建了一个数组,它提供了我正在寻找的输出。这是我用于我的数组的代码

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {

            var lottery_numbers = new[] { "1,", "2, ", "3", "4", "5", "6", "7", "8", "9", "10" };

            for (var i = 0; i < 10; i++)

            Console.WriteLine("{0}", lottery_numbers[i]);
            Console.Read();
        }
    }
}

我也知道要让用户输入控制台,我需要一些类似于以下内容的代码:

        string numbLine;
        Console.WriteLine("display number lines: ");
        numbLine = Console.ReadLine();
        Console.WriteLine();

我无法解决的问题是我想要询问用户要输出多少行然后它会显示数组中用户输入的行数

例如会询问用户

输出多少行 用户会放5 然后控制台将输出数组中的前5行

3 个答案:

答案 0 :(得分:1)

只需从用户处获取号码并循环显示该号码。

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {

            var lottery_numbers = new[] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" };
            //Asking for user input
            Console.WriteLine("How many number's you want to display?? ");

            // getting input from user
            int number = Convert.ToInt32(Console.ReadLine());

            // loop through the number user gave as input
            for (var i = 0; i < number; i++)
            {
                Console.WriteLine("{0}", lottery_numbers[i]);
            }
            Console.Read();
        }
    }
}

答案 1 :(得分:0)

试试这个:

Console.WriteLine("how many lines for output: ");
var numbLine = Convert.ToInt32(Console.ReadLine());

for (var i = 0; i < numbLine; i++)
    Console.WriteLine("{0}", lottery_numbers[i]);

答案 2 :(得分:0)

要打印X行,只需更改for循环的上限:

for (var i = 0; i < 10; i++)
    Console.WriteLine("{0}", lottery_numbers[i]);

变为

int howManyLinesToOutput = 5;
for (var i = 0; i < howManyLinesToOutput; i++)
    Console.WriteLine("{0}", lottery_numbers[i]);

到目前为止一直很好?

接下来,您必须弄清楚如何根据用户输入的内容设置howManyLinesToOutput。 Console.ReadLine()看起来像我们想要的,但它返回一个字符串。我们如何将字符串更改为整数?我们解析它。

这是解析int的一种方法:

string numbLine = Console.ReadLine();
int howManyLinesToOutput = int.Parse(numbLine);

这是另一种方式:

string numbLine = Console.ReadLine();
int howManyLinesToOutput = Convert.ToInt32(numbLine);

将上述内容放在一起,您的家庭作业应该很容易。


额外学分

如果用户没有输入号码怎么办?你会收到一个错误。这是一种解决方法

int howManyLinesToOutput;
bool numberEnteredFlag = false;
while (!numberEnteredFlag)
{
    string numbLine = Console.ReadLine();
    numberEnteredFlag = int.TryParse(numbLine, out howManyLinesToOutput);
}

如需更多额外信用,请修改上述代码以处理用户输入负数的情况。