这个C语言程序哪里错误?为什么输出总是0?

2025-03-23 22:57:16
推荐回答(3个)
回答1:

scanf("%d",&a[x][y]);

改为

scanf("%f",&a[x][y]);

printf("%d\n",s);

改为

printf("%f\n",s);

回答2:

#include
#define N 11
main()
{int x,y,n,i;
float s=0,a[N][N];
printf("输入n值(n<%d):",N);
scanf("%d",&n);
for(y=0;y<=n;y++)
{for(x=0;x<=n;x++)
{
printf("输入a[%d][%d]值:",y,x);
scanf("%f",&a[x][y]);
}

}
for(i=1;i<=n;i++)
s=s+a[i][i]+a[i][n+1-i];

if(n%2==1)
{
s=s-a[(n+1)/2][(n+1)/2];
}

printf("%f\n",s);

}

回答3:

c数组不是从0开始的么?