C语言设计企业员工全年销售额统计及奖金发放系统代码
时间: 2024-11-22 17:34:24 浏览: 4
c语言课程设计-企业奖金发放系统
在C语言中设计一个企业员工全年销售额统计及奖金发放系统是一个相对复杂的任务,因为涉及到数据结构、文件操作以及用户输入处理等多个方面。这里我会给出一个简化的示例,展示如何实现基本功能:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct {
char name[50];
float sales;
} Employee;
void inputEmployees(Employee employees[], int n) {
for (int i = 0; i < n; i++) {
printf("请输入员工 %d 的姓名和销售额:\n", i + 1);
scanf("%s%f", employees[i].name, &employees[i].sales);
}
}
float calculateBonus(Employee employees[], int n, float baseSalary, float bonusRate) {
float totalSales = 0;
for (int i = 0; i < n; i++) {
totalSales += employees[i].sales;
}
return totalSales * bonusRate / 100;
}
void displayResults(Employee employees[], int n) {
printf("\n员工信息:\n");
for (int i = 0; i < n; i++) {
printf("姓名: %s, 销售额: %.2f\n", employees[i].name, employees[i].sales);
}
float avgSales = totalSales / n;
printf("平均销售额: %.2f\n", avgSales);
float bonus = calculateBonus(employees, n, 5000, 10); // 假设基础工资为5000,奖金率为10%
printf("总奖金: %.2f元\n", bonus);
}
int main() {
int n;
printf("请输入员工人数:");
scanf("%d", &n);
Employee* employees = malloc(n * sizeof(Employee));
if (!employees) {
perror("内存分配失败");
return 1;
}
inputEmployees(employees, n);
displayResults(employees, n);
free(employees);
return 0;
}
```
这个示例中,我们首先定义了一个Employee结构体用于存储员工的信息。然后,`inputEmployees`函数用于获取每个员工的姓名和销售额,`calculateBonus`函数计算总的奖金金额,`displayResults`函数显示所有员工信息和平均销售额以及奖金总额。
注意,这只是一个基础版本,实际应用中可能需要添加错误检查、异常处理和更完善的用户界面。同时,为了持久化数据,你可能会选择将数据保存到文件或者数据库,而不是简单的命令行输入。
阅读全文