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

    数字的排序:

    #include"stdafx.h"
    #include <stdio.h>

    #define SIZE 10
    int main()
    {
    int a[SIZE] = { 12 ,43,9,13,67,98,101,89,3,35 };//十个数的无序数列
    int i, j, t;
    printf("此程序使用冒泡排序法排列无序数列! ");
    //冒泡排序
    for (i = 0; i<10 - 1; i++)//n个数的数列总共扫描n-1次
    {
    for (j = 0; j<10 - i - 1; j++)//每一趟扫描到a[n-i-2]与a[n-i-1]比较为止结束
    {
    if (a[j]>a[j + 1])//后一位数比前一位数小的话,就交换两个数的位置(升序)
    {
    t = a[j + 1];
    a[j + 1] = a[j];
    a[j] = t;
    }
    }
    }

    printf("排列好的数列是: ");
    //输出排列好得吃数列
    for (i = 0; i<10; i++)
    {

    printf("%d ", a[i]);
    }
    getchar();
    }

    字符排序:

    #include"stdafx.h"
    #include <stdio.h>

    #define SIZE 10
    int main()
    {
    char a[SIZE] = { 'i','l','o','v','e','y','o','u','y','x' };//十个数的无序数列
    int i, j;
    char t;
    printf("此程序使用冒泡排序法排列无序数列! ");
    //冒泡排序
    for (i = 0; i<10 - 1; i++)//n个数的数列总共扫描n-1次
    {
    for (j = 0; j<10 - i - 1; j++)//每一趟扫描到a[n-i-2]与a[n-i-1]比较为止结束
    {
    if (a[j]>a[j + 1])//后一位数比前一位数小的话,就交换两个数的位置(升序)
    {
    t = a[j + 1];
    a[j + 1] = a[j];
    a[j] = t;
    }
    }
    }

    printf("排列好的字符组是: ");
    //输出排列好得吃数列
    for (i = 0; i<10; i++)
    {

    printf("%c ", a[i]);
    }
    getchar();
    }

    函数

    #include"stdafx.h"
    #include <stdio.h>
    void function(char a[], int);//尤其注意,此处的函数声明必须是char a[],因为这里穿的是地址,不能仅仅使用char
    int main()
    {
    int i;
    char a[10] = { 'i','l','o','v','e','y','o','u','y','x' };//十个数的无序字符数列
    printf("此程序使用冒泡排序法排列无序数列! ");
    function(a, 10);//调用冒泡排序
    printf("排列好的字符组是: ");
    //输出排列好得吃数列
    for (i = 0; i<10; i++)
    {

    printf("%c ", a[i]);
    }
    return 0;
    }
    void function(char a[], int m)
    {
    //冒泡排序
    int i, j;
    char t;
    for (i = 0; i<m - 1; i++)//n个数的数列总共扫描n-1次
    {
    for (j = 0; j<m - i - 1; j++)//每一趟扫描到a[n-i-2]与a[n-i-1]比较为止结束
    {
    if (a[j]>a[j + 1])//后一位数比前一位数小的话,就交换两个数的位置(升序)
    {
    t = a[j + 1];
    a[j + 1] = a[j];
    a[j] = t;
    }
    }
    }
    getchar();
    }

    作者:Geek宝宝
    来源:CSDN
    原文:https ://blog.csdn.net/Zzwtyds/article/details/76155893
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    Effective C# 原则37:使用标准的配置机制(译)
    Effective C# 原则31:选择小而简单的函数(译)
    Effective C# 原则24:选择申明式编程而不是命令式编程(译)
    Effective C# 原则34:创建大容量的Web API(译)
    Effective C# 原则27:避免使用ICloneable(译)
    Effective C# 第4章:创建基于二进制的组件(译)
    Effective C# 原则39:使用.Net验证(译)
    Effective C# 原则35:选择重写函数而不是使用事件句柄(译)
    Effective C# 原则25: 让你的类型支持序列化(译)
    Effective C# 原则38:使用和支持数据绑定(译)
  • 原文地址:https://www.cnblogs.com/WYlover/p/10729696.html
Copyright © 2011-2022 走看看