从键盘输入一个4×4的整数矩阵,以主对角线(\)为对称轴将左下角元素中较大者替换右上角对应元素,

c语言程序改错;

从键盘输入一个4×4的整数矩阵,以主对角线(\)为对称轴将左下角元素中较大者替换右上角对应元素,并将右上角含对称轴输出。
#include<stdio.h>
void main()
{int d[4][]={{0,0,0,0}},i,j;★
printf("\nPlease input 16 num: ");
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&d[i][j]);
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(d[i][j]<d[j][i])
d[j][i]=d[i][j];★
for(i=0;i<4;i++)
{printf("\n\n\n\n\n");/*为了保持每行的间隔与每列的相同*/
for(j=0;j<4;j++)
if(j>i)★
printf("\t%d",d[i][j]);/*为了使位数不同的数输出依然保持三角型*/
else
printf("\t");
}
}

将 int d[4][]={{0,0,0,0}} 改为 d[][4]={0,0,0,0} ;
将 if(d[i][j]<d[j][i]) 改为 if(d[i][j]>d[j][i])

个人认为最后的输出可以改进下 不用那么多空行
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
if(j>i)
printf("\t%d",d[i][j]);
else printf("\t");
printf("\n");
}追问

第三处怎么改呢

追答

if(j>=i)

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答