c语言输入十个随机整数从小到大排列
时间: 2024-05-15 22:18:08 浏览: 108
你可以使用冒泡排序算法来实现将十个随机整数从小到大排列。以下是代码示例:
```c
#include <stdio.h>
int main() {
int arr[10];
int i, j, temp;
// 读入随机整数
printf("请输入十个随机整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 冒泡排序
for (i = 0; i < 9; i++) {
for (j = 0; j < 9 - i; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 输出结果
printf("从小到大排序后的结果为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
相关问题
c语言 编写一道程序随机输入10个整数,将其从小到大排列并输出奇数序号的数字
下面是一个示例程序,可以实现您的需求:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
int compare(const void *a, const void *b) {
return *(int*)a - *(int*)b;
}
int main() {
int a[N];
int i;
srand(time(NULL)); // 初始化随机数种子
// 随机生成10个整数
for (i = 0; i < N; i++) {
a[i] = rand() % 100;
}
// 排序
qsort(a, N, sizeof(int), compare);
// 输出奇数序号的数字
for (i = 0; i < N; i += 2) {
if (a[i] % 2 == 1) {
printf("%d ", a[i]);
}
}
printf("\n");
return 0;
}
```
首先,我们使用 `srand()` 函数初始化随机数种子,然后使用 `rand()` 函数生成10个随机数,存储在数组 `a` 中。接着,使用 `qsort()` 函数对数组 `a` 进行快速排序,将其从小到大排列。最后,我们使用一个循环输出奇数序号的数字,使用 `%` 运算符判断一个数字是否为奇数。
注意,如果您需要更复杂的排序算法,比如归并排序或堆排序,可以自行实现。同时,如果您需要更灵活的选择输出的数字的条件,比如输出前5个数字或输出所有大于某个值的数字等等,可以根据具体需求进行修改。
c语言 编写一道程序随机输入10个整数,将其从小到大排列并输出奇数序号的数字
好的,以下是程序的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define SIZE 10
int main()
{
int arr[SIZE], temp, i, j;
// 生成随机数
srand(time(NULL));
for (i = 0; i < SIZE; i++) {
arr[i] = rand() % 100;
}
// 冒泡排序
for (i = 0; i < SIZE - 1; i++) {
for (j = 0; j < SIZE - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 输出奇数序号的数字
for (i = 0; i < SIZE; i += 2) {
if (arr[i] % 2 != 0) {
printf("%d ", arr[i]);
}
}
return 0;
}
```
程序的运行过程如下:
1. 首先使用 `srand()` 函数和 `rand()` 函数生成 10 个随机数,存储在 `arr` 数组中;
2. 然后使用冒泡排序算法将 `arr` 数组从小到大排序;
3. 最后输出奇数序号的数字,即下标为 0、2、4、6、8 的数字中,值为奇数的数字。
程序输出的结果可能如下:
```
13 23 37 77 85
```
这里的结果仅供参考,每次运行程序的结果都可能不同,因为随机数是随机生成的。
阅读全文