#include<stdio.h>
int main()
{ int k,m,i,j,q=0,a;
float b[100][100];
while(scanf("%d",&a)!=EOF) //做这个有点心态爆炸,我之前一直用!=0这个,提交快10多次一直说输出超限,找不到问题,莫名其妙换成!=EOF,(可能还改过别的,)一下就对了 ,心态爆炸。
{
for(j=1;j<=a;j++)
{ for(i=1;i<=(a-(j-1));i++)
{
b[i][j]=((i+1)/2.0)*i+(j-1)*((i+(i+j-2))/2.0);//float
if(i<(a-(j-1)))
{k=(int)b[i][j];
printf("%d ",k);
}
else {k=(int)b[i][j];
printf("%d",k);
}
if((i+j)==a+1)
printf("\n");
}
}
}
return 0;
}
输出超限的代码 ,找不到原因
#include<stdio.h>
int main()
{ int k,m,i,j,q=0,a;
float b[100][100];
while(scanf("%d",&a)!=0) //就这一处不同
{ //getchar(); //这个有解释符
//fflush(stdin); //这个有解释符
for(j=1;j<=a;j++)
{ for(i=1;i<=(a-(j-1));i++)
{
b[i][j]=((i+1)/2.0)*i+(j-1)*((i+(i+j-2))/2.0);//float
if(i<(a-(j-1)))
{k=(int)b[i][j];
printf("%d ",k);
}
else {k=(int)b[i][j];
printf("%d",k);
}
if((i+j)==a+1)
printf("\n");
}
}
}
return 0;
}
0.0分
0 人评分