首先我要提一下,我是C#的初学者。
这是我到目前为止所做的代码:
for (int row = 1; row <= 25; row++)
{
for (int col = 1; col <= 39; col++)
{
switch (row)
{
case 1:
Console.ForegroundColor = ConsoleColor.Yellow;
break;
case 2:
Console.ForegroundColor = ConsoleColor.Magenta;
break;
case 3:
Console.ForegroundColor = ConsoleColor.Green;
break;
}
Console.Write("* ");
}
Console.WriteLine();
我真的很喜欢三种颜色:黄色,洋红色,绿色重复。
三个第一句话还可以,但其余的都是绿色的。
让其他所有行向右移一步?
感谢所有帮助
由于
答案 0 :(得分:3)
在交换机中更改代码:
for (int row = 1; row <= 25; row++) {
for (int col = 1; col <= 39; col++)
{
switch (row%3)
{
case 1:
Console.ForegroundColor = ConsoleColor.Yellow;
break;
case 2:
Console.ForegroundColor = ConsoleColor.Magenta;
break;
case 0:
Console.ForegroundColor = ConsoleColor.Green;
break;
}
Console.Write("* ");
}
Console.WriteLine();
答案 1 :(得分:0)
for (int row = 1; row <= 25; row++) {
for (int col = 1; col <= 39; col++)
{
int rowInd = row % 3;
switch (rowInd)
{
case 0:
Console.ForegroundColor = ConsoleColor.Yellow;
break;
case 1:
Console.ForegroundColor = ConsoleColor.Magenta;
break;
case 2:
Console.ForegroundColor = ConsoleColor.Green;
break;
}
Console.Write("* ");
}
Console.WriteLine();
仅给出1,2,3行的将仅为这些行分配值。因此,通过使用%符号,您将获得第3行的剩余部分。这是3/3,余数= 0;为4/3,余数= 1;和5/3;余数= 2;再次0为6/3;
答案 2 :(得分:0)
可以尝试这样的事情:
ConsoleColor[] colors = new ConsoleColor[] {
ConsoleColor.Yellow,
ConsoleColor.Magenta,
ConsoleColor.Green
};
for (int row = 1; row <= 25; row++)
{
Console.ForegroundColor = colors[(row+1) % 3];
for (int col = 1; col <= 39; col++)
{
Console.Write("*");
}
Console.WriteLine();
}