zoukankan      html  css  js  c++  java
  • 两种常用的C语言排序算法

    1.

    要求输入10个整数,从大到小排序输出

    输入:2 0 3 -4 8 9 5 1 7 6

    输出:9 8 7 6 5 3 2 1 0 -4

    解决方法:选择排序法

    实现代码如下:

    #include <stdio.h>

    int main(int argc, const char * argv[]) {

        int num[10],i,j,k,l,temp;

        //用一个数组保存输入的数据

        for(i=0;i<=9;i++)

        {

            scanf("%d",&num[i]);

        }

        //用两个for嵌套循环来进行数据大小比较进行排序

        for(j=0;j<9;j++)

        {

            for(k=j+1;k<=9;k++)

            {

                if(num[j]<num[k]) //num[j]<num[k]

                {

                    temp=num[j];

                    num[j]=num[k];

                    num[k]=temp;

                }

            }

        }

        //用一个for循环来输出数组中排序好的数据

        for(l=0;l<=9;l++)

        {

            printf("%d ",num[l]);

        }

        return 0;

    }

    2.

    要求输入10个整数,从大到小排序输出

    输入:2 0 3 -4 8 9 5 1 7 6

    输出:9 8 7 6 5 3 2 1 0 -4

    解决方法:冒泡排序法

    实现代码如下:

    #include <stdio.h>

    int main(int argc, const char * argv[]) {

        //用一个数组来存数据    

        int num[10],i,j,k,l,temp;    

        //用for来把数据一个一个读取进来   

        for(i=0;i<=9;i++)        

        {        

            scanf("%d",&num[i]);        

        }

         //用两次层for循环来比较数据,进行冒泡    

        for(j=0;j<9;j++) 

        {   

            for(k=0;k<9-j;k++)   

            { 

                if(num[k]<num[k+1]) //num[k]<num[k+1]       

                { 

                    temp=num[k];

                    num[k]=num[k+1];

                    num[k+1]=temp;  

                }  

            }  

        }

        //用一个for循环来输出数组中排序好的数据

        for(l=0;l<=9;l++)

        {

           printf("%d ",num[l]);  

        }    

        return 0;

    }

  • 相关阅读:
    python 日期、时间戳转换
    判断任意数字是否为素数
    linux使用工具记录
    python日志记录-logging模块
    python特性、属性以及私有化
    python 装饰器、内部函数、闭包简单理解
    sql语句操作记录
    virtualBox使用nat模式下ssh连接
    git常用操作
    分布式CAP定理(转)
  • 原文地址:https://www.cnblogs.com/xiao-c-2016/p/5903274.html
Copyright © 2011-2022 走看看