概述
1998年的美国联邦税收计划是近代最简单的税收方案。它分为四个类别,每个类别有两个等级。下面是该税收计划的摘要(美元数为应收税的收入);
类别 | 税金 |
单身 | 17850美元按15%计,超出部分按照28%计算 |
户主 | 23900美元按15%计,超出部分按照28%计算 |
已婚、共有 | 29750美元按15%计,超出部分按照28%计算 |
已婚、离异 | 14875美元按15%计,超出部分按照28%计算 |
例如,一位工资为20000美元的单身纳税人,应缴纳税费0.15*7850+0.28*(20000-17850)美元。编写一个程序,让用户置顶缴纳税金的种类和应纳税收入,然后计算税金。程序应通过循环让用户可以多次输入。
编程分析:
程序的功能是读取用户输入,并按照指定公式计算税金。用户首先应当选择类别,随后输入应纳税收入。程序使用switch语句可以更加清晰的表示多个类别的判断条件。完整代码如下:
#include<stdio.h>
#define SINGLE 17850
#define HOLDER 23900
#define MARRY 29750
#define DIVORCE 14875
#define EXTRA_TAX 0.28
#define BASE_TAX 0.15
int main(void)
{
char type;
float salary;
float tax,salary_taxed;
do{
printf("Please select tax type. There are for type:n");
printf("1)Single 2)House holder 3)Married 4)Divorced 5)Quit:nn");
scanf("%c",&type);
//选择纳税类型,switch语句对不同类型分别计算
switch(type)
{
case '1'://single 类型
printf("Enter your salary:n");
scanf("%f",&salary);
if(salary<=SINGLE)
{
tax=salary*BASE_TAX;
salary_taxed=salary-tax;
}
else
{
tax=salary*BASE_TAX+(salary-SINGLE)*EXTRA_TAX;
salary_taxed=salary-tax;
}
printf("Hi.your salary is %.2f ,tax is %.2f after tax salary is %.2fnn",salary,tax,salary_taxed);
break;
case '2'://house holder 类型
printf("Enter your salary :n");
scanf("%f",&salary);
if(salary<=HOLDER)
{
tax=salary*BASE_TAX;
salary_taxed=salary-tax;
}
else
{
tax=salary*BASE_TAX+(salary-HOLDER)*EXTRA_TAX;
salary_taxed=salary-tax;
}
printf("Hi.your salary is %.2f ,tax is %.2f after tax salary is %.2fnn",salary,tax,salary_taxed);
break;
case '3'://Married 类型
printf("Enter your salary :n");
scanf("%f",&salary);
if(salary<=MARRY)
{
tax=salary*BASE_TAX;
salary_taxed=salary-tax;
}
else
{
tax=salary*BASE_TAX+(salary-MARRY)*EXTRA_TAX;
salary_taxed=salary-tax;
}
printf("Hi.your salary is %.2f ,tax is %.2f after tax salary is %.2fnn",salary,tax,salary_taxed);
break;
case '4'://Divorced 类型
printf("Enter your salary :n");
scanf("%f",&salary);
if(salary<=DIVORCE)
{
tax=salary*BASE_TAX;
salary_taxed=salary-tax;
}
else
{
tax=salary*BASE_TAX+(salary-DIVORCE)*EXTRA_TAX;
salary_taxed=salary-tax;
}
printf("Hi.your salary is %.2f ,tax is %.2f after tax salary is %.2fnn",salary,tax,salary_taxed);
break;
case '5':
break;
default:
printf("Wrong type .Please retry.n");
}
}while(type!='5');
printf("Donen");
return 0;
}
代码还有可改进的地方,希望大家指出
最后
以上就是腼腆芒果为你收集整理的【C语言经典100题】利息计算的全部内容,希望文章能够帮你解决【C语言经典100题】利息计算所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复