用结构体存放下表中的数据,然后输出每人的姓名和实发工资(基本工资+浮动工资-支出) 工资表.png 输入格式: 在每一行输入姓名,基本工资,浮动工资及支出 输出格式: 每一行输出姓名及实发工资
时间: 2024-09-28 22:04:52 浏览: 53
为了帮助您完成这个任务,首先我们需要创建一个结构体来存储每个人的信息,包括姓名、基本工资、浮动工资和支出。然后,我们可以编写一个函数读取用户输入的数据,更新结构体,并计算实发工资。最后,再输出每个人的姓名和实发工资。
这里是一个简单的示例,假设我们使用 C 语言:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct {
char name[50];
int basic_salary;
int bonus_salary;
int deduction;
} Employee;
void input_data(Employee* employee) {
printf("请输入姓名、基本工资、浮动工资和支出(用空格隔开):");
scanf("%s %d %d %d", employee->name, &employee->basic_salary, &employee->bonus_salary, &employee->deduction);
}
double calculate_net_salary(Employee employee) {
return employee.basic_salary + employee.bonus_salary - employee.deduction;
}
void output_employee_info(Employee employee) {
double net_salary = calculate_net_salary(employee);
printf("%s 的实发工资是: %.2f\n", employee.name, net_salary);
}
int main() {
Employee employees[10]; // 假设最多有10人
int num_of_employees = 0;
while (scanf("%s %d %d %d", employees[num_of_employees].name, &employees[num_of_employees].basic_salary, &employees[num_of_employees].bonus_salary, &employees[num_of_employees].deduction) == 4) { // 输入人数限制
num_of_employees++;
}
for (int i = 0; i < num_of_employees; i++) {
input_data(&employees[i]);
output_employee_info(employees[i]);
}
return 0;
}
```
在这个程序中,用户会按提示输入员工信息,直到输入结束。然后,`output_employee_info` 函数将计算并打印出每个员工的实发工资。
阅读全文