在C语言中,可以使用动态数组来赋值并排序输出。下面是一个示例代码:
#include#include int compare(const void *a, const void *b) { return (*(int*)a - *(int*)b); } int main() { int n; // 数组长度 int *arr; // 动态数组指针 // 输入数组长度 printf("请输入数组长度:"); scanf("%d", &n); // 为动态数组分配内存空间 arr = (int*)malloc(n * sizeof(int)); // 输入数组元素 printf("请输入数组元素:"); for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } // 排序数组 qsort(arr, n, sizeof(int), compare); // 输出排序后的数组 printf("排序后的数组:"); for (int i = 0; i < n; i++) { printf("%d ", arr[i]); } printf("\n"); // 释放内存空间 free(arr); return 0; }
该代码首先通过malloc
函数为动态数组arr
分配了n
个int
类型的内存空间。然后使用循环输入数组元素。接下来,使用qsort
函数对数组进行排序,compare
函数用于比较两个元素的大小。最后,使用循环输出排序后的数组元素。最后,使用free
函数释放动态数组所占的内存空间。