3

これは簡単な質問ですが、私はまだこの言語を学んでいます。

数が 5 の場合に書き込むようにパラメーターを持つプログラムを作成する方法

*
**
***
****
*****

私がすることができます:

*
*
*
*

これを使用して:

private void button1_Click(object sender, EventArgs e)
{
    string message = " ";

    for (int count = 0; count < numericUpDown1.Value; count++)
    {
        for (int m = 0; m < numericUpDown1.Value; count)
        {
            message += "*" + "\r\n";
        }
    }
}

2 番目のループが必要だと思いますが、for次に何をすればよいかわかりません。

4

5 に答える 5

12

それが概念的な宿題でない場合は、次の方法で解決する方がはるかに簡単です。

for(int i=1; i<=n; i++)
  Console.WriteLine(new string('*',i));
于 2012-07-24T11:46:14.570 に答える
2

2 つのループが必要です (注を参照)。

最初の (a) は 1 から 5 まで数えます。

2 番目 (b) は 1 から a までカウントし、そのたびに「*」を追加します。

private void button1_Click(object sender, EventArgs e)
{
    string message = " ";

    for (int count = 0; count < numericUpDown1.Value; count++)
    {
        for (int m = 0; m < count; m++)
        {
            message += "*";
        }
        message += "\r\n"
    }
}

1 つの for ループで実行できます。でも個人的には2ループバージョンの方がわかりやすいと思います。

private void button1_Click(object sender, EventArgs e)
{
    string line = "";
    string message = " ";

    for (int count = 0; count < numericUpDown1.Value; count++)
    {
       line += "*";
       message += "\r\n" + line;
    }
}
于 2012-07-24T11:44:27.883 に答える
0

2つのforループは必要ありません。代わりにこれを試してください

private void button1_Click(object sender, EventArgs e)
{
    string message = "";

    for (int count = 1; count < numericUpDown1.Value + 1; count++)
    {
         message += "".PadLeft(count,'*') + Environment.NewLine;      
    }
}
于 2012-07-24T11:57:28.807 に答える
0

これを試してみてください。学習のためにそれを行う別の方法です。

  private static void PrintStars(int num)
        {
            for (int i = 1; i <= num; i++)
            {
                for (int j = 1; j <= i; j++)
                {
                    Console.Write("*");
                }
                Console.WriteLine();
            }
        }
于 2012-07-24T12:04:29.793 に答える
0

これを試して :

private void button1_Click(object sender, EventArgs e)
{
    string message = "";
    for (int count = 0; count < numericUpDown1.Value; count++)
    {
            for (int m = 0; m <=count ; m++)
            {
                    message += "*" ;
            }
            message += "\r\n";
    }
}
于 2012-07-24T11:45:46.113 に答える