编写C语言程序,输入n个整数存入一维数组,统计输出其中的正数、负数和零的个数。
时间: 2023-09-24 09:10:29 浏览: 288
### 回答1:
以下是实现要求的C语言程序:
```c
#include <stdio.h>
int main() {
int n, i, num, positive = 0, negative = 0, zero = 0;
printf("请输入整数的个数:");
scanf("%d", &n);
int nums[n];
for (i = 0; i < n; i++) {
printf("请输入第%d个整数:", i + 1);
scanf("%d", &num);
nums[i] = num;
if (num > 0) {
positive++;
} else if (num < 0) {
negative++;
} else {
zero++;
}
}
printf("正数个数:%d, 负数个数:%d, 零的个数:%d", positive, negative, zero);
return 0;
}
```
程序的执行过程如下:
1. 提示用户输入整数的个数;
2. 根据用户输入的个数动态分配一维数组的空间;
3. 在for循环中,依次读取用户输入的整数,并统计正数、负数和零的个数;
4. 输出正数、负数和零的个数。
需要注意的是,在本程序中,为了方便处理,我们使用动态分配数组的方式来存储用户输入的整数。这种方式需要在程序运行时动态分配内存,因此需要注意内存泄漏等问题。
### 回答2:
下面是一个编写用C语言统计输入整数数组中正数、负数和零个数的示例程序:
```c
#include <stdio.h>
int main()
{
int n, i;
int positiveCount = 0, negativeCount = 0, zeroCount = 0;
printf("请输入整数个数:");
scanf("%d", &n);
int numbers[n];
printf("请输入整数:\n");
for(i = 0; i < n; i++)
{
scanf("%d", &numbers[i]);
if(numbers[i] > 0)
{
positiveCount++;
}
else if(numbers[i] < 0)
{
negativeCount++;
}
else
{
zeroCount++;
}
}
printf("正数个数:%d\n", positiveCount);
printf("负数个数:%d\n", negativeCount);
printf("零的个数:%d\n", zeroCount);
return 0;
}
```
该程序首先要求用户输入整数的个数n,然后声明一个具有n个元素的数组numbers来存储这些整数。接下来,程序通过for循环依次读取用户输入的整数,并根据其值来增加相应的计数器。最后,程序打印出正数、负数和零的个数。
希望这个示例程序能解答您的问题,如有其他疑问,请随时提问。
### 回答3:
编写C语言程序,实现输入n个整数并统计其中的正数、负数和零的个数,具体步骤如下:
1. 首先声明一个整型数组,长度为n,用来存储输入的n个整数。
2. 使用for循环,循环n次,每次读取一个整数并将其存储到数组中。
3. 声明三个整型变量,分别用来记录正数、负数和零的个数,并初始化为0。
4. 使用for循环遍历数组,对于每个元素进行判断,如果大于0,则正数个数加1;如果小于0,则负数个数加1;如果等于0,则零的个数加1。
5. 输出正数、负数和零的个数。
6. 程序结束。
下面是代码实现的示例:
```c
#include <stdio.h>
int main() {
int n; // 输入的个数
printf("请输入整数的个数: ");
scanf("%d", &n);
int arr[n]; // 申明长度为n的整型数组
// 输入n个整数
printf("请输入%d个整数: ", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
int positiveCount = 0; // 正数个数
int negativeCount = 0; // 负数个数
int zeroCount = 0; // 零的个数
// 统计正数、负数和零的个数
for (int i = 0; i < n; i++) {
if (arr[i] > 0) {
positiveCount++;
} else if (arr[i] < 0) {
negativeCount++;
} else {
zeroCount++;
}
}
// 输出结果
printf("正数个数: %d\n", positiveCount);
printf("负数个数: %d\n", negativeCount);
printf("零的个数: %d\n", zeroCount);
return 0;
}
```
以上代码即可实现输入n个整数,并统计其中的正数、负数和零的个数。注意,由于C语言中数组的长度必须在编译时确定,所以需要先接收n的输入,并将其作为数组的大小。
阅读全文
相关推荐















