冒泡排序

对一个元素个数为20个的随机数组进行冒泡排序

#include <stdio.h>
#include <stdlib.h>
#include <time.h>void swap(int &a, int &b){int tmp = a;a = b;b = tmp;
}void Display(int *a, int n){for (register int i = 0; i < n; i++){printf("%d ", a[i]);}printf("\n");
}void bubble_sort(int *a, int n){register int i, j;int flag;//最多排序n-1次for (i = 0; i < n - 1; i++){flag = 0;//每排序一次,都会有一个元素放在了正确的位置,所以j<n-i-1for (j = 0; j < n - i - 1; j++){if (a[j] > a[j + 1]){swap(a[j], a[j + 1]);flag = 1;}}printf("第%d次冒泡排序后:", i + 1);Display(a, n);if (flag == 0) return;//如果一次交换都没有,则说明数组已经排好序,返回;}
}int main(){int a[20];//生成一个有20个元素的随机数组srand((unsigned int)time(0));//修改种子for (register int i = 0; i < 20; i++){  a[i] = rand();}printf("原数组为:\n");Display(a, 20);printf("\n");bubble_sort(a, 20);printf("\n冒泡排序后:\n");Display(a, 20);return 0;
}

如有不足,欢迎各位大佬指正

冒泡排序C语言实现(源代码)相关推荐

  1. 输出 Hello World 混乱C语言的源代码

    下面的六个程序片段主要完成这些事情: 输出Hello, World 混乱C语言的源代码 下面的所有程序都可以在GCC下编译通过,只有最后一个需要动用C 的编译器g 才能编程通过. lns=" ...

  2. iar环境下c语言编程,c语言_源代码-iar环境配置.pdf

    c语言_源代码-iar环境配置 欢迎光临我的博客:/mikehendry 其实,IAR 编译环境的配置是相当重要的,没配置正确或者不符合自己的习惯的话,使用起来就会很麻烦.下面 我根据网上的经验和资料 ...

  3. c语言hypot函数,hypot ( )【C语言库函数源代码】

    [C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] /* hypot函数对于给定的直角三角形的两个直角边, 求其斜边的长度. */ //一般的常规算法: doublemy_ ...

  4. 51单片机c语言程序控制,51单片机C语言程序设计源代码

    <51单片机C语言程序设计源代码>由会员分享,可在线阅读,更多相关<51单片机C语言程序设计源代码(281页珍藏版)>请在人人文库网上搜索. 1.51 SCM c语言教程示例2 ...

  5. pow ( )【C语言库函数源代码】

    [C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] double my_pow(double x, double y) { register double ret, val ...

  6. fabs ( )【C语言库函数源代码】

    [C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] float my_fabs01 (float fnumber) { float ret; __asm__ ( " ...

  7. c语言象棋教程下载,C语言程序源代码中国象棋.doc-资源下载在线文库www.lddoc.cn...

    C语言程序源代码---中国象棋.doc includegraphics.hincludeconio.hincludestring.hincludebios.hincludestdlib.hinclud ...

  8. 用c 语言做课程表系统代码,[计算机]C语言课程表源代码.doc

    [计算机]C语言课程表源代码 #include #include #include char course[10][7][10]; //用于存储课程表中的课程 void saveCourse(); / ...

  9. c语言stricmp函数,stricmp ( )【C语言库函数源代码】

    [C语言库函数源代码] [本程序在Dev C++ 4.9.9.2 下编译通过] /* _stricmp/_strcmpi perform a case-insensitive string compa ...

  10. c语言 checksum,crc校验方法,用c语言实现源代码(CRC checksum method, using C language source code).doc...

    crc校验方法,用c语言实现源代码(CRC checksum method, using C language source code) crc校验方法,用c语言实现源代码(CRC checksum ...

最新文章

  1. Oracle 12c 简单的jdbc使用
  2. 尝试在centos5下运行phantomjs2
  3. 小心陷入MySQL索引的坑
  4. mfc中的.rc和.rc2出错fatal error RC1015: cannot open include file 'res\ModalD
  5. English trip V2-B 1 What's on the Menu? 菜单上有什么? Teacher:Tom
  6. oracle中表空间详解
  7. LightOj_1030 Discovering Gold
  8. ubuntu英伟达显卡驱动安装记录2
  9. 抽象类 VS 接口(1)
  10. 算法学习之路|方格分割
  11. 多因子量化投资模型策略深度研究
  12. 如何搭建一个前端脚手架
  13. 怎样更改itunes备份位置_正确修改itunes备份文件路径方法
  14. win10之缺少一个或者多个协议(只能上qq不能上网)
  15. 2010总结,2011展望
  16. 选择重新做程序员 作者:Pisces Lee
  17. 杭州造云记 | 甲子光年
  18. Xcode6 打包报错 ITMS-90096
  19. pptpd mysql_pptpd+freeradius+mysql安装步骤
  20. 封装原生javascript连缀

热门文章

  1. Mifare Classic Tool (MCT),Android平台RFID工具
  2. java pppoe_ADSL(PPPOE)接入指南
  3. 【精品】好用的验证码工具类VerifyCodeUtils
  4. 盘点一款Python发包收包利器——scapy
  5. php查netstat,Netstat命令详解
  6. 详细推导波特图增益和相位曲线
  7. r语言 怎么把字调大_R语言中字体设置
  8. 报考PMP需要准备的资料有哪些?
  9. C语言——实现简单的猜数字游戏
  10. TortoiseSVN安装中文语言包