题目是这样子的:某公司员工的工资计算方法如下:一周内工作时间不超过40小时,按正常工作时间计酬;超出40小时的工作时间部分,按正常工作时间报酬的1.5倍计酬。员工按进公司时间分为新职工和老职工,进公司不少于5年的员工为老职工,5年以下的为新职工。新职工的正常工资为30元/小时,老职工的正常工资为50元/小时。请按该计酬方式计算员工的工资。输入格式:输入在一行中给出2个正整数,分别为某员工入职年数和周工作时间,其间以空格分隔。输出格式:在一行输出该员工的周薪,精确到小数点后2位。输入样例1:5 40输出样例1:2000.00输入样例2:3 50输出样例2:1650.00我写的程序是这样子的:#include<stdio.h>int main(){ int a,b,i; double m; scanf("%d %d",&a,&b); if(a>=5) i=50; //判断每时的工资应是多少 else i=30; if(b<=40) m=i*40; //不同时长的计算方法 else m=(b-40)*1.5*i+40*i; printf("%.2f\n",m); return 0;}根据样例输入,输出是对的,但是提交后出现如下情况测试点1答案错误0/511测试点2答案正确5/511测试点3答案错误0/211测试点4答案正确3/311想知道哪里出了问题,望告知
1 回答
已采纳
guozhchun
TA贡献103条经验 获得超76个赞
if(b<=40) m=i*40; //不同时长的计算方法 else m=(b-40)*1.5*i+40*i;
这里应该是
if (b <= 40) m = i * b; else m = (b - 40) * 1.5 * i + 40 * i;
- 1 回答
- 0 关注
- 1600 浏览
添加回答
举报
0/150
提交
取消