函数tax_rate()不需要返回值, 改成void就行了.
#include
#define RATE1 17850
#define RATE2 23900
#define RATE3 29750
#define RATE4 14875
#define TAX1 RATE1*0.15
#define TAX2 RATE2*0.15
#define TAX3 RATE3*0.15
#define TAX4 RATE4*0.15
#define TAX5 0.28
void tax_rate(char ch1,double t); //这儿改成void, 不需要返回值
int main(void)
{
char ch;
double total;
while(1)
{
printf("---------------税金计算--------------------\n");
printf("a.单身\t\tb.户主\nc.已婚,共有\td.已婚,离异\n");
printf("e.结束程序\n");
scanf("%c",&ch);
if(ch=='e')
break;
if(ch>='a'&&ch<='d')
{
printf("请输入应收税收入金额:");
scanf("%lf",&total);
tax_rate(ch,total);
}
else
{
printf("没有这个选项请重新输入\n");
continue;
}
}
printf("bye!");
return 0;
}
void tax_rate(char ch1,double t) // 这儿改成void, 不需要返回值
{
double v;
while(t>0)
{
if(ch1=='a')
{v=TAX1+(t-RATE1)*TAX5;break;}
else if(ch1=='b')
{v=TAX2+(t-RATE2)*TAX5;break;}
else if(ch1=='c')
{v=TAX3+(t-RATE3)*TAX5;break;}
else if(ch1=='d')
{v=TAX4+(t-RATE4)*TAX5;break;}
else if(ch1=='e')
break;
else
break;
}
printf("应征税收入:%.2f\t应缴税金%.2f$\n",t,v);
}
你原来的代码没有返回值肯定是编不过去的. 我试了一下我的代码, 这是结果:
这有什么不对的吗, 你具体说一下哪儿不对, 我好帮你改啊
---------------税金计算--------------------
a.单身 b.户主
c.已婚,共有 d.已婚,离异
e.结束程序
a
请输入应收税收入金额:50000
应征税收入:50000.00 应缴税金11679.50$
---------------税金计算--------------------
a.单身 b.户主
c.已婚,共有 d.已婚,离异
e.结束程序
没有这个选项请重新输入
---------------税金计算--------------------
a.单身 b.户主
c.已婚,共有 d.已婚,离异
e.结束程序
e
bye!