zoukankan      html  css  js  c++  java
  • c语言中冒泡排序法

    1、从尾至头,升序

    #include <stdio.h>
    
    #define NUMBER 5
    
    void sort_1(int x[], int n)
    {
        int i, j;
        for(i = 0; i < n - 1; i++)
        {
            for(j = n - 1; j > i; j--)
            {
                if(x[j] < x[j - 1])
                {
                    int tmp = x[j];
                    x[j] = x[j - 1];
                    x[j - 1] = tmp;
                }
            }
        }
    }
    
    int main(void)
    {
        int i, a[NUMBER];
        puts("please input the elements.");
        for(i = 0; i < NUMBER; i++)
        {
            printf("NO.%d = ", i + 1); scanf("%d", &a[i]);
        }
        
        sort_1(a, NUMBER);
        
        puts("show the sorting result.");
        for(i = 0; i < NUMBER; i++)
        {
            printf("a[%d] = %d 
    ", i, a[i]);
        }
        return 0;
    }

    2、从头至尾,升序

    #include <stdio.h>
    
    #define NUMBER 5
    
    void sort_2(int x[], int n)
    {
        int i, j;
        for(i = 0; i < n - 1; i++)
        {
            for(j = 1; j < n - i; j++)
            {
                if(x[j] < x[j - 1])
                {
                    int tmp = x[j];
                    x[j] = x[j - 1];
                    x[j - 1] = tmp;
                }
            }
        }
    }
    
    int main(void)
    {
        int i, a[NUMBER];
        puts("please input the elements.");
        for(i = 0; i < NUMBER; i++)
        {
            printf("NO.%d = ", i + 1); scanf("%d", &a[i]);
        }
        
        sort_2(a, NUMBER);
        puts("show the sorting result.");
        
        for(i = 0; i < NUMBER; i++)
        {
            printf("a[%d] = %d
    ", i, a[i]);
        }
        return 0;
    }

    3、从尾至头,降序

    #include <stdio.h>
    
    #define NUMBER 5
    
    void sort_3(int x[],  int n)
    {
        int i, j;
        for(i = 0; i < n - 1; i++)
        {
            for(j = n - 1; j > i; j--)
            {
                if(x[j] > x[j - 1])
                {
                    int tmp = x[j];
                    x[j] = x[j - 1];
                    x[j - 1] = tmp;
                }
            }
        }
    }
    
    int main(void)
    {
        int i, a[NUMBER];
        puts("please input the elements.");
        for(i = 0; i < NUMBER; i++)
        {
            printf("NO.%d = ", i + 1); scanf("%d", &a[i]);
        }
        
        sort_3(a, NUMBER);
        puts("show the sorting result.");
        for(i = 0; i < NUMBER; i++)
        {
            printf("a[%d] = %d
    ", i, a[i]);
        }
        return 0;
    }

    4、从头至尾;降序

    #include <stdio.h>
    
    #define NUMBER 5
    
    void sort_4(int x[], int n)
    {
        int i, j;
        for(i = 0; i < n - 1; i++)
        {
            for(j = 1; j < n - i; j++)
            {
                if(x[j] > x[j - 1])
                {
                    int tmp = x[j];
                    x[j] = x[j - 1];
                    x[j - 1] = tmp;
                } 
            }
        }
    }
    
    int main(void)
    {
        int i, a[NUMBER];
        puts("please input the elements.");
        for(i = 0; i < NUMBER; i++)
        {
            printf("NO.%d = ", i + 1); scanf("%d", &a[i]);
        }
        
        sort_4(a, NUMBER);
        puts("show the sorting result");
        for(i = 0; i < NUMBER; i++)
        {
            printf("a[%d] = %d
    ", i, a[i]);
        }
        return 0;
    }

  • 相关阅读:
    gridview的应用(删除)
    Javascript无刷新TreeView
    利用GridView显示主细表并添加打开、关闭功能
    UpdatePanel 控件简介
    Asp.net中使用fckeditor在线编辑器配置
    C#实现水晶报表绑定数据并实现打印
    Asp.net 2.0 Treeview 动态填充,并实现无限级树
    SQL数据库建表前期优化
    C#发送Email邮件方法总结
    ASP.NET防SQL注入脚本程序
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/14807141.html
Copyright © 2011-2022 走看看