检测输入数据中奇数和偶数的个数 从键盘输入一系列正整数,输入-1表示输入结束(-1本身不是输入的数据)。编写程序判断输入数据中奇数和偶数的个数。如果用户输入的第一个数据就是-1,则程序输出"over!"。否则。用户每输入一个数据,输出该数据是奇数还是偶数,直到用户输入-1为止,分别统计用户输入数据中奇数和偶数的个数。,用c语言编程
时间: 2023-12-03 12:46:58 浏览: 61
下面是用 C 语言编写的程序,可以实现输入一系列正整数,判断奇偶性,并统计个数:
```c
#include <stdio.h>
int main() {
int num, oddCount = 0, evenCount = 0;
printf("请输入一系列正整数(输入-1结束):\n");
do {
scanf("%d", &num);
if (num == -1) {
printf("over!\n");
break;
}
if (num % 2 == 0) {
printf("%d 是偶数\n", num);
evenCount++;
} else {
printf("%d 是奇数\n", num);
oddCount++;
}
} while (1);
printf("奇数个数:%d,偶数个数:%d\n", oddCount, evenCount);
return 0;
}
```
程序中使用了 do-while 循环来不断读取用户输入的数据,如果输入的是 -1,则跳出循环并输出 "over!"。如果输入的是正整数,就判断其奇偶性并输出对应的信息,同时统计奇数和偶数的个数。最后输出统计结果。
相关问题
从键盘输入一批正整数(输入-1结束),统计有多少奇数,多少偶数。
### 回答1:
可以使用循环语句和条件语句来实现这个功能。具体步骤如下:
1. 定义两个变量,分别用来记录奇数和偶数的个数,初始值都为。
2. 使用while循环,不断从键盘输入正整数,直到输入-1为止。
3. 在循环中,使用if语句判断输入的数是奇数还是偶数,如果是奇数,则奇数个数加1,否则偶数个数加1。
4. 循环结束后,输出奇数和偶数的个数。
代码示例:
```
odd_count = # 奇数个数
even_count = # 偶数个数
while True:
num = int(input("请输入一个正整数(输入-1结束):"))
if num == -1:
break
if num % 2 == :
even_count += 1
else:
odd_count += 1
print("奇数个数:", odd_count)
print("偶数个数:", even_count)
```
### 回答2:
这个问题可以通过对每一个输入的数进行判断,从而进行分类统计。代码如下:
```python
odd_count = 0 # 奇数计数器
even_count = 0 # 偶数计数器
while True:
num = int(input("请输入一个正整数:"))
if num == -1:
break # 输入-1,结束循环
if num % 2 == 0:
even_count += 1 # 是偶数,偶数计数器+1
else:
odd_count += 1 # 是奇数,奇数计数器+1
print("奇数个数:", odd_count)
print("偶数个数:", even_count)
```
这个程序首先定义了两个变量 `odd_count` 和 `even_count` 分别来记录奇数个数和偶数个数,然后通过一个无限循环来接受用户输入的正整数,通过判断每个数是奇数还是偶数,来将它们进行相应的计数。当输入 `-1` 时,跳出循环并输出最终的结果。
值得注意的是,输入一批正整数,在实际应用中需要考虑用户的输入错误,比如输入了非整数的字符,或者是负数等情况,需要进行相应的错误处理。本题中省略了这些细节的处理。
### 回答3:
这道题目需要我们编写一个程序,能够接受用户从键盘输入一批正整数,并统计其中奇数和偶数的数量。具体实现过程如下:
1. 首先,我们需要定义两个变量,分别用来存储奇数和偶数的数量。假设这两个变量分别为odd_count和even_count,初始值都为0。
2. 接下来,我们可以使用一个while循环,不断接受用户从键盘输入的正整数。每次用户输入一个数字,我们都判断这个数字是奇数还是偶数,然后分别将odd_count和even_count的值加1或者不变。
3. 在判断数字是奇数还是偶数时,我们可以使用取余操作。如果一个数除以2的余数为0,那么这个数就是偶数;否则这个数就是奇数。
4. 在while循环的条件中,我们可以使用一个if语句判断用户是否输入了-1,如果输入了-1,就跳出循环。
5. 最终,我们输出odd_count和even_count的值,告诉用户输入的正整数中奇数和偶数的数量。
下面是一个示例代码,可以实现上述功能:
```
int odd_count = 0; // 存储奇数的数量
int even_count = 0; // 存储偶数的数量
int input_number = 0; // 存储用户输入的数字
while (true) {
cout << "请输入一个正整数(输入-1结束):";
cin >> input_number;
if (input_number == -1) {
break;
}
if (input_number % 2 == 0) {
even_count += 1; // 如果是偶数,则偶数数量加1
} else {
odd_count += 1; // 如果是奇数,则奇数数量加1
}
}
cout << "输入的正整数中,奇数的数量为:" << odd_count << endl;
cout << "输入的正整数中,偶数的数量为:" << even_count << endl;
```
当用户输入正整数时,程序会不断执行while循环,统计奇数和偶数的数量。当用户输入-1时,程序会跳出循环,并输出奇数和偶数的数量。注意,上述代码中没有对用户输入的数字是否为正整数进行检查,这是需要完善的地方。
Java程序需要读入一系列正整数数据,当输入-1时表示输入结束,-1本身不是输入的数据。程序需要输出读到的数据中奇数和偶数的个数。
好的,下面是使用 Java 语言编写的程序,实现读入一系列正整数数据,当输入 -1 时表示输入结束,-1 本身不是输入的数据。程序统计读到的数据中奇数和偶数的个数,并输出结果:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int oddCount = 0; // 奇数计数器
int evenCount = 0; // 偶数计数器
while (true) {
int num = scanner.nextInt(); // 读取数据
if (num == -1) {
break; // 输入结束,退出循环
}
if (num % 2 == 0) {
evenCount++; // 计数器加一
} else {
oddCount++; // 计数器加一
}
}
System.out.println("奇数个数:" + oddCount);
System.out.println("偶数个数:" + evenCount);
}
}
```
程序首先创建一个 Scanner 对象,用于读取控制台输入的数据。然后定义两个计数器变量 `oddCount` 和 `evenCount`,分别用于记录奇数和偶数的个数。接着进入一个无限循环,每次读取一个整数 `num`,如果 `num` 的值为 -1,则表示输入结束,退出循环;否则,根据 `num` 的奇偶性,将对应的计数器变量加一。最后,输出奇数和偶数的个数。