c语言 将十个随机输入的数字按从大到小的顺序排序的代码
时间: 2024-12-25 13:33:01 浏览: 2
在C语言中,我们可以使用数组和循环结构结合随机数生成函数`rand()`以及`srand()`来实现这个功能。下面是一个简单的示例,使用冒泡排序算法将10个随机整数按降序排列:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h> // 包含时间相关的库,用于设置随机种子
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 冒泡排序函数
void bubble_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] < arr[j + 1]) { // 如果前一个元素小于后一个元素,则交换位置
swap(&arr[j], &arr[j + 1]);
}
}
}
}
int main() {
srand(time(0)); // 设置随机种子,保证每次程序运行得到不同的随机数
int nums[10]; // 存放10个随机数的数组
for (int i = 0; i < 10; i++) {
nums[i] = rand() % 100; // 生成0到99之间的随机数
printf("%d ", nums[i]); // 打印当前生成的数字
}
printf("\nUnsorted array: ");
for (int i = 0; i < 10; i++) {
printf("%d ", nums[i]);
}
bubble_sort(nums, 10); // 对数组进行排序
printf("\nSorted in descending order: ");
for (int i = 0; i < 10; i++) {
printf("%d ", nums[i]);
}
return 0;
}
```
阅读全文