下边是程序代码,已经在c#(2003)版调试通过
操作系统WindowsXP SP2 中文
================================================
static void Main(string[] args)
{
int a,b,c,d;
for(a=1;a<=9;a++)
{
for(c=9-a+1;c>1;c--) //这个循环因为不会在输出语句中控制位置,
{ //因此用来控制起始间距。
Console.Write(" ");
}
for(b=0;b<a;b++)
{
for(d=1;d>0;d--) //这个循环因为不会在输出语句中控制位置,
{ //因此用来控制每个字符之间的间距。
Console.Write(" ");
}
Console.Write("{0}",a);
}
Console.Write("\n"); //一行结束后起到换行作用。
}
=============================================================
这样金字塔在屏幕整体向右多移一个字符。
如果这两句对调(如下):
Console.Write("{0}",a);
for(d=1;d>0;d--) //这个循环因为不会在输出语句中控制位置,
{ //因此用来控制每个字符之间的间距。
Console.Write(" ");
}
则金字塔排列紧贴屏幕边缘,但是每行最后多输出一个字符
以上原因正是我不会在屏幕输出语句中定位产生的缺陷,如果
按照我原来的想法(见前几贴),在屏幕输出语句中控制就可
以避免了,请高手指教^^