问题描述:股市强烈动荡,有涨有跌。现在有一组数据表示各公司的涨跌(涨为正,跌为负,不动为零),要求统计出平均涨幅和平均跌幅。
作者:何知令
发表时间:2017年2月15日
输入:一组数,其中有正数,也有负数,还有0。输入的个数不定,另外,不会出现只有正数或只有负数的情况。
输出:
第一行输出见涨的数目和遇跌的数目;
作者:何知令
发表时间:2017年2月15日
输入:一组数,其中有正数,也有负数,还有0。输入的个数不定,另外,不会出现只有正数或只有负数的情况。
输出:
第一行输出见涨的数目和遇跌的数目;
第二行输出平均涨幅(正数的平均数)和平均跌幅(负数的平均数,再取反),保留小数点后3位。
代码:
/*
问题描述:股市强烈动荡,有涨有跌。现在有一组数据表示各公司的涨跌(涨为正,跌为负,不动为零),要求统计出平均涨幅和平均跌幅。
作者:何知令
发表时间:2017年2月15日
输入:一组数,其中有正数,也有负数,还有0。输入的个数不定,另外,不会出现只有正数或只有负数的情况。
输出:
第一行输出见涨的数目和遇跌的数目;
第二行输出平均涨幅(正数的平均数)和平均跌幅(负数的平均数,再取反),保留小数点后3位。
*/
#include <stdio.h>
#include <stdlib.h>
int main()
{
float n;
float pos_sum=0,neg_sum=0;
int pos_num=0,neg_num=0;
float pos_aver,neg_aver;
while(scanf("%f",&n)!=EOF)
{
if(n>0)
{
pos_sum+=n;
pos_num++;
}
if(n<0)
{
neg_sum+=n;
neg_num++;
}
}
pos_aver=pos_sum/pos_num;
neg_aver=neg_sum/neg_num;
printf("%d %d\n%.3f %.3f",pos_num,neg_num,pos_aver,-neg_aver);
return 0;
}
程序运行结果展示;:
知识点总结:不确定数量的输入
学习心得:小错误导致时间的大消耗