为什么强制转换为int后再用%d输出会10分
10分代码:
#include<cstdio>
#include<cmath>
using namespace std;
int n,m,i,j;
int a[105][105];
int main()
{
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)scanf("%d",&a[i][j]);
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
if(i==1||j==1||i==n||j==m)printf("%d ",a[i][j]);
else printf("%d ",int(round(double(a[i][j]+a[i-1][j]+a[i][j-1]+a[i][j+1]+a[i+1][j]))/5.0));
}
printf("\n");
}
return 0;
}
改为%.0lf后就AC了凭什么