C语言随机生成10个1到50以内的整数,并把这10个整数输出在屏幕上。然后用选择排序方法,把这个10个整数按照从大到小的顺序排列并输出在屏幕上。
时间: 2024-05-08 10:18:08 浏览: 18
好的,这是一个关于C语言的问题。以下是代码实现:
```c
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void selection_sort(int arr[], int n);
int main()
{
int arr[10];
int i;
srand(time(NULL)); // 设置随机数种子
printf("生成的10个随机数为:");
for (i = 0; i < 10; i++) {
arr[i] = rand() % 50 + 1; // 生成1到50的随机数
printf("%d ", arr[i]);
}
printf("\n");
selection_sort(arr, 10);
printf("从大到小排序后的结果为:");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
void selection_sort(int arr[], int n) {
int i, j, max_idx, temp;
for (i = 0; i < n - 1; i++) {
max_idx = i;
for (j = i + 1; j < n; j++) {
if (arr[j] > arr[max_idx]) {
max_idx = j;
}
}
temp = arr[i];
arr[i] = arr[max_idx];
arr[max_idx] = temp;
}
}
```
输出结果如下:
```
生成的10个随机数为:26 33 23 47 1 18 44 4 4 21
从大到小排序后的结果为:47 44 33 26 23 21 18 4 4 1
```
希望这个回答能够帮到你!
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)