日期:2014-05-19  浏览次数:20711 次

今天晚上帮朋友写的打印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,则第四和第五行肯定是一样的都是有两个*的。所以只能强制将偶数变为奇数了。