今天晚上帮朋友写的打印X的小程序,出错了……
这个是刚写的
测试了一下,
输入奇数的时候输出正常,
但是如果输入偶数的时候就不行了,
高手顺便帮我看看,大半夜的,累得头晕也没看出到底是什么毛病
class Program
{
static void Main(string[] args)
{
int num;
System.Console.Write( "Please enter a number: ");
num = System.Console.Read()-48;
for (int i = 1; i <= num; i++)
{
System.Console.Write( "现在输出第{0}行: \t ", i);
//下面的循环主要控制每一行的输出
for (int j = 1; j <= num; j++)
{
if(j==i || j==(num+1-i))
System.Console.Write( "* ");
else
System.Console.Write( ". ");
}//至此一行输出完毕
System.Console.WriteLine();
}
}
}
------解决方案--------------------X要保持上下对称且中间要只有一个*时只能是奇数行,偶数行的话比如是8,则第四和第五行肯定是一样的都是有两个*的。所以只能强制将偶数变为奇数了。