哈喽!
大家好,我们今天结束C语言期末考试啦
不知道各位同学考完了没呢?
由于在考试前依然有很多同学不清楚冒泡法怎么用
这期我专门整理了一下冒泡法的用法,
供大家参考哦!
我们先来看一下源代码:
#include<stdio.h>
void main()
{
int a[10],i,j,t;
for(i=0;i<=9;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for(i=0;i<=9;i++)
printf("%d\t",a[i]);
}
从代码中我们可以发现,除去输入输出数组语句外,
并没有多少代码了,
冒泡法的原理就是:
假设将10个数从小到大排列,
相邻两个数比较,如果发现前一项比后一项大,那么这两项
就互换,之后再两两相比,这样比较一轮下来,
我们就可以得到一个最大值。
需要排十个数,外循环就是i=0~i=8,9次即可
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
下面是运行结果图:
当然,我们还可以将代码加以改进,比如自定义函数……
就到这里吧!我们下期见,拜拜~
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/183827.html原文链接:https://javaforall.cn