=====
第1题:实现冒泡排序
=====

总时间限制:
1000ms
内存限制:
65536kB
描述

请根据自己的理解编写冒泡排序算法,数组大小1000以内

输入
第一行是n,表示数组的大小
接着n行是数组的n个元素
输出
排序之后的结果
一个元素一行
#include<stdio.h>const    int COUNT= 11;
main()
{int arr[]={10,8,9,3,2,4,7,6,5,1,0};int i,j;for(j=0;j<COUNT-1;j++){for(i=0;i<COUNT-1-j;i++){if (arr[i]>arr[i+1]){int tmp=arr[i]; arr[i]=arr[i+1];arr[i+1]=tmp;}}for(i=0;i<COUNT;i++){printf("%d,",arr[i]);}printf("\n loop(%d):================\n",j);}for(i=0;i<COUNT;i++){printf("%d,",arr[i]);}printf("over");
}
运行效果如下:

以上代码编写与vs2012里完成。

冒泡排序的原理
使用函数和指针,改良后的程序如下:
#include<stdio.h>const    int COUNT= 11;/****
*负责冒泡排序
***/
int* sortFunction(int data[]){int i,j;for(j=0;j<COUNT-1;j++){for(i=0;i<COUNT-1-j;i++){if (data[i]>data[i+1]){int tmp=data[i]; data[i]=data[i+1];data[i+1]=tmp;}}for(i=0;i<COUNT;i++){printf("%d,",data[i]);}printf("\n loop(%d):================\n",j);}return data;
}main()
{int arr[]={10,8,9,3,2,4,7,6,5,1,0};int *pon=sortFunction(arr);int i;for(i=0;i<COUNT;i++){printf("%d,",*pon++);}printf("over");
}
我觉得看了 北大的计算机概论A 这门课,收获很多,特动手重新复习了一下C语言程序设计,把课里的习题自己动手做了一遍。

Introduction to Computing 计算概论A 
by Ge Li 李戈, Ph.D.

实现冒泡排序(c语言)相关推荐

  1. c语言排序程序ppt,冒泡排序 ---C语言程序设计.ppt

    冒泡排序 ---C语言程序设计.ppt 冒泡排序 ---C语言程序设计 主讲人:朱志慧 河南牧业经济学院微课比赛 算法思想 算法分析 程序实现 C语言程序设计----冒泡排序 拓展思考 算法思想 一. ...

  2. c 冒泡排序_C语言中选择排序和冒泡排序

    点击上方"C语言中文社区",选择"设为星标★" 技术干货第一时间送达! 来源:https://blog.csdn.net/zjy18886018024/cate ...

  3. c语言 输入若干字符串 用指针和一位数组 冒泡排序,C 语言作业 - 1 - 指针使用与冒泡排序...

    上周四 Programming 课程布置了一个作业,要求如下: Write a C module for sorting string pointer array. And write a test ...

  4. c语言结构体冒泡排序,c语言结构体冒泡排序求教

    c语言结构体冒泡排序求教0 姜默默2点02017.05.20浏览53次分享举报 用冒泡排序输出每个学生的信息,新人求大神教学这个程序哪错了还有麻烦亲把修改过的发上来吧谢谢了for(j=0;jstu[i ...

  5. 数据结构——冒泡排序(C语言)

    C语言详解冒泡排序 一.基本思想 二.算法实现及优化 三.代码清单 一.基本思想 冒泡排序是交换排序中最易理解也最经典的一个排序,其基本思想是从左向右依次比较相邻两个元素的大小,如果左边大于右边就交换 ...

  6. c语言选择冒泡排序,c语言选择冒泡排序讲解(附代码)

    c语言选择冒泡排序讲解(附代码) c语言选择冒泡排序讲解(附代码) 冒泡排序原理举例: 给定一组数 15 20 1 16 进行从大到小冒泡排序.第一次起泡的第一次比较:用15和20比较,若15比20小 ...

  7. linux运行c语言冒泡排序,C语言实现冒泡排序-整数排序

    我一直觉得排序算法挺重要的,但是却没有深入的去理解它:没有深入理解就无法用代码将它实现:在腾讯的在线模拟考试中就有一题问到冒泡排序:我几乎是傻眼了!我知道这样的问题是最基础的:无论过去怎样现在要全面深 ...

  8. 冒泡排序 C语言代码

    冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来.这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端. ...

  9. c语言冒泡排序(c语言冒泡排序法详解)

    请讲解下C语言的冒泡排序法 冒泡法,就是通过多次循环排序的一种方法. 第一次循环,让最小(最大)的值浮到第一位, 第二次循环,让剩余的数字中最小(最大)浮到第二位 依次类推. 这种方法就像水泡上浮一样 ...

最新文章

  1. 性能压测服务器502报错,一种交易系统的性能测试方法及相关服务器
  2. POJ 1678 I Love this Game!
  3. python求列表的平均值的用法_python如何求列表平均值?_后端开发
  4. JavaScript 与 PHP 的语法区别
  5. java: 无法将类 com.duo_tai.Cow中的构造器 Cow应用到给定类型;
  6. Android开发实践:自定义ViewGroup的onLayout()分析
  7. 更改主机文件引发思考 防火墙URL过滤无奈(转)
  8. spark sql 的性能调优
  9. 【论文视频】对比学习论文综述【论文精读】
  10. cc2640蓝牙数据接收丢包问题
  11. Maven基础篇之Maven实战入门-最新IDEA版maven
  12. 基于SSM+Eclipse+MySQL的学生宿舍管理系统(SSM毕业设计源码)(学生宿舍管理系统毕业设计)
  13. Python调用腾讯API进行营业执照核验
  14. 【学习】从HttpClient3迁移到HttpClient4
  15. 服务器系统2008R2安全模式,server 2008 r2怎么进入安全模式
  16. python控制蓝牙pybluez_Python之蓝牙通讯模块pybluez学习笔记
  17. RIM任松伟:黑莓引领企业移动化主题演讲
  18. PDF文件怎么加密?这两种加密方法很靠谱
  19. 清理掉Win10“另存为“和“此电脑“里3D对象、视频、图片、文档、下载、音乐、桌面
  20. Springboot中使用@Value无法取到application.properties值

热门文章

  1. 《Java黑皮书基础篇第10版》 第1章【笔记】
  2. CTS测试时手机的设置
  3. Oracle入门(二)
  4. 环卫保洁人员巡更定位作业管理系统
  5. 大三下对过去一年多的回顾
  6. [ZT稍长]毫不含糊地反对通货膨胀
  7. 关于TC358749XBG支持HDMI转MIPI,HDMI转MIPI CSI,HDMI in,HDMI RX相关问题
  8. python实现ping工具
  9. Design four
  10. ThinkPHP框架漏洞总结