(i+j) == N-1是为什么啊
#include
#include
#define N 3
void main(){
int *matrix;
int i;
char line1[6];
char line2[6];
char line3[6];
matrix = (int *)malloc(N*sizeof(int));
printf("请输入一个%d阶的方阵:\n",N);
for(i=0;i
gets(line1);
}else if(i==1){
gets(line2);
}else if(i==2){
gets(line3);
}
}
for(i=0;i
matrix[i] = (int)(line1[(i%3)*2]-'0');
continue;
}
if(i<6){
matrix[i] = (int)(line2[(i%3)*2]-'0');
continue;
}
if(i<9){
matrix[i] = (int)(line3[(i%3)*2]-'0');
continue;
}
}
printf("你输入的矩阵:\n");
for(i=0;i
for(j=0;j
}
printf("\n");
}
int a = 0;//正对角线元素之和
int b = 0;//副对角线元素之和
for(i=0;i
for(j=0;j
a = a+matrix[i*3+j];
}
if((i+j)==2){//副对角线
b = b+matrix[i*3+j];
}
}
}
printf("正副对角线元素之和为:\n");
printf("正:%d 副:%d",a,b);
}
# include
# define N 3
int main(void)
{
int a[N][N];
int i,j,sum1=0,sum2=0;
for(i=0;i
for(j=0;j
{
scanf("%d",&a[i][j]);
}
for(i=0;i
for(j=0;j
{
if(i == j)
sum1 = sum1 + a[i][j];
if((i+j) == N-1)
sum2 = sum2 + a[i][j];
}
printf("%d %d\n",sum1,sum2);
return 0;
}