用c语言(2)从键盘依次输入列整数(输人0结束),编写函数.统计输人的整数序列中的奇数个数和偶数个数,在主丽数中调用该函数并求输人的整数序列中的奇数个数和偶数个数。
时间: 2024-09-24 19:05:00 浏览: 43
c代码-10.键盘输入一个正整数s,从低位开始取出s中奇数位上的数作为高位,依次构成一个新数输出。例如,输入"54321",输出"135"。
在C语言中,你可以通过定义一个函数来实现这个功能。首先,你需要创建一个函数来读取用户输入的整数,并检查每个数字是否为奇数还是偶数。然后在主函数中调用这个函数,统计奇数和偶数的个数。
这里是一个简单的示例:
```c
#include <stdio.h>
// 函数声明,用于计算奇数和偶数个数
void count_numbers(int *numbers, int* odd_count, int* even_count, int max_count);
int main() {
int numbers[100], odd_count = 0, even_count = 0; // 假设最多输入100个数
int input, i;
printf("请输入列整数(输入0结束):");
for (i = 0; ; ++i) { // 循环直到输入0
scanf("%d", &input);
if (input == 0)
break;
numbers[i] = input;
// 检查并更新奇偶计数
if (input % 2 == 0) // 如果是偶数
even_count++;
else // 否则是奇数
odd_count++;
}
count_numbers(numbers, &odd_count, &even_count, i); // 调用函数
printf("奇数个数: %d\n", odd_count);
printf("偶数个数: %d\n", even_count);
return 0;
}
// 函数定义,统计传入数组中的奇偶数个数
void count_numbers(int *numbers, int* odd_count, int* even_count, int max_count) {
*odd_count += numbers[max_count - 1]; // 将最后一个已输入的数加入计数
*even_count += max_count - 1; // 因为前面已经处理了所有数,所以总共有max_count - 1个偶数
}
```
在这个程序中,`count_numbers`函数接受一个整数指针、两个计数器指针以及最大输入数,它会将最后一个输入的整数加到对应的计数器上,同时直接累加偶数计数器,因为前面对每个数都进行了判断。
阅读全文