统计一个数组中正数和负数的个数

1.遍历数组,将正数重新放在一个数组中,负数放在另一个数组中

 1 #include <iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int a[5],i,j=0,k=0;
 6     int s1[5],s2[5];
 7     cout<<"Please enter 5 numbers"<<endl;
 8     for(i=0;i<5;i++)
 9         cin>>a[i];
10     for(i=0;i<5;i++)
11     { 
12         if(a[i]>0)
13         s1[j++]=a[i];     
14         else if(a[i]<0)
15          s2[k++]=a[i];
16     }
17     cout<<"The positive numbers are:"<<endl;
18     for(i=0;i<j;i++)
19     cout<<s1[i]<<" ";
20     cout<<endl;
21     cout<<"The negative numbers are:"<<endl;
22     for(i=0;i<k;i++)   
23     cout<<s2[i]<<" ";
24     cout<<endl;
25     system("pause");
26     return 0;
27 }

2.显示结果

转载于:https://www.cnblogs.com/dongyanxia1000/p/4905411.html

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,以下是回复: 可以按照以下步骤实现: 1. 在main函数定义一个整型数组,存放用户输入的10个整数。 2. 定义三个变量,分别用于统计正数负数和零的个数,初始值都为。 3. 声明一个指向整型数组的指针变量,指向刚才定义的数组。 4. 遍历数组,判断每个元素的正负性,根据判断结果更新对应的计数变量。 5. 输出统计的数值。 下面是示例代码: ```c #include <stdio.h> int main() { int nums[10]; // 定义整型数组 int positive = , negative = , zero = ; // 定义三个计数变量,初始值都为 int *p = nums; // 声明指向整型数组的指针变量,指向nums数组的首地址 printf("请输入10个整数:\n"); for (int i = ; i < 10; i++) { scanf("%d", p + i); // 通过指针变量输入数组元素 if (*(p + i) > ) { // 判断正数 positive++; } else if (*(p + i) < ) { // 判断负数 negative++; } else { // 判断零 zero++; } } printf("正数个数:%d\n负数个数:%d\n零的个数:%d\n", positive, negative, zero); // 输出统计结果 return ; } ``` 希望能对你有所帮助! ### 回答2: 在main函数,我们可以定义一个长度为10的整型数组来存放用户输入的10个整数。我们还需要定义三个变量来统计正数负数和零的个数。然后,定义指针变量指向此整型数组。 代码如下: ``` #include <stdio.h> int main() { int arr[10]; int positive_count = 0, negative_count = 0, zero_count = 0; int *p = arr; printf("请输入10个整数:\n"); for (int i = 0; i < 10; i++) { scanf("%d", p + i); if (*(p + i) > 0) { positive_count++; } else if (*(p + i) < 0) { negative_count++; } else { zero_count++; } } printf("正数个数:%d\n", positive_count); printf("负数个数:%d\n", negative_count); printf("零的个数:%d\n", zero_count); return 0; } ``` 在代码,我们使用指针变量p访问数组元素,以统计正数负数和零的个数。在输入数据时,我们使用p+i来访问第i个数组元素。 最后,我们输出统计的数值。运行程序,输入10个整数,程序将给出正数负数和零的个数。 ### 回答3: 在main函数定义一个整型数组,用来存放用户输入的10个整数。可以通过以下代码实现: ```c++ int num[10]; for(int i=0;i<10;i++){ cin>>num[i]; } ``` 接着,可以定义三个变量count1、count2、count3分别用来记录正数负数、零的个数。利用指针变量指向此整型数组,并统计数组正数负数以及零的个数。可以通过以下代码实现: ```c++ int *p=num; int count1=0, count2=0, count3=0; for(int i=0;i<10;i++){ if (*p>0){ count1++; }else if(*p<0){ count2++; }else{ count3++; } p++; } ``` 在统计过程,用指针p依次遍历整个数组,如果当前指向的元素大于0,则正数计数器count1加1;如果小于0,则负数计数器count2加1;如果等于0,则零计数器count3加1。每次遍历后,指针p应该指向数组下一个元素的地址。 最后,输出统计的数值即可。完整代码如下: ```c++ #include<iostream> using namespace std; int main(){ int num[10]; cout<<"请输入10个整数:"<<endl; for(int i=0;i<10;i++){ cin>>num[i]; } int *p=num; int count1=0, count2=0, count3=0; for(int i=0;i<10;i++){ if (*p>0){ count1++; }else if(*p<0){ count2++; }else{ count3++; } p++; } cout<<"正数个数为:"<<count1<<endl; cout<<"负数个数为:"<<count2<<endl; cout<<"零的个数为:"<<count3<<endl; return 0; } ``` 执行程序,输入如下数据: ``` 请输入10个整数: 1 2 3 4 5 -1 -2 -3 -4 0 ``` 程序输出: ``` 正数个数为:5 负数个数为:4 零的个数为:1 ``` 这说明在这10个数,有5个正数、4个负数和1个零。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值