zoukankan      html  css  js  c++  java
  • 支军队正在进行阅兵前的训,训陈前队列排队是一个难题。该队列是一个n*n的方阵,排队要求是后一排的最低的不比前一排最高的低,同时要求偶数行从小到大排列,奇数行从大到小排列(行数从第0行开始,O为偶数)。输λn及η*n个身高数据〈身高数据为整型),按要求处理后输岀 n队列身高数据(每个身高数据占4个字符宽度)。

    支军队正在进行阅兵前的训,训陈前队列排队是一个难题。该队列是一个n*n的方阵,排队要求是后一排的最低的不比前一排最高的低,同时要求偶数行从小到大排列,奇数行从大到小排列(行数从第0行开始,O为偶数)。输λn及η*n个身高数据〈身高数据为整型),按要求处理后输岀
    n队列身高数据(每个身高数据占4个字符宽度)。

    B]A3`4$5T5~8{70U@ZEEOKB

    /*对N行N列二维数组的每一行排序,偶数行(0当作偶数)由小到大排序,奇数行由大到小排序*/
    #include <stdio.h>
    #define N 100
    void swap(int *a,int *b)
    {
        int temp;
        temp = *a;
        *a = *b;
        *b = temp;
    }
    void my_sort(int num,int a[][N])
    {
        int k = 0;
        int i = 0;                                          
        int j = 0;                                            
        
        for(i = 0;i < num;i++)
        {
            if(i%2 == 0)                                         
            {
                for(j = 0;j < num;j++)                          
                {
                    for(k = j+1;k < num;k++)
                    {
                        if(a[i][k] < a[i][j])
                        {
                            swap(&a[i][k],&a[i][j]);
                        }
                    }
                }
            }
            else
            {
                for(j = 0;j < num;j++)
                {
                    for(k = j+1;k < num;k++)
                    {
                        if(a[i][k] > a[i][j])
                        {
                            swap(&a[i][k],&a[i][j]);
                        }
                    }
                }
            }
        }
    }
    void bubble_sort(int a[], int n)    
    {
        int i,j,temp;   
        for (j=0;j<n-1;j++)   
        {                           
            for (i=0;i<n-1-j;i++)
            {
                if(a[i]>a[i+1]) 
                {
                    temp=a[i];     
                    a[i]=a[i+1]; 
                    a[i+1]=temp;
                }
            }
        }    
    }
    void repair(int num,int a[][N]){
        int last =num-1;//2
        int setindex=num-2;//1
        int i,j,x=0,y=0;
        int tmep[N];
        for(i=setindex;i<num;i++){
            for(j=0;j<num;j++){
                tmep[x++]=a[i][j];
            }
        }
        bubble_sort(tmep,x);
        x=0;
        for(i=setindex;i<num;i++){
            for(j=0;j<num;j++){
                a[i][j]=tmep[x++];
            }
        }
        my_sort(num,a);
    }
    int main()
    {
        int N_line = 0;                                   
        int a[N][N] = {0};
        int i = 0;
        int j = 0;
     
        scanf("%d",&N_line);
     
        for(i = 0;i < N_line;i++)
        {
            for(j = 0;j < N_line;j++)
            {
                scanf("%d",&a[i][j]);
            }
        }
     
        my_sort(N_line,a);
         repair(N_line,a); 
        for(i = 0;i < N_line;i++)
        {
            for(j = 0;j < N_line;j++)
            {
                printf("%d ",a[i][j]);
            }
            printf("
    ");
        }
     
        return 0;
    }
  • 相关阅读:
    smm框架整合实现登录功能
    Java线程面试题
    JAVA面试题
    Linux基础命令
    Java面试题技术类
    Spring+Spring MVC+MyBatis框架集成
    C语言 编程练习22题
    C语言 基础练习40题
    Python3-socket网络知识储备
    python3-面向对象进阶(内置方法)
  • 原文地址:https://www.cnblogs.com/dgwblog/p/14225836.html
Copyright © 2011-2022 走看看