#include <stdio.h>
// 定义工资标准常量
double BASIC_WAGE;// 月基本工资标准
int FULL_TIME_DAYS ; // 全勤天数标准
double BASIC_PERFORMANCE_WAGE;// 月绩效工资标准
double BASIC_LIVINGALLOWANCE_WAGE ; // 月生活津贴标准
double A, B, C, D;//各岗位工资的第一级标准
double BASIC_PIECE_WAGE; //计件工资标准
// 定义工资结构
typedef struct {
//工资组成部分
double basicWage; // 基本工资
double positionWage; // 岗位工资
double positiongradeWage; // 岗位级别工资
double performanceWage; // 绩效工资
double livingAllowance; // 生活津贴
double overtimeWage; // 加班工资
double pieceWage; // 计件工资
double sum;//总工资
double award;//优秀员工奖励
//员工具体情况部分
int chuqin;//出勤天数
int position; //岗位
int positionGrade; // 岗位等级
int performance;//绩效考核分数
int overtime;//加班天数
int pieceNumber;//计件数
} Salary;
// 函数声明
void inputbasicInfo(Salary* salary);
void inputSalaryInfo(Salary* salary);
void calculateSalary(Salary* salary);
void printfSalary(Salary* salary);
int main() {
Salary salary;
inputbasicInfo(&salary);//录入标准
inputSalaryInfo(&salary);//输入信息
calculateSalary(&salary);//计算工资
printfSalary(&salary);//输出工资表
return 0;
}
// 输入工资标准信息
void inputbasicInfo(Salary* salary){
printf("-------------------------------------------------------------\n");
printf("请录入各项工资标准(单位:元,由财务人员录入)\n");
printf("请录入月基本工资标准:");
scanf_s("%lf", &BASIC_WAGE);
printf("请录入全勤天数标准:");
scanf_s("%d",&FULL_TIME_DAYS);
printf("请录入月绩效工资标准:");
scanf_s("%lf", &BASIC_PERFORMANCE_WAGE);
printf("请录入月生活津贴标准:");
scanf_s("%lf", &BASIC_LIVINGALLOWANCE_WAGE);
printf("请录入厂长及以上岗位工资的第一级标准:");
scanf_s("%lf", &A);
printf("请录入部门主管、及以上岗位工资的第一级标准:");
scanf_s("%lf", &B);
printf("请录入车间主任、工段长、班组长岗位工资的第一级标准:");
scanf_s("%lf", &C);
printf("请录入普通员工岗位工资的第一级标准:");
scanf_s("%lf", &D);
printf("请录入计件工资标准:");
scanf_s("%lf", &BASIC_PIECE_WAGE);
}
// 输入员工信息
void inputSalaryInfo(Salary* salary) {
printf("-------------------------------------------------------------\n");
printf("请输入员工表现信息(由行政人员录入)\n");
printf("请输入出勤天数:");
scanf_s("%d", &salary->chuqin);
printf("请输入岗位:1(厂长及以上岗位),2(部门主管、及以上),3(车间主任、工段长、班组长),4(普通员工):");
scanf_s("%d", &salary->position);
printf("请输入绩效考核分数(0~100):");
scanf_s("%d", &salary->performance);
printf("请输入加班天数:");
scanf_s("%d", &salary->overtime);
printf("请输入计件数:");
scanf_s("%d", &salary->pieceNumber);
printf("请输入岗位等级(1~10):");
scanf_s("%d", &salary->positionGrade);
printf("请输入已批准的优异员工奖励(若不是优异员工请输入0):");
scanf_s("%lf", &salary->award);
}
// 计算工资
void calculateSalary(Salary* salary) {
salary->basicWage = BASIC_WAGE;//基本工资
salary->positionWage = salary->basicWage/ FULL_TIME_DAYS* salary->chuqin; // 岗位工资
if (salary->performance >= 90) salary->performanceWage = BASIC_PERFORMANCE_WAGE;// 绩效工资
else salary->performanceWage = BASIC_PERFORMANCE_WAGE* salary->performance /100;
salary->livingAllowance = BASIC_LIVINGALLOWANCE_WAGE/ FULL_TIME_DAYS * salary->chuqin; // 生活津贴
salary->overtimeWage = salary->basicWage / FULL_TIME_DAYS* salary->overtime; //加班工资
salary->pieceWage = BASIC_PIECE_WAGE* salary->pieceNumber; // 计件工资
if (salary->position == 1)salary->positiongradeWage = A + 500 * (salary->positionGrade - 1);//岗位级别工资
else if (salary->position == 2)salary->positiongradeWage = B + 350 * (salary->positionGrade - 1);
else if (salary->position == 3)salary->positiongradeWage = C + 150 * (salary->positionGrade - 1);
else salary->positiongradeWage = D + 100 * (salary->positionGrade - 1);
salary->sum = salary->basicWage + salary->positionWage + salary->performanceWage +
salary->livingAllowance + salary->overtimeWage + salary->pieceWage+ salary->positiongradeWage+ salary->award;//总工资
}
//打印工资表
void printfSalary(Salary* salary) {
printf("-------------------------------------------------------------\n");
printf("工资表如下:\n");
printf("\n");
printf("基本工资:%.2f元\n", salary->basicWage);
printf("岗位工资:%.2f元\n", salary->positionWage);
printf("绩效工资:%.2f元\n", salary->performanceWage);
printf("生活津贴:%.2f元\n", salary->livingAllowance);
printf("加班工资:%.2f元\n", salary->overtimeWage);
printf("计件工资:%.2f元\n", salary->pieceWage);
printf("岗位级别工资:%.2f元\n", salary->positiongradeWage);
printf("优异员工奖励:%.2f元\n", salary->award);
printf("总工资:%.2f元\n", salary->sum);
printf("\n");
printf("-------------------------------------------------------------\n");
}
【无标题】
最新推荐文章于 2024-09-12 19:02:20 发布