调试程序:设有一个表格,包含10位教师的基本工资和绩效工资,定义一个二维数组,存储教师相关信息,编写程序输出每一位教师的工资总额C语言完整代码
时间: 2024-09-20 16:06:43 浏览: 63
在C语言中,你可以使用二维数组来存储每位教师的工资信息,然后遍历数组计算每个教师的工资总额。下面是一个简单的示例代码:
```c
#include <stdio.h>
#define NUM_TEACHERS 10 // 定义教师人数
#define BASIC_PAY 5000 // 基本工资假设值
#define PERFORMANCE_PAY 1000 * NUM_TEACHERS // 每个教师的最高绩效工资
typedef struct {
char name[20]; // 教师姓名
int id; // 教师编号
} Teacher;
// 存储工资信息的二维数组
Teacher teachers[NUM_TEACHERS][2] = {
{"张三", 1},
{"李四", 2},
{"王五", 3},
{"赵六", 4},
{"孙七", 5},
{"周八", 6},
{"吴九", 7},
{"郑十", 8},
{"冯十一", 9},
{"陈十二", 10}
};
void calculate_salary(Teacher teacher[], int teacher_id) {
int basic_salary = BASIC_PAY;
int performance_salary = teacher[teacher_id].id * PERFORMANCE_PAY; // 根据ID计算绩效工资
int total_salary = basic_salary + performance_salary;
printf("教师 %s 的工资总额: %d 元\n", teacher[teacher_id].name, total_salary);
}
int main() {
for (int i = 0; i < NUM_TEACHERS; i++) {
calculate_salary(teachers, i); // 遍历数组并输出每位教师的工资总额
}
return 0;
}
```
在这个代码里,`calculate_salary`函数负责计算每位教师的工资总额,并通过`main`函数调用它来打印结果。请注意,这里的绩效工资计算方式是基于简单示例,实际应用中可能会有不同的绩效考核规则。
阅读全文