7-10 计算工资

本文介绍了一种员工工资的计算方法,根据员工的工作年限和每周工作时间来确定工资标准。具体而言,新老员工的正常工资不同,且超过40小时的部分按1.5倍计算。

7-10 计算工资(15 分)
某公司员工的工资计算方法如下:一周内工作时间不超过40小时,按正常工作时间计酬;超出40小时的工作时间部分,按正常工作时间报酬的1.5倍计酬。员工按进公司时间分为新职工和老职工,进公司不少于5年的员工为老职工,5年以下的为新职工。新职工的正常工资为30元/小时,老职工的正常工资为50元/小时。请按该计酬方式计算员工的工资。
输入格式:

输入在一行中给出2个正整数,分别为某员工入职年数和周工作时间,其间以空格分隔。
输出格式:

在一行输出该员工的周薪,精确到小数点后2位。
输入样例1:

5 40
输出样例1:

2000.00
输入样例2:

3 50
输出样例2:

1650.00


题解:

year,time=map(int,input().split())
salary=0
if year>=5 and time>40:
    salary=40*50+(time-40)*50*1.5
elif year>=5 and time<=40:
    salary=time*50
elif year<5 and time>40:
    salary=40*30+(time-40)*30*1.5
else :
    salary=time*30
print("%.2f"%salary)
### 计算职工工资的方法 为了实现职工工资计算,可以创建一个函数专门用于处理这一逻辑。此函数会接收结构体变量作为参数,并根据给定的规则计算实发工资。 假设存在一个名为 `emploee` 的结构体,其中包含了职工的各种信息字段,如职工号、姓名、岗位工资、奖金、扣除项等,则可以通过以下方式定义并实现该功能: ```c #include <stdio.h> #include <string.h> // 定义员工结构体 struct emploee { char no[10]; // 职工编号 char name[20]; // 名字 int salary; // 基本工资 float bonus; // 奖金 float deduction; // 扣款 }; float calculateNetSalary(struct emploee e) { // 净收入等于基本工资加上奖金减去扣款 return e.salary + e.bonus - e.deduction; } ``` 当需要展示某位特定职工的具体薪资详情时,在查询到对应的数据后调用上述方法即可得到最终的结果[^1]。 对于整个系统的集成来说,可以在原有的基础上增加打印每位职工具体薪酬情况的部分,即在遍历文件中的每条记录的同时输出其净收入值: ```c printf("记录号 职工号 姓名 性别 工资 实发金额\n"); for (int i = 0; fread(&emp[i], sizeof(struct emploee), 1, fp) != 0; ++i){ printf("%6d %6s %-9s %-4s %5d %8.2f %.2f\n", i + 1, emp[i].no, emp[i].name, emp[i].sex, emp[i].age, emp[i].salary, calculateNetSalary(emp[i])); } ``` 通过这种方式仅能够完成对单个职工工资数额的求解工作,同时也使得整体程序更加模块化易于维护发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值