c#我无法从循环中打印消息
本文关键字:打印 消息 循环 | 更新日期: 2023-09-27 17:57:46
我正在尝试制作一个简单的程序,它接受两个整数:一个数字和一个宽度。我想用这个数字打印一个宽度为这个宽度的三角形。我应该使用double-for-loop吗?如果不能,可以按我的方式进行吗?
class Program
{
public static int readInt()
{
int result;
string resultString = Console.ReadLine();
result = int.Parse(resultString);
return result;
}
static void Main(string[] args)
{
int number, width;
Console.WriteLine("Enter a number: ");
number = readInt();
Console.WriteLine("Enter a width: ");
width = readInt();
do {
for (int i = width; i < 0; i--)
{
Console.Write(number);
width--;
Console.WriteLine();
}
} while (width < 0);
Console.ReadLine();
}
}
输出:编号:7宽度:4
7777
777
77
7
为了好玩,这个版本将打印一个以矩形为中心的
int space = 0;
do
{
// Prints initial spaces
for(int x = 0; x < space; x++)
Console.Write("-");
// Print the number for the current value of width
for (int i = 0; i < width; i++)
Console.Write(number);
// Print final spaces -
// Not really needed
for (int x = 0; x < space; x++)
Console.Write("-");
// Start the new line
Console.WriteLine();
//Decrease width by one space for each end (2)
width-=2;
// Increment the spaces to print before and after
space++;
} while (width > 0);
逻辑中的一部分被完全重写,注意到控制台。WriteLine会附加一个换行符,因此您需要使用Console。写入