tax
#include <stdio.h>
#include <stdlib.h>
int count(int sal, int tax, float per);
int magic_num(int sum);
int main(int argc, char *argv[])
{
int sal = 0, tax = 0;
float per = 0.0;
printf("input para numer: %d\n", argc);
if(argc == 4)
{
sal = atoi(argv[1]);
tax = atoi(argv[2]);
per = atoi(argv[3]) / 100.0;
}
else
{
printf("please input sal, tax, per");
return 1;
}
printf("input sal=%d, tax=%d, per=%3f\n", sal, tax, per);
count(sal, tax, per);
return 0;
}
int count(int sal, int tax, float per)
{
int i = 0, sum = 0, j = 0;
float real_tax[13] = {0};
float tax_total[13] = {0};
int base = sal - 5000 - tax - sal * per;
if(base <= 0)
{
printf("dont need count salay");
return 0;
}
float history = 0.0;
for(i = 1; i < 13; i++)
{
tax_total[i] = magic_num(base * i);
real_tax[i] = tax_total[i] - history;
printf("第%d个月实际税额: %3f\n", i, real_tax[i]);
history = history + real_tax[i];
}
printf("all year: %3f\n", history);
return 0;
}
int magic_num(int sum)
{
if (sum <= 36000)
{
return sum * 0.03 - 0;
}
else if (36000 < sum && sum <= 144000)
{
return sum * 0.1 - 2520;
}
else if (144000 < sum && sum <= 300000)
{
return sum * 0.2 - 16920;
}
else if (300000 < sum && sum <= 420000)
{
return sum * 0.25 - 31920;
}
else if (420000 < sum && sum <= 660000)
{
return sum * 0.3 - 52920;
}
else if (660000 < sum && sum <= 960000)
{
return sum * 0.35 - 85920;
}
else if (960000 < sum)
{
return sum * 0.45 - 181920;
}
return 0;
}
posted on 2022-05-24 11:29 jueshiwuming 阅读(225) 评论(0) 收藏 举报
浙公网安备 33010602011771号