工资计算系统这个程序哪里错了,帮忙修正一下!感谢!
#include <stdio.h>#define NUM 10
int menu_main;
int i,number,index,kouchu[NUM],jiangjin[NUM],sum[NUM],shuijin[NUM];
void luru();//录入函数
void tongji();//统计函数
void chaxun();//查询函数
void gongzi();//工资函数
struct staff
{
int num;
char name[10];
int salary;
int day;
}sta[10];
//struct staff sta[NUM];
main()//main函数
{
char x;
printf("1.录入 2.统计 3.工资表 4.查询 5.退出\n");
scanf("%d",&menu_main);
while (menu_main!=5)
{
switch(menu_main)
{
case 1: luru();break;
case 2: tongji();break;
case 4:chaxun();break;
case 3:gongzi();break;
case 5: return 0;
}
}
return 0;
}
void luru(){//录入函数
for(i=0;i<NUM;i++)
{
printf("请输入职工号、姓名、基本工资和当月缺勤天数\n");
scanf("%d%s%d%d",&sta[i].num,&sta[i].name,&sta[i].salary,&sta[i].day);
}
}
void tongji(){//统计函数
for(i=0;i<NUM;i++)
{kouchu[i]=sta[i].salary/30*sta[i].day;
if(sta[i].day==0)
jiangjin[i]=300;
else
jiangjin[i]=0;
sum[i]=sta[i].salary-kouchu+jiangjin;
shuijin[i]=fun(sum[i]);}
}
void chaxun(){
printf("请输入职工号或姓名:\n")
scanf("%s",&x)
for(i=0;i<NUM;i++)
{if(x=name[i]||x=num[i])
printf("%d %s %d %d %d %d %d",struct sta.num[i],struct sta.name[i],struct sta.salary,kouchu[i],jiangjin[i],sum[i],shuijin[i]);
else printf("查无此人\n");
}
}
void gongzi(){//工资函数
for(i=0;i<NUM;i++)
printf("%d %s %d %d %d %d %d",struct sta.num[i],struct sta.name[i],struct sta.salary,kouchu[i],jiangjin[i],sum[i],shuijin[i]);
}
fun (double x) /*x是工资总额*/
{
double y; /*y是应该扣除的税金*/
if(x<=3000)
y=x*0.03;
else if (x<=6000)
y=90+(x-3000)*0.05;
else if (x<=10000)
y=240+(x-6000)*0.1;
else if(x<=20000)
y=640+(x-10000)*0.2;
else if(x<=100000)
y=1640+(x-20000)*0.3;
else y=4040+(x-100000)*0.5;
return y;
}