#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 人评分

  评论区

  • «
  • »