-2

こんにちは、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 行を出力します

4

3 に答える 3

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 を解析する 1 つの方法を次に示します。

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);
}

さらに追加のクレジットを得るには、上記のコードを変更して、ユーザーが負の数を入力した状況を処理します。

于 2013-10-25T23:24:34.677 に答える
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]);
于 2013-10-25T23:21:23.743 に答える