C语言-冒泡排序算法示例
题:任意输出10个数,并在输出时把它们按照由小到大的顺序排列
#include <stdio.h>
// 任意输出10个数字,在输出的时候将它们按照从小到大的顺序排序
int main(void) {
int t,a[10];
printf("请输入10个数字");
for (int i = 0; i < 10; ++i) {
scanf("%d", &a[i]);
} //输入10个数
for (int j = 0; j < 9; ++j) {//进行九次比较
for (int k = j+1; k < 10; ++k) {
if(a[j] > a[k]){
t = a[j];
a[j] = a[k];
a[k] = t; //交换两个数
}
}
}
printf("排序后为:");
for (int l = 10; l >0; l++) {
printf("%d ",a[l]);
}
printf("\n");
}
从大到小排序:
#include <stdio.h>
// 任意输出10个数字,在输出的时候将它们按照从小到大的顺序排序
int main(void) {
int t,a[10];
printf("请输入10个数字");
for (int i = 0; i < 10; ++i) {
scanf("%d", &a[i]);
} //输入10个数
for (int j = 0; j < 9; ++j) {//进行九次比较
for (int k = j+1; k < 10; ++k) {
if(a[j] > a[k]){
t = a[j];
a[j] = a[k];
a[k] = t; //交换两个数
}
}
}
printf("排序后为:");
for (int l = 9; l >=0; l--) {
printf("%d ",a[l]);
}
printf("\n");
}
冒泡排序例图:
此图来源于冒泡排序(超详细)_@烟雨倾城ゝ的博客-CSDN博客_冒泡排序
大家可以直接参考这个博主的笔记,我这里就是自己再记录一下。讲的很清晰