用C语言,从键盘上读入正整数n(4<n<10,程序中需判断),生成n个1~99之间的随机数,将n个数输出(因为随机数每次运行结果都不一样,要先输出,才能检查排序结果),使用选择法按从小到大顺序排序。 点击复制后,将打开C知道体验页
时间: 2024-05-15 11:14:47 浏览: 59
C语言生成不同的随机数,并从小到大排序
5星 · 资源好评率100%
好的,这个问题是关于编程的,我可以回答。下面是代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int n, i, j, minIndex, temp;
int arr[10]; // 最多生成10个随机数
printf("请输入正整数n(4<n<10):");
scanf("%d", &n);
if (n <= 4 || n >= 10) {
printf("输入有误,请重新输入。\n");
exit(1); // 程序结束
}
srand(time(NULL)); // 初始化随机数种子
for (i = 0; i < n; i++) {
arr[i] = rand() % 99 + 1; // 生成1~99之间的随机数
printf("%d ", arr[i]); // 输出生成的随机数
}
printf("\n");
for (i = 0; i < n - 1; i++) {
minIndex = i;
for (j = i + 1; j < n; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j; // 找到当前最小值的下标
}
}
if (minIndex != i) {
temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp; // 交换当前最小值与arr[i]
}
}
printf("排序后的结果为:\n");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]); // 输出排序后的结果
}
return 0;
}
```
希望能对您有所帮助!
阅读全文