#include <stdio.h>
#include <stdlib.h>
int x;
//函数声明
void menu();
void entering();
void calculate();
void add();
void del();
void seek();
void sort();
void menu();
//结构体保存职工信息
struct worker{
char num [10];//职工编号
char name [20];//姓名
float jbgz;//基本工资
float jt;//津贴
float bt;//补贴
float yf;//应发工资
float shj;//个人所得税
float shf;//实发工资
} w[50];
//主函数
int main()
{
while (x);
{
menu();
}
system("pause");
return 0;
}
void menu ()
{
int c;
printf("工资纳税系统\n");
printf("1.录入职工信息\n");
printf("2.计算税金\n");
printf("3.添加职工信息\n");
printf("4.删除职工信息\n");
printf("5.按职工编号进行信息查询\n");
printf("6.按个人所得税排序\n");
printf("7.退出\n");
printf("请选择菜单编号:");
scanf("%d",&c);
switch (c)
{
case 1:entering();break;
case 2:calculate();break;
case 7:x=0;printf("即将退出程序!\n");break;
}
}
void entering()
{
struct worker * pArr;
int val;
int i,len;
scanf("%d", &val);
switch (val)
{
case 1: //录入职工信息
printf("请输入员工的个数: \n");
scanf("%d", &len);
pArr = (struct worker*)malloc(lensizeof(struct worker));
for (i = 0; i < len; i++)
{
printf("请输入第%d个员工的信息:", i+1);
printf("职工编号:");
scanf("%s", &pArr[i].num);
printf("姓名:");
scanf("%s", &pArr[i].name);
printf("基本工资:");
scanf("%f", &pArr[i].jbgz);
printf("津贴:");
scanf("%f", &pArr[i].jt);
printf("补贴");
scanf("%f", &pArr[i].bt);
printf("应发工资:");
scanf("%f", &pArr[i].yf);
printf("个人所得税:");
scanf("%f", &pArr[i].shj);
printf("实发工资");
scanf("%f", &pArr[i].shf);
}
break;
}
}
void calculate()
{
float l;float k;
if (k>=0&&k<5000)
{
l = 0;
printf("您的税金为%.2f",l);
}
else if(k>=5000&&k <8000)
{
l = k*0.05;
printf("您的税金为%.2f",l);
}
else if(k>=8000&&k <10000)
{
l = k*0.1;
printf("您的税金为%.2f",l);
}
else if(k>=10000&&k <12000)
{
l = k*0.15;
printf("您的税金为%.2f",l);
}
else if(k>=12000)
{
l = k0.2;
printf("您的税金为%.2f",l);
}
}
你上面不是定义了数组w[50]吗?直接用这个操作就可以了。