编写一个程序,要求输入一周的工作时间,然后打印工资总额、税金和净工资
a、基本加班等级
b、加班(超过40小时)=1.5倍的时间
c、税率 前300美元为15%
下一个150美元为20%
余下的为25%
使程序提供一个选择工资等级的菜单。使用switch选择工资等级。程序运行的开头应该为
***************************************************************
1)$8.75/hr 2)$9.33/hr
3)$10.00/hr 3)$11.20/hr
5)退出
***************************************************************
如果选择1到4,那么程序应该请求用户输入工作小时数。程序应该循环运行,知道输入5.如果输入1到5之外的选项,那么程序英爱提醒用户合适的选项哟哪些,然后再循环。用#define为各种工资等级和税率定义常量
#include<stdio.h>
#define DHR1 8.75
#define DHR2 9.33
#define DHR3 10.00
#define DHR4 11.20
#define JBH 1.50
#define STR 0.15
#define MTR 0.2
#define LTR 0.25
void display()
{
printf("\t*********************************\n");
printf("\t1) $8.75/hr 2) $9.33/hr\n");
printf("\t3) $10.00/hr 4) $11.20/hr\n");
printf("\t5) 退出\n");
printf("\t*********************************\n");
}
void income(int DHR,int hour)
{
double tax;
double sum=0;
if(hour<=40)
sum=DHR*hour;
else
sum=DHR*40+(hour-40)*(DHR*JBH);
if(sum<=300)
tax=sum*STR;
else if(sum<=450)
tax=300*STR+(sum-300)*MTR;
else
tax=300*STR+150*MTR+(sum-450)*LTR;
printf("您的工资总额=$%.2f,税金=$%.2f,净工资=$%.2f\n",sum,tax,sum-tax);
}
void main()
{
int num=0,hour=0;
display();
printf("请选择工资等级\n");
scanf("%d",&num);
if(num>5)
{
printf("请输入1-5内的数字选项\n");
display();
scanf("%d",&num);
}
if(num==5)
goto part1;
printf("请输入您一周的工作时间\n");
scanf("%d",&hour);
while(1)
{
switch(num)
{
case 1: income(DHR1,hour);
break;
case 2: income(DHR2,hour);
break;
case 3: income(DHR3,hour);
break;
case 4: income(DHR4,hour);
break;
case 5: break;
}
printf("\n");
display();
printf("请选择工资等级\n");
scanf("%d",&num);
if(num==5)
break;
printf("请输入您一周的工作时间\n");
scanf("%d",&hour);
}
part1:printf("谢谢您的使用\n");
}