Problem A: P1: 职工工资统计
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 425 Solved: 197
[Submit][Status][Web Board]
Description
定义了一个用于记录职工工资情况的结构体。
请编写程序,输入职工人数,以及这些职工的姓名、基本工资、奖金,输出每位职工的姓名、基本工资、奖金和收入总额,并输出平均收入。下面给出了程序的一部分,请将其余的部分补上。只提交begin和end之间的部分代码
#include <iostream>
#include <iomanip>
using namespace std;
struct WageList
{
char name[10]; //姓名
double baseWage; //基本工资
double bonus; //奖金
double total; //总额
};
int main( )
{
WageList wage[100];
//************* begin*****************
//************* end *****************
cout <<setiosflags(ios::fixed)<<setprecision(2);
for(i=0; i<n; i++)
{
cout<<wage[i].name<<" "<<wage[i].baseWage<<" "<<wage[i].bonus<<" "<<wage[i].total<<endl;
}
cout<<"average:"<<aver<<endl;
return 0;
}
Input
先输入一个整数n表示职工人数
接着输入n行表示n名职工的信息,分别是姓名、基本工资、奖金,数据用空格隔开
Output
先输出n行表示n名职工的信息,分别是姓名、基本工资、奖金和收入总额,数据用空格隔开
最后输出average:,后加n名职工的平均收入(保留2位小数)
Sample Input
3
Tom 3425.8 480.5
Jerry 4975.64 730.23
Jack 2240 520.35
Sample Output
Tom 3425.80 480.50 3906.30
Jerry 4975.64 730.23 5705.87
Jack 2240.00 520.35 2760.35
average:4124.17
Submit:
#include <iostream>
#include <iomanip>
using namespace std;
struct WageList
{
char name[10]; //姓名
double baseWage; //基本工资
double bonus; //奖金
double total; //总额
};
int main( )
{
WageList wage[100];
//************* begin*****************
int n,i;
cin>>n;
double aver,s=0;
for(i=0;i<n;i++)
{
cin>>wage[i].name>>wage[i].baseWage>>wage[i].bonus;
wage[i].total=wage[i].baseWage+wage[i].bonus;
s=s+wage[i].total;
}
aver=s/n;
//************* end *****************
cout <<setiosflags(ios::fixed)<<setprecision(2);
for(i=0; i<n; i++)
{
cout<<wage[i].name<<" "<<wage[i].baseWage<<" "<<wage[i].bonus<<" "<<wage[i].total<<endl;
}
cout<<"average:"<<aver<<endl;
return 0;
}