A41263. 选择排序
填空题
容易
知识点
题目描述
选择排序
题目描述
用选择法对10个整数从小到大排序。
输入格式
输入10个无序的数字
输出格式
排序好的10个整数
样例输入
4 85 3 234 45 345 345 122 30 12
样例输出
3
4
12
30
45
85
122
234
345
参考答案
#include <stdio.h>
int main(void) {
int n[10]={0};
int i, j, min, temp; //min是数组n中最小值的下标
for (i=0; i<10; i++) {
scanf("%d", &n[i]);
}
for (i=0; i<9; i++) { //i同时也是无序区第一个数的下标
min = i; //假设最小值是无序区第一个数
//寻找最小值的下标
for (j=i; j<10; j++) {
if (n[j] < n[min]) {
min = j;
}
}
//如果最小值不是无序区第一个数,就把最小值和无序区第一个数交换
if (min != i) {
temp = n[min];
n[min] = n[i];
n[i] = temp;
}
}
for (i=0; i<10; i++) {
printf("%d\n", n[i]);
}
return 0;
}
上一题
下一题