您的位置:首页 > 编程语言 > C语言/C++

n行n列的二维整型数组,n从键盘输入(n不超过10)。将该数组的每一列由小到大排序后输出。

2016-11-19 16:51 573 查看
分析:要求将每列从小大到大排列,则应该将每列分开考虑,一列一列的来

代码:

#include<stdio.h>
main()
{
int n,i,j,k,a[11][11]={0},t;
printf("输入n:");
scanf("%d",&n);
printf("输入%d行%d列元素:\n",n,n);
for (i=0;i<n;i++)
for (j=0;j<n;j++)
scanf("%d",&a[i][j]);
for (i=0;i<n;i++) //列数
for (j=0;j<n;j++) //行数
{
for (k=j;k<n;k++) //j列元素进行比较
if (a[j][i]>a[k][i])
{
t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;
}

}
printf("排序后:\n");
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
printf("%3d",a[i][j]);
putchar('\n');
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言 二维数组
相关文章推荐