A-A+
有下列程序: main() {inta[4][4]={{1 4 3 2} {8 6 5 7}
问题详情
有下列程序: main() {inta[4][4]={{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}},i,k,t; for(i=0;i<3;i++) for(k=i+l;k<4;k++)if(a[i][i]<a[k][k]){t:a[i][i];a[i][i]=a[k][k];a[k][k]=t;} for(i=0;i<4;i++)printf(%d,,a[0][i]); } 程序运行后的输出结果是
A.6,2,1,1,
B.1,1,2,6,
C.2,3,4,6,
D.6,4,3,2
请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:D
利用二重for循环对二维数组a[4][4]的主对角线上的元素{1,6,2,1}实现按列从大到小排序,所以数组a[4][4]的值变为{{6,4,3,2,),{8,2,5,7),{3,7,1,5),{4,8,6,1}),最后输出数组a[4][4]第一行上的元素,所以输出结果为6,4,3,2。