/***************************************************** copyright (C), 2016-2017, Lighting Studio. Co., Ltd. File name: Author:luoye Version:0.1 Date: Description: Funcion List: *****************************************************/ #include <stdio.h> #include <time.h> #define N 6 //偶数行以由小到大排序 int find_min(int a[N][N],int line) { int i, j, temp; for(i=0;i<N;i++) { for(j=0;j<N-1-i;j++) { if(a[line][j]>a[line][j+1]) { temp=a[line][j]; a[line][j]=a[line][j+1]; a[line][j+1]=temp; } } } } //奇数行由大到小排序 int find_max(int a[N][N],int line) { int i, j, temp; for(i=0;i<N;i++) { for(j=0;j<N-1-i;j++) { if(a[line][j]<a[line][j+1]) { temp=a[line][j]; a[line][j]=a[line][j+1]; a[line][j+1]=temp; } } } } int main() { int a[N][N]; int i, j; srand(time(NULL)); //输出随即的数组 for(i=0;i<N;i++) { for(j=0;j<N;j++) { a[i][j]=rand()00; printf("M",a[i][j]); } printf("\n"); } printf("\n"); for(i=0;i<6;i++) { if(i%2==0) { find_min(a,i); //偶数行找最小的数 } else { find_max(a,i); //奇数行找最大的数 } } for(i=0;i<N;i++) { for(j=0;j<N;j++) { printf("M",a[i][j]); } printf("\n"); } return 0; } 对N 行 N 列二维数组的每一行排序,偶数行 (0 当作偶数 ) 由小到大排序,奇数行由大到小排序。
