c语言统计正整数负整数和零的个数
时间: 2024-01-22 14:17:21 浏览: 150
可以通过循环输入数字并判断正负性,最后统计个数来实现:
```c
#include <stdio.h>
int main() {
int num, pos_count = 0, neg_count = 0, zero_count = 0;
printf("输入数字(输入0结束):\n");
do {
scanf("%d", &num);
if (num > 0) {
pos_count++;
} else if (num < 0) {
neg_count++;
} else {
zero_count++;
}
} while (num != 0);
printf("正整数个数:%d\n", pos_count);
printf("负整数个数:%d\n", neg_count);
printf("零的个数:%d\n", zero_count);
return 0;
}
```
这段代码中,我们通过do-while循环不断输入数字并判断正负性,直到输入0为止。然后我们根据判断结果统计正整数、负整数和零的个数,最后输出统计结果。
相关问题
c语言2.统计正整数、负整数和0的个数 ([问题描述]输入若干个整数,以-32767作为结束标志,分别统计正整数、负整数和的个数,结束标记不算在内。[输入形式]若干个整数。 [输出形式]正整数、负整数和的个数。
在C语言中,你可以使用循环结构如for或while,以及一个数组来跟踪每个类型的计数。这里是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int num, positive_count = 0, negative_count = 0;
int zero_count = 0;
while (scanf("%d", &num) == 1 && num != -32767) { // 读取整数直到遇到-32767
if (num > 0) {
positive_count++;
} else if (num < 0) {
negative_count++;
} else {
zero_count++;
}
}
printf("正整数个数: %d\n", positive_count);
printf("负整数个数: %d\n", negative_count);
printf("零的个数: %d\n", zero_count);
return 0;
}
```
这个程序首先初始化了三个计数器:positive_count(用于正整数)、negative_count(用于负整数)和zero_count(用于零)。然后在一个无限循环中,它读取用户输入的一个整数。如果数大于零,增加positive_count;小于零,增加negative_count;等于零,增加zero_count。当输入的数等于-32767时,跳出循环,并打印出每种类型的计数值。
设计一个c语言程序 要求输入20个有符号整数 统计正整数 负整数 零的个数
非常好的问题!以下是一个简单的 C 语言程序,可以实现您的要求:
```c
#include <stdio.h>
int main() {
int nums[20];
int positive_count = 0, negative_count = 0, zero_count = 0;
printf("请输入20个有符号整数:\n");
for (int i = 0; i < 20; i++) {
scanf("%d", &nums[i]);
if (nums[i] > 0) {
positive_count++;
} else if (nums[i] < 0) {
negative_count++;
} else {
zero_count++;
}
}
printf("正整数的个数为:%d\n", positive_count);
printf("负整数的个数为:%d\n", negative_count);
printf("零的个数为:%d\n", zero_count);
return 0;
}
```
这个程序会提示用户输入 20 个有符号整数,然后统计正整数、负整数和零的个数,并输出结果。希望这个程序能够满足您的需求!
阅读全文