c语言数组元素个数可以自定义吗

编写程序对键盘输入的若干个数按照从大到小的顺序进行排序。其中数组元素个数n由键盘输入得到,且数组元素也由键盘输入得到。

img

实现如下,望采纳。

#include <stdio.h>

#define MAX_LEN 1000 // 定义数组最大长度

// 排序函数,将数组 arr 按照从大到小的顺序排序
void sort(int arr[], int len)
{
    for (int i = 0; i < len; i++)
    {
        for (int j = i + 1; j < len; j++)
        {
            if (arr[i] < arr[j])
            {
                int temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }
    }
}

int main()
{
    int n; // 数组长度
    int arr[MAX_LEN]; // 定义数组

    printf("请输入数组长度:");
    scanf("%d", &n);

    printf("请输入数组元素:");
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }

    sort(arr, n); // 对数组进行排序

    printf("排序后的结果为:");
    for (int i = 0; i < n; i++)
    {
        printf("%d ", arr[i]);
    }

    return 0;
}