/*
* Copyright (c) 2013, 烟台大学计算机学院
* All rights reserved.
* 作 者:王颖
* 完成日期:2013 年 11 月 20 日
* 版 本 号:v1.0
*
* 输入描述:输入正数,负数或零
* 问题描述:股市强烈动荡,有涨有跌。现在有一组数据表示各公司的涨跌
*(涨为正,跌为负,不动为零),要求统计出平均涨幅和平均跌幅。
* 程序输出:略
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
#include <cstdio>
#include <iomanip>
using namespace std;
int main()
{
int x=0,y=0; //涨的个数和跌的个数
double a,sum1=0,sum2=0; //用于涨跌值和用于求和的变量
while(cin>>a)
{
if(a>0)
{
sum1=sum1+a;
x++;
}
else if(a<0)
{
sum2=sum2+a;
y++;
}
}
cout<<x<<'\t'<<y<<endl;
cout<<setiosflags(ios::fixed)<<setprecision(3)<<(sum1/x)<<" "<<(sum2/y)<<endl;
return 0;
}
怎么说呢,这个题让我上了最多的火!并不是题难,而是因为一个小小的细节把我给卡住了,这是我们上课竞赛的题,因为与同学合作,自己更加的懊悔为什么找不到毛病。直到老师告诉我输入结束之后要按Ctrl+v。键结束输入,我才恍然大悟!经过这件事,我严重意识到自己平时学习中的缺点,今后我将更加注重细节!细节决定成败!