C语言定义一个4*4的二维数组并输入16个整型数据。按矩阵输出这16个数据,并输出主对角线元素?

要求和图一样,求求各位大佬了!

程序如下:
main(){
int a[4][4],i,j,s=0;
printf(“请输入16个整型数据:\n);
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf(“%d”,&a[i][j]);
printf(“该数组矩阵为:\n);
for(i=0;i<4;i++)
for(j=0;j<4;j++){
printf(“%4d”,a[i][j]);
if(j==3)printf(“\n”);}
printf(“主对角线的元素值分别为:\n);
for(i=0;i<4;i++){
printf(“%d”,a[i][i]);
s+=a[i][i];}
printf(“主对角线元素的和为:\n);
printf(“%d\n”,s);
}
有什么问题请留言。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-05-21

#include<stdio.h>

int main()

{

printf("请输入16个整型数据:\n");

int a[4][4],sum=0;

for(int i=0;i<4;i++)

for(int j=0;j<4;j++)

scanf("%d",&a[i][j]);

printf("\n\n该数组矩阵为:\n");

for(int i=0;i<4;i++)

for(int j=0;j<4;j++)

printf("%-3d ",a[i][j]);

if(j==3)

printf("\n"); 

}

printf("\n主对角线的元素值分别为: ");

for(int i=0;i<4;i++)

for(int j=0;j<4;j++)

if(i==j)

{

printf("%d ",a[i][j]);

sum+=a[i][j];

}

printf("\n\n主对角线的元素和为: %d",sum);

return 0;

}

本回答被网友采纳