题目要求:C语言实现从小到大对10个数进行排序,要求使用冒泡排序实现。
**分析:**什么是冒泡排序?冒泡排序就是每次都会有一个泡冒出来,这个泡就是我们要找的元素。这个题中要求把给的数从小到大排列,那我们就可以认为最大的数是“泡”,我们要做的就是找到他并且把它放到合适的位置。
代码演示(注意看注释):
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
int array[10]={55,21,96,36,74,52,16,89,44,11};
int i,j,t;
//每循环一次所需要排序的数就少一个!
for(j=0;j<9;j++)//这是外层循环,外层循环是轮数,数组中有几个数就是几轮。
{
for(i=0;i<9-j;i++)//内层循环是找出数组中还未排序的数的最大的数。
if(array[i]>array[i+1])//如果前一个数比后一个数大
{
//借助中间变量t,是为了不改变array[i]和array[i+1]原本的值
t=array[i]; //把小的数赋值给前面,大的数赋值给后面。
array[i]=array[i+1];
array[i+1]=t;
}
}
printf("按照从小到大的顺序输出:");
for(i=0;i<10;i++)//循环输出
{
printf("%d ",array[i]);
}
return ;//函数返回值为空
}
结果: