7章8题

编写一个程序,要求输入一周的工作时间,然后打印工资总额、税金和净工资

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");
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值