C语言有n个员工,如果职称是“工程师”,则工资涨100,然后输出全部员工编号、职称、工资信息。
时间: 2024-02-17 16:02:08 浏览: 24
这道题目的思路和之前的回答类似,只需要在输入员工信息的时候判断职称是否为“工程师”,如果是则将工资加上100。以下是示例代码:
```c
#include <stdio.h>
#include <string.h>
struct Employee {
int id;
char title[20];
float salary;
};
int main() {
int n;
printf("请输入员工人数:");
scanf("%d", &n);
struct Employee employees[n];
for (int i = 0; i < n; i++) {
printf("请输入第%d个员工的编号、职称、工资:", i + 1);
scanf("%d %s %f", &employees[i].id, employees[i].title, &employees[i].salary);
if (strcmp(employees[i].title, "工程师") == 0) {
employees[i].salary += 100;
}
}
printf("员工编号\t职称\t工资\n");
for (int i = 0; i < n; i++) {
printf("%d\t\t%s\t%.2f\n", employees[i].id, employees[i].title, employees[i].salary);
}
return 0;
}
```
在上面的代码中,我们首先定义了一个结构体 `Employee`,包含员工的编号、职称、工资等信息。接着,我们通过 `scanf` 函数输入每个员工的信息,并判断职称是否为“工程师”,如果是则将工资加上100。最后,我们遍历结构体数组并输出每个员工的编号、职称、工资信息。