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

我想我需要第二个for循环,但我不确定下一步该做什么。

4

5 回答 5

12

如果这不是一个概念性的作业,那么以这种方式解决会容易得多:

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

你需要两个循环(见注)。

首先 (a) 从 1 数到 5。

第二个(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"
    }
}

注意您可以使用一个 for 循环来完成。但我个人认为两个循环版本更清晰。

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

哟不需要两个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 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 回答
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 回答