求某一方阵中对角线元素和,考虑主对角线和次对角线c语言报错
#include<stdio.h>int main(){int a[3][3];int i=0,j=0,n=0,sum1=0,sum2=0;for(i=0;i<3;i++){for(j=0;j<3;j++){scanf("%d",a[i][j]);}}printf("矩阵为:");for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%d ",a[i][j]);n++;if(n%3==0)printf(" ");}}for(i=0;i<3;i++){for(j=0;j<3;j++){if(i==j)sum1+=a[i][j];if(i-j==2||j-i==2||i==j==2)sum2+=a[i][j];}}printf("主对角线和为%d",sum1);printf("次对角线和为%d",sum2);}怎么回事呢
你的这个是初学者最容易犯的错之一,scanf对int要取地址的:
改
scanf("%d",a[i][j]);
为
scanf("%d",&a[i][j]);
就可以了
下一篇:请求大神支招
热门标签: