回复 5楼 peach5460
我写的如下:
#include<stdio.h>
void main()
{
int i;
for(i=1;i<101;i++)
{
int n;
for(n=1;i<101;n++)
if(i==n*(n+1)/2)
printf("\n");
printf("%4d",i);
}
}
我的思路是第一行最后一位是1,第二行最后一位数3,第三行最后一位是6,那么第n行最后一位是n*(n+1)/2;当i=n*(n+1)/2时,就换行
不知道为什么会错了,请高人指点迷津
我觉得你的代码的错误是外层的for循环,其实外层循环并不是想象中的100次,按你的程序思路应该是29层左右,项数是一个等差数列,总项数为100相,你自己再看看