7-10 计算工资

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

输入格式

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

输出格式

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

输入样例1

5 40

输出样例1

2000.00

输入样例2

3 50

输出样例2

1650.00

分析及答案

**首先,这家公司的新员工一个月税前收入才4800,老员工才8000,真的很坑。**回到题目本身,主要分为两步:

  1. 根据输入工龄,判断是不是新员工,进而决定一般时薪和加班时薪的值
  2. 根据工作时间计算工资。如果工作时间小于40小时,直接乘一般时薪即可,如果大于40小时,超出的部分就要乘加班时薪了。

输出的时候注意题目要求保留到小数点后2位。

#include <stdio.h>
int main(){
    int year = 0, workhr = 0, ot = 0;
    double pay = 50, otPay = 75, salary;
    scanf("%d %d",&year,&workhr);
    if (year<5){
        pay = 30;
        otPay = 45;
    }
    if (workhr < 40)
        salary = pay * workhr;
    else
        salary = pay * 40 + otPay * (workhr - 40);
    printf("%.2lf", salary);
    return 0;
}

7-10 测试点