C语言如何统计数组中元素的奇数和偶数个数?
时间: 2024-10-25 15:07:04 浏览: 41
在C语言中,你可以使用两个变量分别来存储数组中奇数和偶数的个数。这里有一个简单的示例:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5, 6}; // 假设这是你要统计的数组
int count_even = 0, count_odd = 0;
int length = sizeof(arr) / sizeof(arr[0]); // 获取数组长度
for(int i = 0; i < length; i++) {
if(arr[i] % 2 == 0) { // 如果元素是偶数
count_even++;
} else { // 如果元素是奇数
count_odd++;
}
}
printf("偶数有 %d 个,奇数有 %d 个。\n", count_even, count_odd);
return 0;
}
```
在这个程序中,我们遍历数组,对每个元素做模运算(`arr[i] % 2`),如果结果为0,则是偶数,计数器`count_even`加一;反之则是奇数,`count_odd`加一。最后输出统计的结果。
相关问题
运用C语言,输入5个数放到数组中,统计奇数偶数个数
好的,您可以参考下面的C语言代码实现:
```c
#include <stdio.h>
int main() {
int nums[5];
int odd_count = 0, even_count = 0;
// 输入5个数
printf("请输入5个整数:\n");
for (int i = 0; i < 5; i++) {
scanf("%d", &nums[i]);
}
// 统计奇数和偶数个数
for (int i = 0; i < 5; i++) {
if (nums[i] % 2 == 0) {
even_count++;
} else {
odd_count++;
}
}
printf("奇数个数为:%d\n", odd_count);
printf("偶数个数为:%d\n", even_count);
return 0;
}
```
这里定义了一个长度为5的整型数组`nums`,利用for循环语句输入5个数,然后利用另一个for循环语句统计奇数和偶数的个数,最后输出结果。
定义一个长度为10的整型数组,随机输入10个数。。要求统计该数组中奇数和偶数的个数,并把奇数和偶数个数输出来。用c语言指针实现
好的,以下是C语言代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int arr[10];
int odd_count = 0, even_count = 0;
int *p;
// 生成随机数种子
srand((unsigned)time(NULL));
// 随机生成10个数并统计奇偶数个数
for (p = arr; p < arr + 10; p++)
{
*p = rand() % 100;
if (*p % 2 == 0)
even_count++;
else
odd_count++;
}
// 输出数组与奇偶数个数
printf("数组为:");
for (p = arr; p < arr + 10; p++)
{
printf("%d ", *p);
}
printf("\n奇数个数:%d, 偶数个数:%d\n", odd_count, even_count);
return 0;
}
```
输出结果为:
```
数组为:75 35 30 70 31 42 77 27 35 17
奇数个数:6, 偶数个数:4
```
其中,`p = arr` 表示将指针 `p` 指向数组 `arr` 的首地址,`p < arr + 10` 表示指针 `p` 最多能够遍历到数组 `arr` 的末尾,`*p = rand() % 100` 表示将指针 `p` 所指向的元素赋值为 0 ~ 99 的随机整数。
阅读全文