0

498 を超える [x] 個の数値を出力すると、コンソール ウィンドウに 500 を超える数値が表示されないことに気付きました。for ループのさまざまなバリエーションを試しました。これを関数、クラスに変換したり、構造体を実装したりできることはわかっていますが、 、さらには foreach を使用してこれを試してみましたが、それでも数値をスキップします。それで、私はこれについて興味を持ち、最終的に質問を投稿することにしました。

コードは基本的なものです:

        for (int i = 3; i < 1001 ; i+=3)
        {

            if (i > 0 && i < 200)
            {
                Console.WriteLine(i);

            }

            if (i > 200 && i < 400)
            {
                Console.WriteLine(i);
            }

            if (i > 400 && i < 600)
            {
                Console.WriteLine(i);
            }
            if (i > 600 && i < 800)
            {
                Console.WriteLine(i);
            }
            if (i > 800 && i < 1000)
            {
                Console.WriteLine(i);
            }

        }

        Console.ReadKey();
4

4 に答える 4

1

コンソールには、表示できる最大行数があります。これが「バッファ」サイズです。バッファがいっぱいのときに新しい行を書き込むと、「最も古い」行が削除されます。

バッファ サイズが使用しているものを確認できます。

Console.BufferHeight

バッファのサイズは、使用されている特定のシェル プログラムとその設定によって異なります。

以下を使用できます。

Console.SetBufferSize

バッファサイズを設定しますが、それでも非常に大きくしか設定できません。

出力が大きすぎてコンソールを効果的に見ることができない場合は、データをコンソールに書き出す代わりに (またはそれに加えて) ファイルに書き出すことを検討してください。

于 2013-11-12T18:03:34.080 に答える
0

これが欲しいらしい…

        for (int i = 3; i < 1001; i ++)
        {

            if (i % 3 == 0)
            {
                Console.WriteLine(i);
            }
        }

        Console.ReadKey();

「%」演算子は剰余です... 3 で割った余りを返します。

于 2013-11-12T17:29:36.520 に答える
0

コードを簡素化し、結果セットをコンソール ウィンドウに合わせるには、次のことを試してください。

for(int i=3; i<1000; i+=3)
{
   Console.Write(i + ", ");
}
于 2013-11-12T17:51:46.693 に答える