问题描述:
统计给定的n个数中,负数、零和正数的个数。
输入:
输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数值的个数,然后是n个实数;如果n=0,则表示输入结束,该行不做处理。
输出:
对于每组输入数据,输出一行a,b和c,分别表示给定的数据中负数、零和正数的个数。
样例输入:
6 0 1 2 3 -1 0
5 1 2 3 4 0.5
0
样例输出:
1 2 3
0 0 5
分析:
本题是考验对数正负的判断的方法。
代码:
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
int main()
{
int n = 0;
double num;
while (cin >> n)
{
int a = 0, b = 0, c = 0;
if (n == 0)//退出的条件
break;
while (n--)//循环输入多组数据
{
cin >> num;
if (num < 0.0)判断num是否为负数,0和正数,如果是,则相应的计数器加1
a++;
else if (num == 0.0)
b++;
else
c++;
}
cout << a << " " << b << " " << c << endl;输出结果
}
return 0;
}