c语言生成30个1到100之间的整数并以十个数为一行排序
时间: 2024-02-18 08:59:18 浏览: 119
西南交大C语言文件操作大作业:字符文件与二进制文件读写方法
好的,我来为您编写一个c语言程序:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define ARRAY_LENGTH 30 // 数组长度
#define ROW_LENGTH 10 // 每行元素个数
// 交换两个数的值
void swap(int *a, int *b) {
int tmp = *a;
*a = *b;
*b = tmp;
}
// 冒泡排序
void bubble_sort(int arr[], int len) {
for (int i = 0; i < len - 1; i++) {
for (int j = 0; j < len - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
swap(&arr[j], &arr[j + 1]);
}
}
}
}
int main() {
int arr[ARRAY_LENGTH];
srand((unsigned)time(NULL)); // 随机种子
printf("生成的随机数为:\n");
for (int i = 0; i < ARRAY_LENGTH; i++) {
arr[i] = rand() % 100 + 1; // 生成1到100之间的随机整数
printf("%d ", arr[i]);
if ((i + 1) % ROW_LENGTH == 0) { // 每行输出10个数
printf("\n");
}
}
bubble_sort(arr, ARRAY_LENGTH); // 对数组进行排序
printf("\n排序后的结果为:\n");
for (int i = 0; i < ARRAY_LENGTH; i++) {
printf("%d ", arr[i]);
if ((i + 1) % ROW_LENGTH == 0) { // 每行输出10个数
printf("\n");
}
}
return 0;
}
```
程序的运行结果如下所示:
```
生成的随机数为:
1 19 25 4 43 99 76 34 93 22
83 80 61 25 10 9 95 87 88 5
37 84 87 81 12 34 86 22 59 77
排序后的结果为:
1 4 5 9 10 12 19 22 22 25
25 34 34 37 43 59 61 76 77 80
81 83 84 86 87 87 88 93 95 99
```
阅读全文