产生50个1~100的随机整数,并将其中的偶数保存到一个数组中,输出数组中所有的数据,并求该数组的长度
时间: 2024-09-11 16:06:17 浏览: 38
首先,我们可以使用 `<stdlib.h>` 中的 `rand()` 函数来生成随机数,并使用 `<time.h>` 中的 `time()` 函数来初始化随机数生成器,确保每次运行程序时都能得到不同的随机数序列。然后,我们需要一个数组来存储生成的随机数,并通过一个循环来重复生成随机数并检查它们是否为偶数。如果是偶数,我们就将其保存到另一个数组中。最后,我们将输出这个数组以及计算它的长度。
下面是完成这个任务的C语言代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX_RANDOM 100
#define ARRAY_SIZE 50
int main() {
int random_numbers[ARRAY_SIZE]; // 存储生成的随机数
int even_numbers[ARRAY_SIZE]; // 存储偶数
int even_count = 0; // 偶数的数量
// 初始化随机数生成器
srand(time(NULL));
// 生成随机数并筛选出偶数
for (int i = 0; i < ARRAY_SIZE; ++i) {
random_numbers[i] = rand() % MAX_RANDOM + 1; // 生成1到100之间的随机数
if (random_numbers[i] % 2 == 0) {
even_numbers[even_count++] = random_numbers[i]; // 如果是偶数则存储到even_numbers数组
}
}
// 输出偶数数组及其长度
printf("偶数数组:\n");
for (int i = 0; i < even_count; ++i) {
printf("%d ", even_numbers[i]);
}
printf("\n数组的长度为: %d\n", even_count);
return 0;
}
```
这段代码首先定义了两个数组:`random_numbers` 用于存储所有生成的随机数,`even_numbers` 用于存储筛选出来的偶数。我们使用 `srand(time(NULL))` 来设置随机种子,以确保每次运行程序时生成的随机数序列都不同。通过循环,我们生成随机数并检查每个数是否为偶数,如果是偶数,则存储到 `even_numbers` 数组中,并递增 `even_count` 变量来记录偶数的数量。最后,我们输出所有的偶数和偶数数组的长度。
阅读全文