在键盘上输入n(0<n<100)个整数,编写一个程序使该数组中的数按照从小到大的次序排列,用选择排序算法实现。
选择排序:首先找出值最小的数,然后把这个数与第一个数交换,这样值最小的数就放到了第一个位置;然后,再从剩下的数中找值最小的,把它和第二个数互换,使得第二小的数放在第二个位置上。以此类推,直到所有的值从小到大的顺序排列为止。

在键盘上输入N个整数,编写一个程序用选择排序算法实现从小到大排列分数
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注
#include <stdio.h> #define MAX_NUM 100 int main() { int n; int arr[MAX_NUM]; printf("请输入n的值(0 < n < 100):\n"); scanf("%d", &n); printf("请依次输入%d个整数:\n", n); for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } // 选择排序算法 for (int i = 0; i < n - 1; i++) { int min_index = i; for (int j = i + 1; j < n; j++) { if (arr[j] < arr[min_index]) { min_index = j; } } if (min_index != i) { int temp = arr[i]; arr[i] = arr[min_index]; arr[min_index] = temp; } } printf("从小到大排序后的结果为:\n"); for (int i = 0; i < n; i++) { printf("%d ", arr[i]); } printf("\n"); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 2