1206: 职工信息2
金币值:2
定数:5
时间限制:1.000 s
内存限制:128 M
正确:2
提交:2
正确率:100.00% 命题人:
题目描述
定义一个职工工资的结构体,其成员包括职工号、姓名、基本工资、实发工资、奖金、保险、扣税。实现输入n个职工工资信息、修改职工工资(基本工资低于1000职工的基本工资增加200)、计算实发工资(实发工资=基本工资+奖金-保险-扣税)、按实发工资降序排序、删除指定职工、输出n个职工的工资信息等功能。
已定义一个关于职工工资的结构体,其成员包括职工号、姓名、基本工资、奖金、保险、扣税,结构体定义如下:
struct employee
{
int ID;
char name[20];
double basic_salary,bonus,insurance,tax;
double real_salary;
};
输入表示职工人数的正整数n,分别使用函数实现输入n个职工工资信息、修改职工工资(基本工资低于1000职工的基本工资增加200)、计算实发工资(实发工资=基本工资+奖金-保险-扣税)、按实发工资降序排序、删除指定职工、输出n个职工的工资信息。
Input(struct employee employee_salary[],int n)//输入n个职工信息
Update(struct employee employee_salary[],int n)//修改职工工资
Computer(struct employee employee_salary[],int n)//计算实发工资
Sort(struct employee employee_salary[],int n)//实发工资降序排序
Delete(struct employee employee_salary[],int n, int id)//删除职工工号为id的职工信息
Output(struct employee employee_salary[],int n)//输出n个职工的工资信息
int main(void)
{
int n;
struct employee employee_salary[10];
scanf("%d",&n);
Input(employee_salary, n);
Update(employee_salary, n);
Computer(employee_salary, n);
Output(employee_salary, n);
Delete(employee_salary,n, 201802);
n=n-1;
Output(employee_salary, n);
Sort(employee_salary, n);
Output(employee_salary, n);
return 0;
}
已定义一个关于职工工资的结构体,其成员包括职工号、姓名、基本工资、奖金、保险、扣税,结构体定义如下:
struct employee
{
int ID;
char name[20];
double basic_salary,bonus,insurance,tax;
double real_salary;
};
输入表示职工人数的正整数n,分别使用函数实现输入n个职工工资信息、修改职工工资(基本工资低于1000职工的基本工资增加200)、计算实发工资(实发工资=基本工资+奖金-保险-扣税)、按实发工资降序排序、删除指定职工、输出n个职工的工资信息。
Input(struct employee employee_salary[],int n)//输入n个职工信息
Update(struct employee employee_salary[],int n)//修改职工工资
Computer(struct employee employee_salary[],int n)//计算实发工资
Sort(struct employee employee_salary[],int n)//实发工资降序排序
Delete(struct employee employee_salary[],int n, int id)//删除职工工号为id的职工信息
Output(struct employee employee_salary[],int n)//输出n个职工的工资信息
int main(void)
{
int n;
struct employee employee_salary[10];
scanf("%d",&n);
Input(employee_salary, n);
Update(employee_salary, n);
Computer(employee_salary, n);
Output(employee_salary, n);
Delete(employee_salary,n, 201802);
n=n-1;
Output(employee_salary, n);
Sort(employee_salary, n);
Output(employee_salary, n);
return 0;
}
输入格式
第一行输入职工人数 3
第二、三、四行输入3名职工的工号、姓名、基本工资、奖金、保险、扣税
输出
前三行输出修改职工工资并计算实发工资后职工的工资信息信息,包括工号、姓名、基本工资、奖金、保险、扣税、实发工资。
空一行
接着输出删除职工后剩下职工的工资信息,包括工号、姓名、基本工资、奖金、保险、扣税、实发工资。
空一行
接着输出按实发工资降序排序后职工工资信息,包括工号、姓名、基本工资、奖金、保险、扣税、实发工资。
第二、三、四行输入3名职工的工号、姓名、基本工资、奖金、保险、扣税
输出
前三行输出修改职工工资并计算实发工资后职工的工资信息信息,包括工号、姓名、基本工资、奖金、保险、扣税、实发工资。
空一行
接着输出删除职工后剩下职工的工资信息,包括工号、姓名、基本工资、奖金、保险、扣税、实发工资。
空一行
接着输出按实发工资降序排序后职工工资信息,包括工号、姓名、基本工资、奖金、保险、扣税、实发工资。
输入样例 复制
3
201801 zhangsan 800 500 10 10
201802 wangwu 1000 800 20 20
201803 zhaolei 2000 1000 35 30
输出样例 复制
201801 zhangsan 1000.0 500.0 10.0 10.0 1480.0
201802 wangwu 1000.0 800.0 20.0 20.0 1760.0
201803 zhaolei 2000.0 1000.0 35.0 30.0 2935.0
201801 zhangsan 1000.0 500.0 10.0 10.0 1480.0
201803 zhaolei 2000.0 1000.0 35.0 30.0 2935.0
201803 zhaolei 2000.0 1000.0 35.0 30.0 2935.0
201801 zhangsan 1000.0 500.0 10.0 10.0 1480.0