问题描述:编写一个程序,要求用户输入最多10个高尔夫成绩,并将其存储在一个数组里。程序允许用户提早结束输入,并在一行上显示所有成绩,然后报告平均成绩。请使用3个数组处理函数来分别进行输入,显示和计算平均成绩。
解决思路:1.建立一个空间为11的double类型数组,接着建立3个函数,分别对应输入,显示和计算
2.输入函数中建立循环进行输入数据,遇到回车停止输入
3.显示函数里用循环体显示所有成绩
4.计算函数里用循环体加和所有数据之后除以总数得到平均值
5.主函数中调用3个函数。
代码:
#include <iostream>
using namespace std;
double n[11];
int i = 0;
double x;
void f1(int o)//输入
{
cout << "请输入高尔夫成绩(最多10人):"<<endl;
while ((cin.peek() != EOF) && (cin.peek() != '\n'))
{
cin >> n[i];
i++;
}
}
void f3(int o)//计算
{
for (int t = 0; t < i;t++)
{
x += n[t];
}
x = x /(double) i;
}
void f2(int o)//显示
{
for (int t = 0; t < i; t++)
{
cout << n[t] << " ";
}
cout << x<<endl;
}
int main()
{
f1(1);
f3(1);
f2(1);
return 0;
}