CC++编程学习-第3周⑦数值统计
题⽬描述
统计给定的n个数中,负数、零和正数的个数。
Input
输⼊数据有多组,每组占⼀⾏,每⾏的第⼀个数是整数 n(n < 100),表⽰需要统计的数值的个数,然后是 n 个实数;如果 n = 0,则表⽰输⼊结束,该⾏不做处理。
Output
对于每组输⼊数据,输出⼀⾏ a, b 和 c,分别表⽰给定的数据中负数、零和正数的个数。
Sample Input
60123-10
512340.5
Sample Output
123
005
思路
题意就是输⼊ n 个数,看有多少个数为正,多少个数为负,多少个数为零。如果 n = 0,则输⼊结束。可以写成while(~scanf("%d", &n) && n),也可以在循环中加上if(n == 0) break;
C语⾔代码:
#include<stdio.h>
int main()
{
int a;
while(~scanf("%d",&a)&& a)
{
int zheng =0, fu =0, ling =0;
for(int i =0;i < a; i++)
{
double x;
scanf("%lf",&x);
if(x <0) fu ++;
if(x ==0) ling ++;
if(x >0) zheng ++;
}
printf("%d %d %d\n", fu, ling, zheng);
}
return0;
}
C++代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
int n;
double num;
while(cin >> n)
{
if(n ==0)break;
int a =0, b =0, c =0;
while(n--)
{
cin >> num;
if(num >0) a++;
else if(num ==0) b++;
else if(num <0) c++;
}
cout << c <<" "<< b <<" "<< a << endl;
}
return0;
}c语言如何去学
没有C语⾔基础的同学们,可以先学习⼀下C语⾔语法,我会整理好,后⾯发出来我已经写好了,可以去看。
本周其他练习: