#include <iostream>
using namespace std;
int main()
{
int a,b;
float c;
int n;
for(a=0,b=0;;a++,b+=n,c=1.0*b/a)
{
cin>>n;
if(n==0)break;
}
cout<<"平均數="<<c<<endl;
return 0;
}
這個要怎樣改才可以使輸出的結果是“大于平均數的個數”呢
uj5u.com熱心網友回復:
用一個容器把輸入的值都保存起來,計算出平均值之后,在比較一下
uj5u.com熱心網友回復:
或者用陣列保存輸入的數uj5u.com熱心網友回復:
不是很明白,可以幫我改一下嗎uj5u.com熱心網友回復:
陣列版的供參考
#include <iostream>
using namespace std;
const int N = 1024;
int main()
{
int arr[N];
int i, a=0, b=0, count = 0;
float c;
for (i=0; i<N; i++)
{
cin >> arr[i];
b += arr[i];
if (arr[i] == 0)
{
a = i;
break;
}
}
c = b * 1.0 / a;
for (i=0; i<a; i++)
{
if (arr[i] > c)
count++;
}
cout<<"平均數="<< c <<endl;
cout << "大于平均數的個數:" << count << endl;
return 0;
}
uj5u.com熱心網友回復:
建議使用vector
#include<iostream>
#include<vector>
#include<numberic>
using namespace std;
int main()
{
vector<int> a;
int n;
while(cin>>n)
a.push_back(n);
float count;
count=accumulate(a.cbegin(),a.cend(),0.0)*1.0/a.size();
int num;
for(const auto& p:a)
if(p>count)
++num;
cout<<"平均數:"<<count<<endl;
cout<<"大于平均數的個數:"<<num<<endl;
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/37797.html
標籤:C++ 語言
上一篇:小白急求mfc問題
