产生50个1~100的随机整数,并将其偶数保存到一个数组中,输出数组中所有数据,并求该数组长度。
时间: 2024-09-12 21:13:52 浏览: 19
首先,我们可以使用C语言中的`rand()`函数来生成随机数,然后使用模运算符`%`来判断这个随机数是否为偶数。如果为偶数,则将其保存到数组中。生成随机数之前,通常会调用`srand()`函数设置随机数种子,以便每次运行程序时能够得到不同的随机数序列。这里我们将使用当前时间作为随机种子。
以下是实现上述功能的C语言代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int evenNumbers[50]; // 假设我们只需要存储50个偶数,但实际上生成的偶数可能少于50个
int count = 0; // 记录偶数的数量
int i, randomNumber;
// 初始化随机数生成器
srand(time(NULL));
printf("Even numbers:\n");
for (i = 0; i < 50; i++) {
randomNumber = rand() % 100 + 1; // 生成1到100之间的随机数
if (randomNumber % 2 == 0) { // 判断是否为偶数
evenNumbers[count] = randomNumber; // 存储偶数
count++; // 增加偶数计数
}
printf("%d ", randomNumber);
}
printf("\n");
// 输出偶数数组的长度
printf("The length of the even numbers array is: %d\n", count);
return 0;
}
```
这段代码首先包含了必要的头文件,并在`main`函数中定义了一个整数数组`evenNumbers`用于存储偶数,以及一个变量`count`用于记录偶数的数量。通过循环50次,使用`rand()`函数生成1到100之间的随机数,并检查这个数是否为偶数。如果是偶数,则将其保存到`evenNumbers`数组中,并且`count`增加。之后打印出所有生成的随机数(包括奇数和偶数),最后输出偶数数组的长度。
请注意,因为随机数是随机生成的,所以每次运行程序时偶数的数量可能会有所不同。