用C语言打出随机数生成10个100以内整数存入整型数组,按从小到大的顺序排序并输出(冒泡排序)
时间: 2024-12-24 12:39:11 浏览: 5
在C语言中,你可以按照以下步骤生成随机数、存储、排序,并输出结果:
1. 包含必要的头文件:
```c
#include <stdio.h>
#include <stdlib.h> // 包含rand() 和 srand()
```
2. 初始化随机数种子:
```c
srand(time(0)); // 使用当前时间作为随机数种子,保证每次程序运行得到不同的序列
```
3. 定义数组和变量:
```c
int numbers[10]; // 存放10个随机数的数组
int i, j, temp; // 循环计数和临时变量
```
4. 生成随机数并填充数组:
```c
for (i = 0; i < 10; i++) {
numbers[i] = rand() % 100 + 1; // 随机数范围从1到100(包括1)
}
```
5. 冒泡排序算法:
```c
for (i = 0; i < 9; i++) { // 由于最后一个小元素已经是有序的,所以只需要循环9次
for (j = 0; j < 9 - i; j++) {
if (numbers[j] > numbers[j+1]) {
temp = numbers[j];
numbers[j] = numbers[j+1];
numbers[j+1] = temp;
}
}
}
```
6. 输出排序后的数组:
```c
printf("Sorted array:\n");
for (i = 0; i < 10; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
```
完整的代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int numbers[10], i, j, temp;
srand(time(0));
// 生成并填充数组
for (i = 0; i < 10; i++) {
numbers[i] = rand() % 100 + 1;
}
// 冒泡排序
for (i = 0; i < 9; i++) {
for (j = 0; j < 9 - i; j++) {
if (numbers[j] > numbers[j+1]) {
temp = numbers[j];
numbers[j] = numbers[j+1];
numbers[j+1] = temp;
}
}
}
// 输出结果
printf("Sorted array:\n");
for (i = 0; i < 10; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
```
阅读全文