在键盘上输入N个整数,编写一个程序用选择排序算法实现从小到大排列分数

在键盘上输入n(0选择排序:首先找出值最小的数,然后把这个数与第一个数交换,这样值最小的数就放到了第一个位置;然后,再从剩下的数中找值最小的,把它和第二个数互换,使得第二小的数放在第二个位置上。以此类推,直到所有的值从小到大的顺序排列为止。

#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;
}

#include <stdio.h>
int main() {
    int n, i, j, min, temp;
    int arr[100];
    
    // 输入n个数
    printf("请输入n:\n");
    scanf("%d", &n);
    printf("请输入数组:\n");
    for (i = 0; i < n; i++) {
        scanf("%d", &arr[i]);
    }
    
    // 选择排序
    for (i = 0; i < n - 1; i++) {
        min = i; // 假设第i个位置的元素是最小的
        for (j = i + 1; j < n; j++) {
            if (arr[j] < arr[min]) {
                min = j; // 更新最小值的位置
            }
        }
        // 把找到的最小值元素放到第i个位置
        temp = arr[i];
        arr[i] = arr[min];
        arr[min] = temp;
    }
    
    // 输出排序后的数组
    printf("排序后的数组:\n");
    for (i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
    
    return 0;
}