排序输出

从二维数组中选出各行最大的元素并按照从小到大的顺序输出。
编程要求在一个3*4阶的二维整型数组a中选出各行最大的元素并按照从小到大的顺序输出。
例如:用户输入3 16 87 65 4 32 11 108 10 37 25 12(表示矩阵a为{ {3 16 87 65}, {4 32 11 108}, {10 37 25 12}}),则输出37 87 108。
效果如下:
输入:3 16 87 65 4 32 11 108 10 37 25 12
输出:37 87 108

#include<iostream>
using namespace std;
     // 请在此添加你的代码
    /********** Begin *********/
int main()
{
    int a[3][4];
    int i,k;
    for(i=0;i<3;i++)
 {
  for(k=0;k<4;k++)
  {
   cin>>a[i][k];
  }
            
 }    
    int b[3]={0};
    int n;
    for(n=0;n<3;n++)
 {
  for(i=0;i<4;i++)
  {
   if(a[n][i]>b[n])
   {
    b[n]=a[n][i];
   } 
  }       
 }
    for(i=0;i<2;i++)
    {
        int min=b[i];
        int mark=i;
        for(int j=i+1;j<3;j++)
  {
   if(min>b[j])
            {
                min=b[j];
                mark=j;
            }
            if(mark!=i)
            {
                int temp=b[mark];
                b[mark]=b[i];
                b[i]=temp;
            }
  }       
    }
        for(n=0;n<3;n++)
  {
   cout<<b[n]<<" ";
  }
    return 0;
}
发布了180 篇原创文章 · 获赞 169 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/huangziguang/article/details/105513951