又近年关,收入几何?
挣工资要扣税,那打个零工如何计税?
劳务报酬的个人所得税计算方法如下
预扣预缴应纳税所得额 = 劳务报酬(少于4000元) - 800元
预扣预缴应纳税所得额 = 劳务报酬(超过4000元) * 80%
应纳税额 = 应纳税所得额 × 适用税率 - 速算扣除数
应纳税所得额(含税) 税率(%) 速算扣除数
不超过20,000元的部分 20 0
超过20,000元到50,000元的部分 30 2,000
超过50,000元的部分 40 7,000
写个代码,在vx6里使用WindML跑一下
/*
* 版权所有 公众号 VxWorks567
*/
/* 劳务所得, 个税预扣预缴 */
#include <stdio.h>
#include <ugl/ugl.h>
/* 应纳税所得额 */
#define EXEMPTION 800
#define THRESHOLD 4000
#define PAYABLES 8/10
/* 税率 */
#define TAX_RATE1 2/10
#define TAX_THRESHOLD1 20000
#define TAX_RATE2 3/10
#define DEDUCTION1 2000
#define TAX_THRESHOLD2 50000
#define TAX_RATE3 4/10
#define DEDUCTION2 7000
/* 坐标 */
#define X1 10
#define Y1 760
#define X2 1020
#define Y2 10
#define STEP 100
#define MULTIPLICATION 5
#define TOTAL (X2-X1)
UINT32 afterTax(UINT32 income)
{
UINT32 taxable;
UINT32 tax;
/* 劳务报酬少于800元时, 应纳税所得额 = 0 */
if(income <= EXEMPTION)
{
taxable = 0.0;
}
/* 劳务报酬少于4000元时, 应纳税所得额 = 劳务报酬 - 800元 */
else if(income <= THRESHOLD)
{
taxable = income - EXEMPTION;
}
/* 劳务报酬超过4000元时, 应纳税所得额 = 劳务报酬 * 80% */
else
{
taxable = income * PAYABLES;
}
/* 应纳税额 = 应纳税所得额 * 适用税率 - 速算扣除数 */
/* 应纳税所得额不超过20000元时, 税率为20%, 速算扣除数为0 */
if(taxable < TAX_THRESHOLD1)
{
tax = taxable * TAX_RATE1;
}
/* 应纳税所得额超过20000元而不足50000元时, 税率为30%, 速算扣除数为2000 */
else if(taxable < TAX_THRESHOLD2)
{
tax = taxable * TAX_RATE2 - DEDUCTION1;
}
/* 应纳税所得额超过50000元时, 税率为40%, 速算扣除数为7000 */
else
{
tax = taxable * TAX_RATE3 - DEDUCTION2;
}
return income - tax;
}
void uglTax
(
UINT32 multi, /* 收入增幅为100的倍数 */
UINT32 printOut /* 是否打印个税金额 */
)
{
UGL_REG_DATA *pRegData;
UGL_GC_ID gc;
UINT32 income = 0;
UINT32 gain;
UINT32 span;
UINT32 num;
uglDisplayOpen(0, 0, 0);
pRegData = uglRegistryFind(UGL_DISPLAY_TYPE, 0, 0, 0);
gc = uglGcCreate((UGL_DEVICE_ID)pRegData->id);
/* 坐标系 */
uglForegroundColorSet(gc, 0xffffff);
uglLine(gc, X1, Y1, X2, Y1);
uglLine(gc, X1, Y1, X1, Y2);
if(multi < 1)
{
multi = MULTIPLICATION;
}
for(num=1; num<TOTAL; num++)
{
income += STEP*multi;
gain = afterTax(income);
span = num*gain/income;
uglPixelSet(gc, X1+num, Y1-num, 0xff00);
uglPixelSet(gc, X1+num, Y1-(UINT32)span, 0xff0000);
if(printOut != 0)
{
printf(" gain(%u)/income(%u) = %.2f%\n",
gain, income, 100.0*gain/income);
}
}
#if 0
uglGcDestroy(gc);
uglDisplayClose(0);
#endif
return;
}
绿线是税前,红线是税后
总而言之,个税约30%