//最多输入10个数字到double数组,程序遇到非数字类型结束。计算平均值与不平均值大的个数
#include<iostream>
const int ArSize = 10;
int main()
{
double charr1[ArSize],num =0,average;
int i =0,a=0;
using namespace std;
/* int n;
cin >>n;
如果输入一个单词而不是一个数字,会出现4种情况:
1 n的值保持不变
2 不匹配的输入将被留在输入队列中
3 cin对象中的一个错误标记被设置
4 对cin方法调用将返回false(如果被转换为bool类型)*/
cout <<"Please enter donation value :\n";
while(i<10 && cin>>charr1[i]) //设置输入数的范围
{
i++;
};
for(int j=0;j<i;j++)
{
num =num+charr1[j]; //输入数的和
};
average=num/((i)*1.0);
for(int k=0;k<i;k++)
{
if(charr1[k]>average)
a++;
};
//cout <<"i = "<<i<<endl; 检错
//cout <<"charr1[1] ="<<charr1[1]<<endl; 检错
//cout <<"num = "<<num<<endl; 检错
cout <<"average = "<<average<<"."<<endl;
cout <<a<<" numbers is greater than the average."<<endl;
return 0;
}
#include<iostream>
const int ArSize = 10;
int main()
{
double charr1[ArSize],num =0,average;
int i =0,a=0;
using namespace std;
/* int n;
cin >>n;
如果输入一个单词而不是一个数字,会出现4种情况:
1 n的值保持不变
2 不匹配的输入将被留在输入队列中
3 cin对象中的一个错误标记被设置
4 对cin方法调用将返回false(如果被转换为bool类型)*/
cout <<"Please enter donation value :\n";
while(i<10 && cin>>charr1[i]) //设置输入数的范围
{
i++;
};
for(int j=0;j<i;j++)
{
num =num+charr1[j]; //输入数的和
};
average=num/((i)*1.0);
for(int k=0;k<i;k++)
{
if(charr1[k]>average)
a++;
};
//cout <<"i = "<<i<<endl; 检错
//cout <<"charr1[1] ="<<charr1[1]<<endl; 检错
//cout <<"num = "<<num<<endl; 检错
cout <<"average = "<<average<<"."<<endl;
cout <<a<<" numbers is greater than the average."<<endl;
return 0;
}