c语言冒泡排序算法
案例一: #include <stdio.h> int main(void){ int a[5];
printf("please input sort number:");
int k;
for(k=0;k<5;k++)
{
scanf("%d",&a[k]);//int类型要加&符号取地址
}
//开始排序
int n = sizeof(a)/sizeof(a[0]);
printf("数组共%d个数\n",n); int w,j; //5个数要比较5-1=4次 3》1
for(w=0;w<n-1;w++){
//printf("w=%d\n",w); 循环4次
for(j=0; j<n-1-w;j++){
if(a[j]>a[j+1]){
//大的放后面
int temp;
temp = a[j];
a[j] = a[j+1];//放最小的
a[j+1] = temp;
}
}
}
//输出 int i;
printf("数组初始化为:");
for(i=0;i<n;i++){
printf("%d",a[i]);
}
printf("\n");
return 0;
} 案例二:
#include <stdio.h> int main(void)
{
//冒泡排序实现
int a[10] = {9,5,10,7,2,3,1,6,8,4};
int i=0,j=0;
int n = sizeof(a)/4; //外循环n-1轮
for(i=0;i<n-1;i++){
//控制冒泡
for(j=n-1;j>i;j--){
int temp;
if(a[j]<a[j-1]){
temp = a[j];
a[j] = a[j-1];
a[j-1] = temp;
}
}
}
//输出
for(i=0;i<n;i++){
printf("a[%d]=%d\n",i,a[i]);
} return 0;
}
c语言冒泡排序算法的更多相关文章
- 史上最详细的C语言冒泡排序算法
未经同意,请勿转载. void bubbing(){ ] = {,,,,,,,,,};//define init the array //going to the exinternal loop,st ...
- 【C语言】两种方式实现冒泡排序算法
题目要求 编写一个C语言程序,实现基本的冒泡排序算法. 算法 冒泡排序,用一句话来总结: 一组数中,相邻的两个数进行比较.交换,将最大(小)数交换至尾(首)部,即完成了一次冒泡排序 要想对N个数字进行 ...
- C语言排序算法之简单交换法排序,直接选择排序,冒泡排序
C语言排序算法之简单交换法排序,直接选择排序,冒泡排序,最近考试要用到,网上也有很多例子,我觉得还是自己写的看得懂一些. 简单交换法排序 /*简单交换法排序 根据序列中两个记录键值的比较结果来对换这两 ...
- C语言排序算法复习
排序算法有很多种,这里在复习和分析的基础上,做一个自己的总结: 首先要知道有哪些排序算法,google一下,有云C语言7大经典排序算法(也有8大).主要包括冒泡排序,快速排序,选择排序,插入排序,希尔 ...
- python开发学习-day05(正则深入、冒泡排序算法、自定义模块、常用标准模块)
s12-20160130-day05 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...
- c/c++面试总结---c语言基础算法总结2
c/c++面试总结---c语言基础算法总结2 算法是程序设计的灵魂,好的程序一定是根据合适的算法编程完成的.所有面试过程中重点在考察应聘者基础算法的掌握程度. 上一篇讲解了5中基础的算法,需要在面试之 ...
- python算法与数据结构-冒泡排序算法(32)
一.冒泡排序介绍 冒泡排序(英语:Bubble Sort)是一种简单的排序算法.它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.遍历数列的工作是重复地进行直到没有再需要 ...
- 冒泡排序算法(C#、Java、Python、JavaScript、C、C++实现)
一.介绍 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小.首字母从Z到A)错误就把他们交换过来. 走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排 ...
- C#冒泡排序算法
用了两种形式的数据,一个是泛型List,一个是数据int[].记录一下,作为自己学习过程中的笔记. using System; using System.Collections.Generic; us ...
随机推荐
- vue+element树组件 实现树懒加载
本文连接https://www.cnblogs.com/aknife/p/11709255.html 一.页面样式 二.数据库 三.前端页面代码 <template> <el-tre ...
- matlab安装与使用
Matlab安装和使用 百度网盘连接:https://pan.baidu.com/s/1aHPeAkNofCuwyYopnva4Mg 提取码:ci96 下载完成后: 将R2017b_win64_dvd ...
- angularjs 中的路由 与 bootstrap标签选项卡的冲突 解决方案
当项目中使用了angularjs 的路由,则所有 像a标签的href 的链接都会走路由,实现页面跳转,那么有些地方需要使用选项卡,就会带来麻烦. 路由使用如下图: 某页面需要使用bootstrap的选 ...
- ASPxClientGridView(客户端选择某一行的值的调用)
- css3可拖动的魔方3d
css3可拖动的魔方3d 主要用到知识点: css3 3d转换 原生js鼠标拖动事件 display:grid 布局 实现的功能 3d魔方 可点击,可拖动 直接看效果 html: <div cl ...
- c# zip写comment注释
//生成的压缩文件为test.zip using (FileStream fsOut = File.Create("test.zip")) { //ZipOutputStream类 ...
- Android多线程操作,as快捷键笔记
Android studio 快捷键 cmd+p 快速查看该方法的参数定义 * * option + shift +上下 快速移动上下行 * * cmd + e 显示最近操作的文件 * * cmd + ...
- Xen虚拟化技术详解---第四章----申请超级调用
内核驱动程序privcmd负责将位于GuestOS用户空间的超级调用请求传递到GuestOS内核中,与Linux系统的内核驱动程序相同,该操作要在系统调用ioctl()的帮助下完成. 1.关于ioct ...
- 使用gdb调试应用程序
目录 一.gdb基本使用 1. 启动gdb 2. gdb交互式命令 一.gdb基本使用 GDB是一个由GNU开源组织发布的.UNIX/LINUX操作系统下的.基于命令行的.功能强大的程序调试工具. ...
- Linux将用户添加到组的指令
原文:https://blog.csdn.net/youmatterhsp/article/details/80549683: https://www.cnblogs.com/cl ...