所以我正在努力使用控制台应用程序。要求字符线形成树状图案而不是右翼三角形。像这样(3):
*
***
*****
到目前为止,我有这个:
int rows = int.Parse(Console.ReadLine());
for(int i = 1; i <= rows; i++)
{
for(int x = 1; x <= i; x++)
{
Console.Write("*");
}
Console.WriteLine("\n");
}
答案 0 :(得分:1)
我认为您正在寻找PadLeft
函数。它在字符串的左侧添加了空格,因此您可以正确放置它。另外,您需要将行数乘以2并将步长增加1。您将获得以下代码:
int rows = int.Parse(Console.ReadLine()) * 2;
for (int i = 1; i <= rows; i += 2) {
Console.Write( "".PadLeft( (rows - i) / 2) );
for(int x = 1; x <= i; x++) {
Console.Write("*");
}
Console.WriteLine();
}
此外,如果您真的想使三角形看起来像这样,则可能需要删除此行:
Console.WriteLine("\n");
...并将其更改为此:
Console.WriteLine();
(这将删除不必要的换行符,WriteLine
已在打印换行符。)