![](https://p-blog.csdn.net/images/p_blog_csdn_net/xl45591275/294542/o_Snap1.jpg)
计算个人所得税!!根据输入的信息计算个人所得税...可自定义税率!!本来是北大青鸟S2 的课后题..给增加了些容易,这才充实,也有个程序的样子..
using System;
namespace Example_2
{
/**
* 定义一个人的类,存放人的各种属性
*/
public class People //人的属性
{
public string name;
public double geRenCaiCan,xiaoShouE,shouRu; //个人财产,销售额,收入
public double geRenCaiCanTax,xiaoShouETax,shouRuTax,Tax; //个人财产税率,销售额税率,收入税率,总税额
public People ()
{
geRenCaiCan = 0; //初始化个人财产
xiaoShouE = 0; //初始化销售额
shouRu = 0; //初始化收入
}
}
/**
* 定义一个税率的类,获取税率
*/
public class Tax //税率的属性
{
public double tax1,tax2;
public Tax()
{
tax1 = 2; //初始化税率1
tax2 = 3; //初始化税率2
}
}
/*定义类,输出信息
* */
public class Print
{
public void print(People p,Tax t)
{
Console.WriteLine("亲爱的 "+p.name+" 您好,/n");
Console.WriteLine("您的个人财产为: "+p.geRenCaiCan+",应缴税: "+p.geRenCaiCanTax);
Console.WriteLine("您的个销售额为: "+p.xiaoShouE+",应缴税: "+p.xiaoShouETax);
Console.WriteLine("您的工资为: "+p.shouRu+",应缴税: "+p.shouRuTax);
Console.WriteLine("您共需缴纳税额为: "+p.Tax);
}
}
/**定义类,获取用户输入给人和税率赋值
*/
public class Read
{
public void Read1 (People p)
{
Console.WriteLine("请输入人物姓名: ");
p.name = Console.ReadLine();
Console.WriteLine("请输入此人个人财产,无个人财产输入 '0'");
p.geRenCaiCan =double.Parse(Console.ReadLine());
Console.WriteLine("请输入此人销售额,无销售额输入 '0'");
p.xiaoShouE = double.Parse(Console.ReadLine());
Console.WriteLine("请输入此人收入,不能为 '0'");
p.shouRu = double.Parse(Console.ReadLine());
}
public void Read2 (Tax t)
{
Console.WriteLine("是否自定义税率?");
string yesno = Console.ReadLine();
if (yesno == "y" | yesno =="Y")
{
Console.WriteLine("请输入税率1");
t.tax1 = double.Parse(Console.ReadLine());
Console.WriteLine("请输入税率2");
t.tax2 = double.Parse(Console.ReadLine());
}
else
{
return;
}
}
}
/**
* 定义类,用以计算税率
*/
public class ComputeTax //计算税率
{
public void Compute (People p,Tax t) //传递人和税率
{
Console.WriteLine("正在计算税率请稍后.......");
p.geRenCaiCanTax = p.geRenCaiCan * t.tax1/100; //获得个人财产税额
p.xiaoShouETax = p.xiaoShouE * t.tax2/100; //获得销售额税额
p.shouRuTax = p.shouRu * 0.15; //获得收入税额
/**
* 更加初始值判断税额计算
*/
if(p.geRenCaiCan != 0 && p.xiaoShouE != 0) //有房,有公司的
{
p.Tax = p.geRenCaiCanTax + p.shouRuTax + p.xiaoShouETax;
}
else if (p.geRenCaiCanTax != 0 && p.xiaoShouETax == 0) //有房没公司的
{
p.Tax = p.geRenCaiCanTax + p.shouRuTax;
}
else if(p.geRenCaiCanTax == 0 && p.xiaoShouETax != 0) //有公司没房的
{
p.Tax = p.xiaoShouETax + p.shouRuTax;
}
else //没房没车的
{
p.Tax = p.shouRuTax;
}
}
}
/*main函数*/
public class TaxMain
{
[STAThread]
static void Main(string[] args)
{
People p = new People();
Tax t = new Tax();
Read r = new Read();
r.Read1(p);
r.Read2(t);
ComputeTax ct = new ComputeTax();
ct.Compute(p,t);
Print pr = new Print();
pr.print(p,t);
}
}
}