[疑难] 请大家帮忙看看,为什么不能输出正确字母

yntcsb 2009-01-28

最近编了一个小程序,本意是要在控制台输出顺序英文字母三角形即下面的形式

                  A

                ABC

              ABCDE

            ABCDEFG

          ABCDEFGHI

        ABCDEFGHIJK

      ABCDEFGHIJKLM

    ABCDEFGHIJKLMNO

  ABCDEFGHIJKLMNOPQ

ABCDEFGHIJKLMNOPQRS

我的程序如下:

/**
*  顺序英文字母三角形
*/
module sxsjx;
import tango.io.Stdout;

int main ()
{
    for (int i=1;i<=10;++i)
    {
      for (int j=1;j<=10-i;++j)
      Stdout(" ")();
      for (char ch='A';ch<='A'+2*i-1;++ch)
      Stdout(ch)();
      Stdout.newline;
    }
      return 0;
}

 

结果输出如下形式:

          AB
        ABCD
       ABCDEF
      ABCDEFGH
     ABCDEFGHIJ
    ABCDEFGHIJKL
   ABCDEFGHIJKLMN
  ABCDEFGHIJKLMNOP
 ABCDEFGHIJKLMNOPQR
ABCDEFGHIJKLMNOPQRST

每一行都比预期的多一个字母,百思不得其解,请各位高手给指点一下。谢谢!

ideage 2009-01-28
for (char ch='A';ch<'A'+2*i-1;++ch) 
yntcsb 2009-01-28
谢谢ideage的指点。
Global site tag (gtag.js) - Google Analytics