do{...}while可以内嵌,你程序有点问题,下面把while(j<9)改回while(j<i)
i=1
==> cout<<i<<endl ==> i++ ==> j=1 ==> do{...}(j<2) ==> cout<<endl ============这时(i已经等于2),j会输出12
i=1 i=2 j=1
==> cout<<i<<endl ==> i++ ==> j=1 ==> do{...}(j<3) ==> cout<<endl ============这时(i已经等于3),j会输出123
i=2 i=3 j=1
==> cout<<i<<endl ==> i++ ==> j=1 ==> do{...}(j<3) ==> cout<<endl ============这时(i已经等于4),j会输出1234
i=3 i=4 j=1
...
==> cout<<i<<endl ==> i++ ==> j=1 ==> do{...}(j<9) ==> cout<<endl ============这时(i已经等于9),j会输出123456789
i=8 i=9 j=1
==> cout<<i<<endl ==> i++ ==> j=1 ==> do{...}(j<10) ==> cout<<endl ============这时(i已经等于10),j会输出12345678910
i=9 i=10 j=1
可以把程序执行的顺序或者i的初始值改一下。