B. 职工信息 (结构体)
题目描述
编写程序,定义一个职工信息结构包括职工姓名、工作年限、工资总额。
定义一个存放职工信息的结构数组
程序实现初始化5名职工的信息,
并对工作年限大于等于30年的职工每人加100元工资,
分别输出工资变化之前和之后的所有职工的信息。
输入
输入5个员工的职工姓名、工作年限、工资总额,姓名的最大长度不超过20
输出
输出两部分,第一部分输出工资变化之前所有职工的信息,第二部分输出工资变化之后的所有职工的信息
输入样例1
zhang1 5 1000
zhang2 10 2000
zhang3 20 3000
zhang4 40 4000
zhang5 50 5000
输出样例1
原始工资
姓名 年限 工资
zhang1 5 1000
zhang2 10 2000
zhang3 20 3000
zhang4 40 4000
zhang5 50 5000
加薪后工资
姓名 年限 工资
zhang1 5 1000
zhang2 10 2000
zhang3 20 3000
zhang4 40 4100
zhang5 50 5100
该题比较简单,注意考察结构数组的使用,主要注意格式输出
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include <iomanip>
#include<cmath>
#include<cstring>
#include<cctype>
#include<queue>
#include<set>
using namespace std;
struct per
{
char name[25];
int year;
int wages;
};
void print(per& ev)
{
cout << ev.name << ' ' << ev.year << ' ' << ev.wages << endl;
}
int main()
{
per ev[5];
for (int i = 0; i < 5; i++)
{
cin >> ev[i].name >> ev[i].year >> ev[i].wages;
}
cout << "原始工资" << endl;
cout << "姓名 年限 工资" << endl;
for (int i = 0; i < 5; i++)
{
print(ev[i]);
}
for (int i = 0; i < 5; i++)
{
if (ev[i].year >= 30)
{
ev[i].wages += 100;
}
}
cout << "加薪后工资" << endl;
cout << "姓名 年限 工资" << endl;
for (int i = 0; i < 5; i++)
{
print(ev[i]);
}
return 0;
}