C语言的冒泡排序方法
C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。那么C语言的.冒泡排序方法是怎样的呢?以下仅供参考!
具体方法如下:
#include
void maopao(int a[],int n);//函数的声明 (你有一双手)
int main()
{//数组是用来存储一堆相同数据类型的数据
int a[10]={77,9,86,666,34,23,16,2,87,40};//放着10个整数
maopao(a,10);//函数的调用(你爸爸有100万,儿子帮你数一下钱)
return 0;
}
void maopao(int a[],int n)//函数的实现(你的手可能用来数钱)//10
{
int j,tmp,k,p=0;
int i=n-1;//初识时,最后的位置保持不变 9
while(i>0)//i=9,i永远都会大于0
{
int pos=0;//每一次循环开始计算,无记录交换 主要是一个标记作用
for(j=0;j<i;++j)//从0-8
if(a[j]<a[j+1])//两两做比较 如:a[j]=10 a[j+1]=5
{//如果这个if语句永远都不成立,意味着pos永远都等于0
pos=j;
tmp=a[j];//tmp=10
a[j]=a[j+1];//a[j]=5
a[j+1]=tmp;//a[j+1]=10
}
i=pos;//为下一次比较做好准备
for(k=0;k<10;k++)
printf("%5d",a[k]);
printf("");
++p;
}
printf("共运行%d次",p);
}
-
C语言基础循环结构
引导语:循环结构可以减少源程序重复书写的工作量,用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构。以下是本站小编分享给大家的C语言循环结构,欢迎阅读学习!1.1for循环结构循环语句的一般表达式是:for(表达式1;表达式2;表达式3)语句2....
-
C语言输出菱形的方法
题目:输出行列都相等的菱形,如5行5列:行列123451*2***3*****4***5*分析:当行数等于总行数的一半时,*是递增的,递增为2。当行数大于总行数的一半时,*是递减的,递增为2。设有一个行列为n的菱形,我们用变量i作为行数,以0开始,ik作为n菱第i行要输出的*个数。则i<=n的中值(用m...
-
2017年计算机二级C语言的应用
yjbys考试网为您整理了2017年计算机二级C语言的应用,更多计算机等级考试相关信息请访问应届毕业生计算机等级考试网。从前面对C语言的特点的分析中,不难看出C语言具有编程方便、语句简练、功能很强、移植性好等优点,是编程者喜欢使用的一种结构化程序设计语言。C...
-
内部排序之堆排序的实现
堆排序(HeapSort)只需要一个记录大小的辅助空间,每个待排序的记录仅占有一个存储空间。下面小编为大家整理了内部排序之堆排序的实现,希望能帮到大家!(1)基本概念a)堆:设有n个元素的序列:{k1,k2,...,kn}对所有的i=1,2,...,(int)(n/2),当满足下面关系:ki≤k2i,ki≤k2i+1或ki...