目录
一、冒泡排序
从键盘输入的5个整数按从小到大的顺序排序后输出,使用双for循环嵌套使用
通俗的讲,冒泡排序就是从头开始拿每个数去与后面对比,比出两者中的大的数字,拿大的数字继续去比后面的,也就是说第一轮循环之后最大的数字在最末尾。之后依次重复对比操作得到第二大、第三大的数字
#include<stdio.h>
int main()
{
int a[5] = {5,19,6,10,7}; //随便输入一组数组
int i, j;
int tmp;
int len = sizeof(a) / sizeof(a[0]); //用sizeof求出数组的长度
for (j = 0; j < len - 1; j++) //用双for循环完成排序,外层For循环控制总循环的次数
{
for (i = 0; i < len - 1 - j; i++) //内层for循环控制每次比较,第一个数比较4次,依
{ //次减少
if (a[i] > a[i + 1]) //若这个数大于下一个数字,则进行交换
{
tmp = a[i];
a[i] = a[i + 1];
a[i + 1] = tmp;
}
}
}
for(i = 0; i < len; i++)
{
printf("%d ", a[i]);
}
return 0;
}
二、选择排序
选择排序是,我们从数组中找到最小的数字放在这个数组的第一个,找到第二个小的数字放在这个数组的第二个,依次类推,从而完成由小到