C语言 课程设计 教师工资管理系统(职工工资管理系统)

C语言 课程设计 教师工资管理系统(职工工资管理系统)
C语言 课程设计 教师工资管理系统(职工工资管理系统)

课程设计教师工资管理系统运行平台:VC6.0(其他平台未经测试,不一定保证有效)制作者:弓箭中南大学信息科学与工程学院

源代码如下:

#include

#include

#include

#include

#define LEN sizeof(struct teacher)

struct teacher

{

int num;

char name[20];

char sex[20];

char workplace[50];

char address[50];

long phone;

double de_salary;

double de_jintie;

double de_shenghuobutie;

double yingfa_salary;

double cost_phone;

double cost_water_elec;

double cost_rent;

double cost_tax;

double cost_weisheng;

double cost_gongjijin;

double cost_all;

double shifa_salary;

struct teacher *next;

};

/***********************************读取函数************************************/ struct teacher *load()

{

struct teacher *p1,*p2,*head;

FILE *fp;

int i=1;

if((fp=fopen("save","rb"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

return (NULL);

}

else

{

head=NULL;

p1=(struct teacher *)malloc(LEN);

while (fread(p1,LEN-4,1,fp)==1)

{

if(i==1)

{

head=p1;

p2=p1;

i=2;

}

else

{

p2->next=p1;

p2=p2->next;

}

p1=(struct teacher *)malloc(LEN);

}

p2->next=NULL;

free(p1);

fclose(fp);

return(head);

}

}

/**********************************欢迎菜单函数*************************************/ void welcome()

{

printf("\n\n\n >>>>>欢迎使用教师工资管理系统Beta1.2<<<<<\n");

printf(" *******************************************************\n");

printf(" * C语言课程设计教师工资管理系统*\n");

printf(" * 班级:电气信息类1001班学号:0909100119 *\n");

printf(" * 姓名:弓箭*\n");

printf(" *******************************************************\n");

printf("\n\n 按下任意键进入系统...");

getch();

system("cls");

}

/**********************************制作人员名单*************************************/

void list()

{

system("cls");

printf("\n\n\n >>>>>版权所有侵权必究<<<<<\n");

printf("*******************************************************************************\n");

printf("* 学校(College): 中南大学Central South University *\n");

printf("* 软件名称(Software):教师工资管理系统Teacher's Salary Managing System *\n");

printf("* 版本号(Edition): Beta1.2 *\n");

printf("* 制作人(Producer):弓箭James *\n");

printf("* 所在班级(Class):电气信息类1001班Electric Information 1001 *\n");

printf("* 所在学院(Institute):信息科学与工程学院Information Engineering Institute*\n");

printf("*******************************************************************************\n");

printf(" >>>>>ILLEGAL COPY BANNED<<<<<\n");

printf("\n\n 按下任意键返回主菜单...");

getch();

}

/***********************************菜单函数*****************************************/

int menu()

{

int i;

printf("\n\n\n >>>>>欢迎使用教师工资管理系统Beta1.2<<<<<\n");

printf(" *******************************************************\n");

printf(" * 1.输入教师信息*\n");

printf(" * 2.插入教师信息*\n");

printf(" * 3.修改教师信息*\n");

printf(" * 4.删除教师信息*\n");

printf(" * 5.浏览教师信息*\n");

printf(" * 6.显示制作人员名单*\n");

printf(" * 7.退出系统*\n");

printf(" *******************************************************\n");

printf(" 请输入你想要的操作:");

scanf("%d",&i);getchar();

return i;

}

/***********************************插入函数*****************************************/

void input()

{

struct teacher *head,*p1,*p2,*p3,*px;

int i,t;

FILE *fp;

char k,n='n',num[30],name[20];

p1=p2=p3=px=(struct teacher *)malloc(LEN);

if((head=load())!=NULL)

{

do

{

n='n';

printf(" 请输入要插入的教师信息:\n");

printf(" ------------------------------\n");

printf(" 请输入教工号:");gets(num);px->num=atoi(num);

printf(" 请输入姓名:");gets(px->name);

printf(" 请输入性别:");gets(px->sex);

printf(" 请输入单位名称:");gets(px->workplace);

printf(" 请输入家庭住址:");gets(px->address);

printf(" 请输入联系电话:");gets(num);px->phone=atoi(num);

printf(" 请输入基本工资:");gets(num);px->de_salary=atof(num);

printf(" 请输入津贴:");gets(num);px->de_jintie=atof(num);

printf(" 请输入生活补贴:");gets(num);px->de_shenghuobutie=atof(num);

printf(" 请输入电话费:");gets(num);px->cost_phone=atof(num);

printf(" 请输入水电费:");gets(num);px->cost_water_elec=atof(num);

printf(" 请输入房租:");gets(num);px->cost_rent=atof(num);

printf(" 请输入个人所得税:");gets(num);px->cost_tax=atof(num);

printf(" 请输入卫生费:");gets(num);px->cost_weisheng=atof(num);

printf(" 请输入公积金:");gets(num);px->cost_gongjijin=atof(num);

px->yingfa_salary=px->de_salary+px->de_jintie+px->de_shenghuobutie;

px->cost_all=px->cost_phone+px->cost_water_elec+px->cost_rent+px->cost_tax+px->cost_weisheng+px->cost_go ngjijin;

px->shifa_salary=px->yingfa_salary-px->cost_all;

printf(" 数据输入完毕,按下任意键继续...");getch();

system("cls");

printf("\n\n\n >>>>>>>>>>> 插入教师信息<<<<<<<<<<<\n");

printf(" *******************************************************\n");

printf(" * 1.输入教师号*\n");

printf(" * 2.输入姓名*\n");

printf(" * 3.返回上级菜单*\n");

printf(" *******************************************************\n");

printf(" 请选择插入方式:");

scanf("%d",&i);getchar();

while (i<1||i>3)

{

printf(" 输入有误!请重新输入:");

scanf("%d",&i);getchar();

}

switch(i)

{

case 1:printf(" 请输入要插入在哪条数据后面:");

scanf("%d",&t);getchar();

p1=head;

while (p1->num!=t)

{

if (p1->next!=NULL)

{ p1=p1->next;

}

else

{

printf(" 查找不到相关数据!\n");

break;

}

}

if (p1->num==t)

{

printf("-----------------------------要插入的信息如下:--------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",px->num,px->name,px->sex,px->workplace,px->address,px ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf\n",px->cost_phone,px->cost_water_ele c,px->cost_rent,px->cost_tax,px->cost_weisheng,px->cost_gongjijin,px->cost_all);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",px->de_salary,px->de_jintie,px->de_shenghuobutie,px->yingfa_salary,px->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

printf(" 确定插入吗?(y或n):");

scanf("%c",&k);getchar();

}

if (k=='y'||k=='Y')

{

if (p1->num==t)

{

if(p1==head)/*如果插入点为头指针*/

{

p3=p1->next;

p1->next=px;

px->next=p3;

p2=head;

}

else if(p1->next==NULL)/*如果插入点为末尾指针*/

{

p3=p1;p1=head;p2=head;

while(p1->next!=p3)

{p1=p1->next;}

p1=p1->next;

p1->next=px;

px->next=NULL;

}

else{/*如果插入点为中间指针*/

p3=p1;p1=head;p2=head;

while(p1->next!=p3)

{p1=p1->next;}

p1=p1->next;

p3=p1->next;

px->next=p3;

p1->next=px;

}

if((fp=fopen("save","wb"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

}

else

{

do

{

fwrite(p2,LEN-4,1,fp);

if(p2->next!=NULL)

p2=p2->next;

}while(p2->next!=NULL);

if(p2!=head)

fwrite(p2,LEN-4,1,fp);

}fclose(fp);

printf(" 插入成功!按下任意键继续...");getch();

}

}

else {printf(" 插入已被取消!按下任意键继续...");getch();}

break;

case 2:printf(" 请输入要插入的教师姓名:");

gets(name);

p1=head;

while (strcmp((p1->name),name)!=0)

{

if (p1->next!=NULL)

p1=p1->next;

else

{

printf(" 查找不到相关数据!\n");

break;

}

}

if (strcmp((p1->name),name)==0)

{

printf("-----------------------------要插入的信息如下:--------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",p1->num,p1->name,p1->sex,p1->workplace,p1->address,p1 ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf \n",p1->cost_phone,p1->cost_water_elec,p1->cost_rent,p1->cost_tax,p1->cost_weisheng,p1->cost_gongjijin,p1->cost_al l);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",p1->de_salary,p1->de_jintie,p1->de_shenghuobutie,p1->yingfa_salary,p1->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

printf(" 确定插入吗?(y或n):");

scanf("%c",&k);getchar();

}

if (k=='y'||k=='Y')

{

if (strcmp((p1->name),name)==0)

{

if(p1==head)/*如果插入点为头指针*/

{

p1->next=px;

p2=head;

}

else if(p1->next==NULL)/*如果插入点为末尾指针*/

{

p3=p1;p1=head;p2=head;

while(p1->next!=p3)

{p1=p1->next;}

p1=p1->next;

p1->next=px;

px->next=NULL;

}

else{/*如果插入点为中间指针*/

p3=p1;p1=head;p2=head;

while(p1->next!=p3)

{p1=p1->next;}

p1=p1->next;

p1->next=px;

p3=p3->next;

px->next=p3;

}

if((fp=fopen("save","wb"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

}

else

{

do

{

fwrite(p2,LEN-4,1,fp);

if(p2->next!=NULL)

p2=p2->next;

}while(p2->next!=NULL);

if(p2!=head)

fwrite(p2,LEN-4,1,fp);

}fclose(fp);

printf(" 插入成功!按下任意键继续...");getch();

}

}

else {printf(" 插入已被取消!按下任意键继续...");getch();}

break;

case 3:break;

default :break;

}

if (i!=3)

{

printf("\n 继续插入其他教师的信息吗?(y或n)");

scanf("%c",&n);getchar();

}

}while((n=='y'||n=='Y')&&i!=3);

}

printf(" 数据插入成功!按下任意键返回主菜单...");getch();

getchar();

}

/***********************************输入函数*****************************************/

void insert()

{

FILE *fp;

char m,num[30];

struct teacher *p1;

p1=(struct teacher *)malloc(LEN);

if((fp=fopen("save","ab"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

}

else

{

printf(" 请输入教师信息:\n");

do

{

printf(" ------------------------------\n");

printf(" 请输入教工号:");gets(num);p1->num=atoi(num);

printf(" 请输入姓名:");gets(p1->name);

printf(" 请输入性别:");gets(p1->sex);

printf(" 请输入单位名称:");gets(p1->workplace);

printf(" 请输入家庭住址:");gets(p1->address);

printf(" 请输入联系电话:");gets(num);p1->phone=atoi(num);

printf(" 请输入基本工资:");gets(num);p1->de_salary=atof(num);

printf(" 请输入津贴:");gets(num);p1->de_jintie=atof(num);

printf(" 请输入生活补贴:");gets(num);p1->de_shenghuobutie=atof(num);

printf(" 请输入电话费:");gets(num);p1->cost_phone=atof(num);

printf(" 请输入水电费:");gets(num);p1->cost_water_elec=atof(num);

printf(" 请输入房租:");gets(num);p1->cost_rent=atof(num);

printf(" 请输入个人所得税:");gets(num);p1->cost_tax=atof(num);

printf(" 请输入卫生费:");gets(num);p1->cost_weisheng=atof(num);

printf(" 请输入公积金:");gets(num);p1->cost_gongjijin=atof(num);

p1->yingfa_salary=p1->de_salary+p1->de_jintie+p1->de_shenghuobutie;

p1->cost_all=p1->cost_phone+p1->cost_water_elec+p1->cost_rent+p1->cost_tax+p1->cost_weisheng+p1->cost_go ngjijin;

p1->shifa_salary=p1->yingfa_salary-p1->cost_all;

fwrite(p1,LEN-4,1,fp);

printf(" 输入下一个?(y或n)");

m=getchar();

if(m!='y'&&m!='Y')

{printf(" 数据保存成功!按下任意键返回主菜单...");getch();}

getchar();

}while (m=='y'||m=='Y');

}

fclose(fp);

}

/***********************************修改函数*****************************************/ void modify()

{

struct teacher *head,*p1,*p2;

int i;

FILE *fp;

char m='n',n='n',num2[30];

p1=head=(struct teacher *)malloc(LEN);

if((head=load())!=NULL)

{

do

{

int num=0;

char name[20];

p1=head;

system("cls");

printf("\n\n\n >>>>>>>>>>> 修改教师信息<<<<<<<<<<<\n");

printf(" *******************************************************\n");

printf(" * 1.输入教师号*\n");

printf(" * 2.输入姓名*\n");

printf(" * 3.返回上级菜单*\n");

printf(" *******************************************************\n");

printf(" 请选择修改方式:");

scanf("%d",&i);getchar();

while (i<1||i>3)

{

printf(" 输入有误!请重新输入:");

scanf("%d",&i);getchar();

}

switch(i)

{

case 1:printf(" 请输入要修改的教师号:");

scanf("%d",&num);getchar();

while (p1->num!=num)

{

if (p1->next!=NULL)

p1=p1->next;

else

{

printf(" 查找不到相关数据!\n");

break;

}

}

if (p1->num==num)

{

system("cls");

printf("\n\n\n >>>>>欢迎使用教师工资管理系统Beta1.2<<<<<\n");

printf("----------------------------------原信息如下:---------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",p1->num,p1->name,p1->sex,p1->workplace,p1->address,p1 ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf\n",p1->cost_phone,p1->cost_water_ele c,p1->cost_rent,p1->cost_tax,p1->cost_weisheng,p1->cost_gongjijin,p1->cost_all);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",p1->de_salary,p1->de_jintie,p1->de_shenghuobutie,p1->yingfa_salary,p1->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

printf(" *******************************************************\n");

printf(" * 1.教师号 2.姓名*\n");

printf(" * 3.性别 4.单位名称*\n");

printf(" * 5.家庭住址 6.联系电话*\n");

printf(" * 7.基本工资8.津贴*\n");

printf(" * 9.生活补贴10.电话费*\n");

printf(" * 11.水电费12.房租*\n");

printf(" * 13.所得税14.卫生费*\n");

printf(" * 15.公积金*\n");

printf(" *******************************************************\n");

do

{

printf(" 请选择要修改的数据:");

scanf("%d",&i);getchar();

while (i>15||i<1)

printf(" 输入有误!请重新输入:");

scanf("%d",&i);getchar();

}

switch(i)

{

case 1:printf(" 请输入新教师号:");gets(num2);p1->num=atoi(num2);break;

case 2:printf(" 请输入新姓名:");gets(p1->name);break;

case 3:printf(" 请输入新性别:");gets(p1->sex);break;

case 4:printf(" 请输入新单位名称:");gets(p1->workplace);break;

case 5:printf(" 请输入新家庭住址:");gets(p1->address);break;

case 6:printf(" 请输入新联系电话:");gets(num2);p1->phone=atoi(num2);break;

case 7:printf(" 请输入新基本工资:");gets(num2);p1->de_salary=atof(num2);break;

case 8:printf(" 请输入新津贴:");gets(num2);p1->de_jintie=atof(num2);break;

case 9:printf(" 请输入新生活补贴:");gets(num2);p1->de_shenghuobutie=atof(num2);break;

case 10:printf(" 请输入新电话费:");gets(num2);p1->cost_phone=atof(num2);break;

case 11:printf(" 请输入新水电费:");gets(num2);p1->cost_water_elec=atof(num2);break;

case 12:printf(" 请输入新房租:");gets(num2);p1->cost_rent=atof(num2);break;

case 13:printf(" 请输入新所得税:");gets(num2);p1->cost_tax=atof(num2);break;

case 14:printf(" 请输入新卫生费:");gets(num2);p1->cost_weisheng=atof(num2);break;

case 15:printf(" 请输入新公积金:");gets(num2);p1->cost_gongjijin=atof(num2);break;

default:break;

}

p1->yingfa_salary=p1->de_salary+p1->de_jintie+p1->de_shenghuobutie;

p1->cost_all=p1->cost_phone+p1->cost_water_elec+p1->cost_rent+p1->cost_tax+p1->cost_weisheng+p1->cost_go ngjijin;

p1->shifa_salary=p1->yingfa_salary-p1->cost_all;

printf(" 继续修改其他数据吗?(y或n):");

scanf("%c",&m);getchar();

}while (m=='y'||m=='Y');

p2=head;

if((fp=fopen("save","wb"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

}

else

fwrite(head,LEN-4,1,fp);

do

{

p2=p2->next;

fwrite(p2,LEN-4,1,fp);

}while(p2->next!=NULL);

printf("------------------------------修改后数据如下:---------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",p1->num,p1->name,p1->sex,p1->workplace,p1->address,p1 ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf \n",p1->cost_phone,p1->cost_water_elec,p1->cost_rent,p1->cost_tax,p1->cost_weisheng,p1->cost_gongjijin,p1->cost_al l);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",p1->de_salary,p1->de_jintie,p1->de_shenghuobutie,p1->yingfa_salary,p1->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

}

fclose(fp);

}

break;

case 2:printf(" 请输入要修改的教师姓名:");

gets(name);

while (strcmp(p1->name,name)!=0)

{

if (p1->next!=NULL)

p1=p1->next;

else

{

printf(" 查找不到相关数据!\n");

break;

}

}

if (strcmp(p1->name,name)==0)

{

system("cls");

printf("\n\n\n >>>>>欢迎使用教师工资管理系统Beta1.2<<<<<\n");

printf("----------------------------------原信息如下:---------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",p1->num,p1->name,p1->sex,p1->workplace,p1->address,p1 ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf \n",p1->cost_phone,p1->cost_water_elec,p1->cost_rent,p1->cost_tax,p1->cost_weisheng,p1->cost_gongjijin,p1->cost_al l);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",p1->de_salary,p1->de_jintie,p1->de_shenghuobutie,p1->yingfa_salary,p1->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

printf(" *******************************************************\n");

printf(" * 1.教师号 2.姓名*\n");

printf(" * 3.性别 4.单位名称*\n");

printf(" * 5.家庭住址 6.联系电话*\n");

printf(" * 7.基本工资8.津贴*\n");

printf(" * 9.生活补贴10.电话费*\n");

printf(" * 11.水电费12.房租*\n");

printf(" * 13.所得税14.卫生费*\n");

printf(" * 15.公积金*\n");

printf(" *******************************************************\n");

do

{

printf(" 请选择要修改的数据:");

scanf("%d",&i);getchar();

while (i>15||i<1)

{

printf(" 输入有误!请重新输入:");

scanf("%d",&i);getchar();

}

switch(i)

{

case 1:printf(" 请输入新教师号:");gets(num2);p1->num=atoi(num2);break;

case 2:printf(" 请输入新姓名:");gets(p1->name);break;

case 3:printf(" 请输入新性别:");gets(p1->sex);break;

case 4:printf(" 请输入新单位名称:");gets(p1->workplace);break;

case 5:printf(" 请输入新家庭住址:");gets(p1->address);break;

case 6:printf(" 请输入新联系电话:");gets(num2);p1->phone=atoi(num2);break;

case 7:printf(" 请输入新基本工资:");gets(num2);p1->de_salary=atof(num2);break;

case 8:printf(" 请输入新津贴:");gets(num2);p1->de_jintie=atof(num2);break;

case 9:printf(" 请输入新生活补贴:");gets(num2);p1->de_shenghuobutie=atof(num2);break;

case 10:printf(" 请输入新电话费:");gets(num2);p1->cost_phone=atof(num2);break;

case 11:printf(" 请输入新水电费:");gets(num2);p1->cost_water_elec=atof(num2);break;

case 12:printf(" 请输入新房租:");gets(num2);p1->cost_rent=atof(num2);break;

case 13:printf(" 请输入新所得税:");gets(num2);p1->cost_tax=atof(num2);break;

case 14:printf(" 请输入新卫生费:");gets(num2);p1->cost_weisheng=atof(num2);break;

case 15:printf(" 请输入新公积金:");gets(num2);p1->cost_gongjijin=atof(num2);break;

default:break;

}

p1->yingfa_salary=p1->de_salary+p1->de_jintie+p1->de_shenghuobutie;

p1->cost_all=p1->cost_phone+p1->cost_water_elec+p1->cost_rent+p1->cost_tax+p1->cost_weisheng+p1->cost_go ngjijin;

p1->shifa_salary=p1->yingfa_salary-p1->cost_all;

printf(" 继续修改其他数据吗?(y或n):");

scanf("%c",&m);getchar();

}while (m=='y'||m=='Y');

p2=head;

if((fp=fopen("save","wb"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

}

else

{

fwrite(head,LEN-4,1,fp);

do

{

p2=p2->next;

fwrite(p2,LEN-4,1,fp);

}while(p2->next!=NULL);

printf("------------------------------修改后数据如下:---------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",p1->num,p1->name,p1->sex,p1->workplace,p1->address,p1 ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合

计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf \n",p1->cost_phone,p1->cost_water_elec,p1->cost_rent,p1->cost_tax,p1->cost_weisheng,p1->cost_gongjijin,p1->cost_al l);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",p1->de_salary,p1->de_jintie,p1->de_shenghuobutie,p1->yingfa_salary,p1->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

}

fclose(fp);

}

break;

case 3:break;

default :break;

}

if (i!=3)

{

printf("\n 继续修改其他教师的信息吗?(y或n)");

scanf("%c",&n);

}

}while((n=='y'||n=='Y')&&i!=3);

}

}

/***********************************删除函数*****************************************/

void deletes()

{

struct teacher *head,*p1,*p2,*p3;

int i;

char k;

FILE *fp;

char n='n';

p1=p2=p3=(struct teacher *)malloc(LEN);

if((head=load())!=NULL)

{

do

{

int num;

char name[20];

p1=head;

system("cls");

printf("\n\n\n >>>>>>>>>>> 删除教师信息<<<<<<<<<<<\n");

printf(" *******************************************************\n");

printf(" * 1.输入教师号*\n");

printf(" * 2.输入姓名*\n");

printf(" * 3.返回上级菜单*\n");

printf(" *******************************************************\n");

printf(" 请选择删除方式:");

scanf("%d",&i);getchar();

while (i<1||i>3)

{

printf(" 输入有误!请重新输入:");

scanf("%d",&i);getchar();

}

switch(i)

{

case 1:printf(" 请输入要删除的信息的教师号:");

scanf("%d",&num);getchar();

while (p1->num!=num)

{

if (p1->next!=NULL)

p1=p1->next;

else

{

printf(" 查找不到相关数据!\n");

break;

}

}

if (p1->num==num)

{

printf("-----------------------------要删除的信息如下:--------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",p1->num,p1->name,p1->sex,p1->workplace,p1->address,p1 ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf\n",p1->cost_phone,p1->cost_water_ele c,p1->cost_rent,p1->cost_tax,p1->cost_weisheng,p1->cost_gongjijin,p1->cost_all);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",p1->de_salary,p1->de_jintie,p1->de_shenghuobutie,p1->yingfa_salary,p1->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

printf(" 确定删除吗?(y或n):");

scanf("%c",&k);getchar();

}

if (k=='y'||k=='Y')

{

if (p1->num==num)

{

if(p1==head)

{

p1=p1->next;

p2=p1;

}

else if(p1->next==NULL)

{

p3=p1;p1=head;p2=head;

while(p1->next!=p3)

{p1=p1->next;}

p1->next=NULL;

}

else{

p2=head;p3=p1;p1=head;

while(p1->next!=p3)

{p1=p1->next;}

p3=p3->next;

p1->next=p3;

}

if((fp=fopen("save","wb"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

}

else

{

do

{

fwrite(p2,LEN-4,1,fp);

if(p2->next!=NULL)

p2=p2->next;

}while(p2->next!=NULL);

if(p2!=head)

fwrite(p2,LEN-4,1,fp);

}fclose(fp);

printf(" 删除成功!按下任意键继续...");getch();

}

}

else {printf(" 删除已被取消!按下任意键继续...");getch();}

break;

case 2:printf(" 请输入要修改的教师姓名:");

gets(name);

while (strcmp((p1->name),name)!=0)

{

if (p1->next!=NULL)

p1=p1->next;

else

{

printf(" 查找不到相关数据!\n");

break;

}

}

if (strcmp((p1->name),name)==0)

{

printf("-----------------------------要删除的信息如下:--------------------------------\n");

printf("教工号姓名性别单位名称家庭住址联系电话\n");

printf(" %-4d %-13s %s %-19s %-19s%-14ld\n",p1->num,p1->name,p1->sex,p1->workplace,p1->address,p1 ->phone);

printf("电话费水电费房租个人所得税卫生费公积金合计扣款\n");

printf(" %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf %-10.1lf \n",p1->cost_phone,p1->cost_water_elec,p1->cost_rent,p1->cost_tax,p1->cost_weisheng,p1->cost_gongjijin,p1->cost_al l);

printf("基本工资津贴生活补贴应发工资实发工资\n");

printf(" %-13.1lf %-13.1lf %-13.1lf %-13.1lf %-13.1lf\n",p1->de_salary,p1->de_jintie,p1->de_shenghuobutie,p1->yingfa_salary,p1->shifa_salary);

printf("-------------------------------------------------------------------------------\n");

printf(" 确定删除吗?(y或n):");

scanf("%c",&k);getchar();

}

if (k=='y'||k=='Y')

{

if (strcmp((p1->name),name)==0)

{

if(p1==head)

{

p1=p1->next;

p2=p1;

}

else if(p1->next==NULL)

{

p3=p1;p1=head;p2=head;

while(p1->next!=p3)

{p1=p1->next;}

p1->next=NULL;

}

else{

p2=head;p3=p1;p1=head;

while(p1->next!=p3)

{p1=p1->next;}

p3=p3->next;

p1->next=p3;

}

if((fp=fopen("save","wb"))==NULL)

{

printf(" 文件不存在!按下任意键返回主菜单...");getch();

}

else

{

do

{

fwrite(p2,LEN-4,1,fp);

if(p2->next!=NULL)

p2=p2->next;

}while(p2->next!=NULL);

if(p2!=head)

fwrite(p2,LEN-4,1,fp);

}fclose(fp);

printf(" 删除成功!按下任意键继续...");getch();

}

}

else {printf(" 删除已被取消!按下任意键继续...");getch();}

break;

case 3:break;

default :break;

}

if (i!=3)

{

printf("\n 继续删除其他教师的信息吗?(y或n)");

scanf("%c",&n);

}

}while((n=='y'||n=='Y')&&i!=3);

}

职工工资管理系统设计与实现

职工工资管理信息系统设计与实现 学院:经济与管理学院 班级:09信管 姓名:王友兴 学号:090403010043

目录 1 引言 (2) 1.1问题的提出 (3) 1.2任务与分析 (3) 2设计方案 (4) 2.1程序功能设计 (4) 2.1.1程序功能描述 (4) 2.1.2程序结构分析 (4) 2.1.3 数据表结构分析 (5) 2.1.4程序流程分析 (7) 2.2程序界面和代码设计 (7) 2.2.1项目设计框架 (7) 2.2.2主要表单及代码设计 (9) 3 结果分析 (20) 结论 (25) 致谢 (26) 参考文献 (27)

1 引言 1.1 问题的提出 为适合现代企业的需要,职工工资管理已经成为企业管理的一个难题,由于其费时和繁琐性,企业迫切需要一种专门为职工工资管理而服务的工具。为此,简单的职工工资管理系统为此而制造出来。本简单程序是为职工工资管理而设计的,内容简单,使用方便。程序稍加变更可以适合对资源分配方面的杂事加以处理。 作为当代大学生,熟练的操作计算机是一种必备的素质。本次设计会让我们更加熟悉VF编程,把以前学过的一些东西又重新复习了一遍,并与实际结合起来,对我们能力的提升有了很大的帮助,还能促使我们在以后的实际应用中更好的应用VF编程来设计一些数据库管理系统。 1.2 任务与分析 分析你的设计任务,有什么难点?怎么解决?完成的步骤! 职工工资管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点. 本系统主要完成对学生选课信息的管理,包括数据库中表的添加、删除等。系统可以完成对各类信息的浏览、修改、查询和工资信息对工资进行计算的功能。系统的核心是数据库中各个表联系,每一个表的修改都将联动的影响其它的表,当完成对数据的操作时系统会自动地完成数据库的修改。查询功能也是系统的核心之一,在系统中即有单条件查询和多条件查询,也有精确查询和模糊查询,系统不仅有静态的条件查询,也有动态生成的条件查询,其目的都是为了方便用户使用。本系统有完整的用户添加、删除和密码修改功能,并具备报表打印功能.

员工工资管理系统需求分析

1、编写目的 随着当今企业规模不断变大,企业人员数量的增加,企业工资的计算也变得越来越复杂。在企业里每天都要处理大量的数据信息,为了提高工资管理的工作效率,降低出错概率。本系统的开发宗旨以及总体任务就是帮助企业提高工作效率,实现企业工资信息管理的自动化、规范化和系统化。 2、编写依据 依据图书馆管理系统软件的方案书。 3 4 4.1软件总体描述 本系统可运行于windows xp及以上版本,具有较高的安全性、可维护性及可操作性,对于一般人用户使用需具简单、直观、易操作性的特点。 4.2软件设计约束及有关说明 开发环境:windows操作系统、SQL server 。 编程语言:c或一些通俗易懂的语言 遵循的规范: 测试环境: 软件交付日期:16周 4.3使用者特点 4.3.1对服务端后台管理人员: 要求有网站维护的技能,能够对服务端后台处理进行管理,能捕获系统异常。 要求掌握SQL数据库操作,能够对后台数据库进行日常维护与管理,例如:对数 据库的备份与恢复,对冗余数据的删除等; 要求有一定的Linux服务器配置与管理技能,能够阻止非法攻击,优化服务器配置, 保证服务器的安全畅通地运行。 4.3.2对客户端用户:能够通过web浏览器进行网络访问。 5.功能定义 5.1员工基本信息的录入,修改,删除。 5.2工资标准设定功能。具体包括职务工资,工龄工资以及其它工资标准的设定。 5.3工资信息浏览。 5.4员工工资表创建。 5.5工资调整管理。 5.6工资统计。 5.7用户级别设定以及口令修改: 为完善系统管理功能,增加工资系统用户管理功能,包括系统用户数据的天价,修改和

员工信息管理系统课程设计

《信息系统设计》软件工程课程设计 课题名称:员工信息管理系统 姓名:兰朝仁 学号:080一五3035 学院:继续教育学院 专业:计算机科学与技术 年级:2008级(夜大专升本)指导教师:陈郞钦 完成日期:2010年10月11日

目录

【摘要】本文从员工信息管理系统规划、需求分析、系统设计、系统实现及系统测试等多个方面,分别叙述系统研发的整个实现过程,简述采用 7编程工具及数据库实现系统应用的设计要点,重点阐述系统实现过程中的重点和难点问题的分析及其解决方案,解决企业对员工的计算机管理。 【关键词】员工、人事、工资、管理、数据库 引言 随着我国国民经济建设的蓬勃发展和社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,对企业体系无论是在行政职能、企业管理水平以及优质服务上都提出更高的要求。建设一个科学高效的信息管理系统是解决这一问题的必由之路。员工信息管理作为企业内部的一种员工基本档案管理也是如此,由于企业的人数较多,每一位员工的具体实际情况也不尽相同,如果没有一个完整的员工信息管理系统去完成,将使工作变得复杂,并且对于工作的效率也将使一个致命的打击,使无论如何也无法适应现代社的需要。另外,目前部分企业使用的员工信息管理系统只有信息的录入,修改和删除的功能,而不具有信息查询的功能,这对于企业的信息管理工作来说是一个很遗憾的事情。因此,开发一套功能完整,设计合理,使用方便的企业员工信息管理系统成为很有必要的事情。 企业员工信息管理系统的内容功能对于企业的决策者和管理者来说都至关重要,所以企业员工信息管理系统应该能够为管理者提供充足的信息和快捷的查询与管理手段。作为计算机应用的一部分,使用计算机对企业员工信息进行管理,具有手工管理所无法比拟的优点.例如:查询迅速、查找方便、可靠性高、存储量大、BaoMi性好、寿命长、成本低等。这些优点能够降低员工管理工作的成本,减轻企业管理人员的负担,方便员工信息的更新、维护和查询,增加数据的可靠性;从而提高企业员工信息管理的效率,开拓企业员工管理工作的新局面,提高管理水平,是企业管理的科学化、正规化、信息化管理,与世界接轨的重要条件。 当前主流的程序开发环境有,,等。对系统兼容性好;可以支持多种环境及操作系统平台;而则可在系统下快速开发结构程序,具有多方成熟的控件完善系统开发。

《职工工资管理系统设计》实验报告

内蒙古工业大学信息工程学院 实验报告 课程名称: c语言 实验名称: 实验类型:验证性□ 综合性√设计性□实验室名称:电西8楼

班级:计12-2 学号:201220201042姓名:孙亚赛组别: 同组人:勾涛付启恒成绩: 实验日期: 2013-3-3

目录 1 题目与要求 (3) 2 功能设计 (5) 2.1算法设计 (5) 2.2 模块流程图 (7) 3 程序代码设计 (8) 4 C程序设计总结 (22) 5 结束语 (23) 6 源程序 (23)

1 题目与要求 程序设计的目的和要求 1.目的: 1)复习、巩固程序设计的基础知识,进一步加深对程序设计语言的理解和掌握;熟练使用函数、结构体、文件、数组、循环与选择、链表和指针等知识点,熟练应用C语言综合知识。 2)为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力; 3)培养学生在项目开发中团队合作精神、创新意识及能力。 2.要求: 1)对系统进行功能模块分析、控制模块分析正确,符合题目要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理; 2)系统设计要实用、编程简练、功能全面、界面美观、操作使用便捷、程序运行稳定;

3)说明书、流程图要清晰; 4)记录设计情况(备查,也为编写设计说明书作好准备); 5)要求采用模块化程序设计方法,及锯齿型书写格式,要求上机调试通过,能正确运行; 6)设计上交内容:设计报告一份(按格式书写);源程序一份(电子版,能编译成可执行文件并能正常运行。每个班由班长负责收集并上交)。 题目:职工工资管理系统 1)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观。 2)、输入功能:职工信息的录入(包括从文件中导入职工信息数据),可以一次完成若干条记录的输入。 3)、浏览功能:完成对全部职工信息的显示。 4)、查找功能: ①完成按姓名查询职工的相关信息,并显示。 ②完成按ID号查询职工的相关信息,并显示。 5)、删除功能:通过输入ID号完成对职工的信息进行删除。 6)、添加功能:完成添加新职工的信息。 7)、修改功能:通过输入ID号完成对职工的信息进行修改。 8)、计算功能:计算职工的各项工资,并得出实发工资。[个人收入所得税按现行税率计算]

员工薪资管理系统

员工薪资管理系统 背景 企业的工资管理是公司管理的一个重要内容,随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。工资管理既设计到企业劳动认识的管理,同时也是企业财务管理的重要组成部分,工资管理需要和人事管理相联系,同时连接工时考核和医疗保险等等,来生产那个企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎活计算疏漏,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。企业工资管理系统极大的提高了工作效率,节省了人力和财力,最终满足企业财务管理、员工工资发放的需要,同时也成为现代化企业管理的标志。

需求分析 员工薪资管理系统的开题分析: 1、公司的员工各自只能不同,领取的工资也不相同,员工分为管理人员、财务人员、技术人员和工人; 2、下设几个部门,各部门人员领取的工资也不相同,有人事部、售会计部、广告部、售后服务部和生产车间等一系列部门 3、工资由基本工资、福利补贴和奖励工资构成,失业保险和住房公积金在工资中扣除 4、每个员工的基本资料有姓名、性别、年龄、单位、参加工作时间和职务(如经理、主任、科长、工程师、办事员和工人等)。 5、每月个人的最高工资不超过3000 元。工资每月按部门发放,实际发放的工资金额为工资总额减去失业保险和住房公积金。如果违反劳动纪律,每次扣除基本工资的10%,若扣除金额每月累计超过基本工资,下月工资停发。 员工薪资管理系统的功能分析: 1、员工信息的输入,包括员工的姓名、职工号、性别、年龄、职 务、工作时间、应得工资和实发工资 2、员工信息的查询,包括员工的姓名、职工号、性别、年龄、职 务、工作时间、应得工资和实发工资 3、员工信息的修改,包括员工的姓名、职工号、性别、年龄、职 务、工作时间、应得工资和实发工资 4、新增员工信息的插入,包括员工的姓名、职工号、性别、年龄、 职务、工作时间、应得工资和实发工资 5、离职员工信息的删除,包括员工的姓名、职工号、性别、年龄、

c课程设计职工工资管理系统

题目 c++面向对象程序设计课程设计 清单:5小题+职工工资管理系统(类、链表实现) 姓名: 学号: 专业:计算机科学与技术 学院: 指导教师: 2018年6月17日 Part 1: 小程序练习 1 类的继承 定义一个point类,包含私有数据成员x,y,成员函数包括无参构造函数,带参构造函数,set和get属性函数。定义circle类,从point类公有派生,增加数据成员半径r,成员函数包括无参构造函数,带参构造函数,计算面积函数getarea。在main函数中定义一个circle的对象,并计算其面积。 /* 1.定义Point类,设置其成员函数(构造函数,拷贝构造函数和析构函数)以及setx() sety() getx() gety() 四个属性函数。 2.定义circle类,设置其成员函数(构造函数,拷贝构造函数和析构函数)以及获取半径r的函数get_r() 计算面积并获取面积的函数getarea()。 3.在主函数中定义类的对象c1并初始化r=2。再调用getarea()函数输出面积 */ #include using namespace std; class point 义counter类,私有成员数据weight,设置其成员函数(构造函数和析构函数) 2.重载自加自减运算符和<<、>>运算符。 3.在主函数中实现运算符重载。 4.友元函数需要声明。 */ #include #include using namespace std;class counter; istream& operator>>(istream& is,counter& a); ostream& operator<<(ostream& os,counter& a); class counter rintinfo(); printf("\n"); cout << "temp中数据构成的圆面积为 " << s->area() << endl; cout << "体积为 " << (*s).volume() << endl; system("pause"); return 0; } 运行结果: 4 模板 编写一个使用类模板对数组进行查找、求元素和、重载下标[]运算符,以及输出的程序。 1)设计一个类模板:形式1为templateclass Array;形似2为 templateclass Array;用于对T类型的数组进行构造和输出;2)产生模板类Array和Array进行测试; 3)产生模板类Array和Array进行测试。 定义student类,私有数据成员字符数组name[20]; 2. 定义运算符<<,>>重载; 3. 在住函数中定义student 类数组s[N];并以输出和二进制的方式打开文件

职工工资管理系统毕业设计报告

石家庄邮电职业技术学院 毕业设计 基于“狐表”的职工工资管理系统开发 2012 届计算机系 专业软件技术 班级计0903-11 学号 30902001819 姓名 *** 指导教师 *** 完成日期 2011年12月20日

石家庄邮电职业技术学院毕业设计任务书

石家庄邮电职业技术学院毕业设计评定书

摘要 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事工资的管理势在必行。本系统结合公司实际的财务制度,经过实际的需求分析,采用功能强大的狐表(Foxtable)做为开发工具而开发出来的单机版职工工资管理系统。 整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成工资管理的全过程,包括对职工档案信息的增加、删除、修改与查询功能,以及职工每月工资的录入、修改、查询与统计等功能。 报告主要介绍了本课题的开发背景,所要完成的功能和开发的过程。以及设计思路和实现细节的考虑,最后给出了作者在毕业设计过程的体会。 关键词:工资管理、Access2007、管理信息系统、Excel

目录 1 绪论 (1) 2 关于Foxtable (2) 2.1 帮助文件 (2) 2.2 菜单介绍 (2) 2.2.1 菜单的构成 (2) 2.2.2 日常工作功能区 (3) 2.2.3 数据表工作区 (3) 2.2.4 项目管理工作区 (4) 2.2.5 打印输出工作区 (4) 2.2.6 杂项工作区 (5) 2.3 功能介绍 (5) 2.3.1 轻松录入 (5) 2.3.2 轻松统计 (5) 2.3.3 轻松查询 (6) 2.3.4 轻松报表 (6) 2.3.5 轻松开发 (7) 2.3.6 其它特色 (8) 2.4 狐表与易表的区别 (8) 2.5 Foxtable软件的优势 (9) 3 系统需求分析与总体设计 (10) 3.1 系统功能分析 (10) 3.2 系统功能模块划分 (10) 4 数据库设计 (11) 5 系统详细设计与模块的具体实现 (13) 5.1 “登陆”模块设计 (13) 5.2 系统的主界面 (14) 5.3 “职工管理”模块设计 (15) 5.3.1 职工信息录入 (15)

Access工资管理系统

河南城建学院 《数据库技术与应用》设计说明书 设计题目:工资管理系统 系别:建筑工程管理系 专业: 指导教师: 班级: 学号: 姓名: 2013年 1月 11日一、设计的背景、目的、任务

随着社会主义市场经济的不断发展,建设一个科学高效的信息管理系统是解决这一问题的必由之路。企业内部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。工资管理作为企业内部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的工资管理系统对员工工资等进行系统的管理,很难实现企业高效运转。 通过对工资管理系统数设计的需求分析、概念设计、逻辑设计、物理设计、数据库运行及维护阶段工作的实践,掌握数据库设计的一般方法与步骤,深入掌握数据库设计的基本理论、方法和步骤。本课程设计是《数据库技术与应用》课程的实践部分,是在学习完课程后进行的一次综合练习。可以加深对《数据库技术与应用》的原理和程序的理解、巩固、提高,让学生做到学以致用,把所学的理论知识应用于实际问题的解决,编制出完整的应用程序,为以后实际编制大型的应用软件打基础。 二、课程设计要求(包括设计说明书的具体要求) 要求: 根据《数据库原理与应用》所学课程的内容,完成工资管理系统数据库设计的需求分析、概念设计、逻辑设计、物理设计、上机运行及维护工作。要求所构成的系统和设计的数据库能够满足课程设计任务书提出的各项要求。 (1)熟悉一种关系数据库 (2)根据自定题目以及需求,完成需求分析、逻辑设计 (3)在一种关系数据库中,完成数据库物理设计、上机运行及维护工作 (4)在工资管理系统数据库中,录入相应的信息 (5)能对数据库进行各种SQL语言的各种操作 (6)按要求完成课程设计说明书,参考文献数量不得低于5个课程设计题目 三.课程设计题目 工资管理系统 四.功能描述 工资管理是现代企业管理中的一个部分,完善的工资管理系统可以有效的管

员工考勤管理系统课程设计

课程设计报告书 课程名称:VC++课程设计 题目:员工考勤经管系统 学生姓名: 专业:计算机科学与技术 班别: 学号: 指导老师: 日期:2012年 6 月20 日 目录 第一章绪论 (2) 1.1 课题背景 (2) 1.2 课题任务 (2) 1.3开发工具 (2)

1.4 课题目的 (3) 第二章可行性研究 (3) 2.1 对现有系统的分析 (3) 2.2对本系统设计的说明 (4) 第三章软件需求分析 (4) 3.1软件设计的预期目标 (4) 3.2系统用户需求 (5) 3.3 系统的框架 (5) 第四章数据分析及数据库的设计 (6) 4.1数据库分析 (6) 4.2数据库结构的设计 (6) 第五章系统详细设计说明 (8) 5.1 系统结构 (8) 5.2系统各个模块界面及说明 (9) 第六章软件的测试 (27) 6.1测试工程 (27) 6.2测试人员 (27) 6.3 测试结果 (27) 6.4 对程序的调试及在测试中遇到的困难及解决困难的方法 (27) 6.5 系统还有哪些不足 (27) 6.6 对系统的评价 (27) 归纳总结 (28) 参考文献 (28) 摘要:本系统是基于VC++6.0中的MFC与Access数据库开发的,可用于企业单位的员工考勤,统计员工出勤情况。 关键字:VC++、Access、员工考勤

第一章绪论 1.1 课题背景 在当今社会,互联网空间的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。社会正处于信息时代,信息技术已渗透到社会生活的各个领域,特别是各行各业的经管领域,智能化信息处理已是提高效率、规范经管、客观审查的最有效的途径。 随着经济的发展,企业正向大型化、规模化的方向发展,因此企业员工数量急剧增加,有关员工的各种信息业成倍的曾长。考勤作为一个公司的基本经管,是单位对员工工作经管的基本依据。但是,目前国内的大多数企业在考勤时,依然使用是传统的考勤方法,例如手工记录、签卡、机械打卡等,不仅考勤速度慢,在考勤是需要专门的人员在旁记录、统计、制成报表,当报表最后交到主管人员时,也许时间已经过了几天了,根本不能发挥考勤真正的监督作用。而且考勤数据不准确,考勤人员在考勤过程中可能记录出错,甚至弄虚作假的现象出现,极大的影响了企业对员工的经管。因此根据企业需求,设计企业员工考勤经管系统,以帮助企业达到员工经管办公自动化、节约经管成本、提高企业工作效率的目的。 1.2课题任务 做出一个可以简单操作的员工考勤经管系统,方便员工和经管员查询出勤记录。员工可以通过输入自己的名字修改自己的信息以及查询出勤记录;经管员可以查看员工的出勤记录,可以添加和删除员工信息以及修改密码。 1.3开发工具 VC++MFC平台和数据库 1.4课题目的 设计制作出员工考勤经管系统,设计相关的操作功能;通过课程设计,了解并掌握VC++MFC平台的操作使用,学会利用数据库进行数据表制作及添加数据源;深入了解所学课程的重要性和实用性,提高学习耐性。

职工工资管理系统设计与实现

《JAVA程序设计》 课程设计报告 设计题目:职工工资管理系统设计与实现学院名称: 专业班级: 姓名: 学号:

目录 一需求分析。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 二概要设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 三详细设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。5 3.1 数据库设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.2 模块及窗体设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.2.1 数据库模块设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。5 3.2.2 用户登录识别模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。6 3.2.3管理员模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。8 职工基本信息管理。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。9 职工工资管理。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。20 3.2.4 普通用户模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。28 职工信息。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。28 3.2.5 系统管理模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 3.2.5 主窗体菜单设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 四软件测试。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。36 五总结。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。36 参考资料:....................................................。。。。。。..17

公司员工工资管理系统课程设计报告书

公司员工工资管理系统课程设计 (一)可行性分析 1.1项目背景及意义:随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给企业提出越来越严峻的挑战,对企业体系无论是在行政职能、企业管理水平以及优质服务上都提出更高的要求。建设一个科学高效的信息管理系统是解决这一问题的必由之路。企业部财务管理是该企业运用现代化技术创造更多更高的经济效益的主要因素之一。工资管理作为企业部的一种财务管理也是如此,由于企业职工人数较多,每一位职工的具体实际情况也不尽相同,各项工资条款的发放,如果没有一个完整的工资管理系统对员工工资等进行系统的管理,很难实现企业高效运转。 意义: (1)本系统提供了基本的人员信息管理,同时对员工的基本工资、浮动工资和工资发放进行系统管理,同时配以查询、修改、删除、添加功能,以便能真正适用于各类中小企业及事业单位。 经过自己认真的思考和同学的讨论使我对该类管理系统有了进一步的认识,同时也可以应用平时学习中所学到的东西。 1.2可行性研究报告及信息系统目标:员工工资管理系统的主要目的是利用计算机对员工的各种工资信息进行日常的管理,如查询、修改、添加、删除以及存储等,迅速准确地完成各种工资信息的统计计算和汇总工作,针对系统服务对象的具体要求,设计了企业工资管理系统。企业工资管理系统主要有以下几大功能:

对单位人员的变动进行处理。一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位部调动。因此,设计系统是应考虑到这些情况。 对职工的工资进行计算、修改。可以对职工的工资档案进行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算基本工资、岗位工资、水电费及实发金额等。 查询统计功能。要求即可以单项查询,比如查看某个职工的工资情况等;也可以多项查询,比如某个部门所有的员工的工资信息。 (二)系统分析部分 2.1系统功能模块图

职工工资管理系统设计与实现

《程序设计》 课程设计报告 设计题目:职工工资管理系统设计与实现学院名称: 专业班级: 姓名: 学号:

目录 一需求分析。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 二概要设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 三详细设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。5 3.1 数据库设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.2 模块及窗体设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.2.1 数据库模块设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。5 3.2.2 用户登录识别模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。6 3.2.3管理员模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。8 职工基本信息管理。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。9 职工工资管理。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。20 3.2.4 普通用户模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。28 职工信息。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。28 3.2.5 系统管理模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 3.2.5 主窗体菜单设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 四软件测试。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。36 五总结。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。36 参考资料:....................................................。。。。。。..17

公司员工工资管理系统

薪酬管理体系作为保护和提高员工工作热情的最有效的激励手段,是现代企业管理制度中不可欠缺的一部分。企业经营者只有站在经营管理的高度,系统性地认识薪酬体系的定位、管理对象、实施手段,才能全面把握薪酬管理体系在企业中发挥的管理作用。 工资的发放是企业最核心的一个流程,是企业留住人才,培养人才的最核心的过程。而相对于以前,现在越来越多的企业开始重视使用工资管理系统了,让薪酬工资管理工作更加的流程,更具有可操作性。 目前市场上被广泛运用的薪酬工资管理系统主要目的就是实现工资的集中管理。核心功能是提供供财务人员对该企业的员工以及工资进行增加、删除、修改、查询等操作。同时支持对人事的管理及工资发放中对于应发工资合计等项目的具体核算工作。 1、自定义薪酬结构设置 薪酬工资管理系统一般都会支持按企业工资表自定义薪酬结构,也就是我们可以根据企业已有的工资表中的薪酬项进行选择,同时我们也可以自定义的去添加、重命名以及填写备注事项。 通俗点说就是根据不同的岗位选择不同的薪酬结构,比如销售人员的基本工资+绩效工资;而后勤员工的固定工作+基本工资等不同的薪酬结构的选择。 2、自动生成薪酬图标 工资管理不仅仅只是发放工资,同时我们还需要做好每个月,每个季度的企业员工工资的核算报表,这样做不仅仅可以方便我们清楚

的了解每一个月的具体工资详情,同时也方便以后查询。 3、电子工资条发放 工资管理系统还有一个功能就是电子工资条的发放,工资条的作用是为了告诉员工本月工资明细,员工确认签名后即表示接受上月工资所得,是降低用工风险的一种有效方式。而电子工资条不仅有和传统裁剪出来的工资条有一样的作用,同时具备省时省力、环保的特点。 上海喔趣信息科技有限公司,作为中国劳动力综合管理专家品牌,致力于为大中型企业实现劳动力预测、劳动力管理、劳动力满足全过程的信息化、数字化、智能化,是一家大型为企业提供人事管理、智能排班、智慧考勤、绩效薪资、数据罗盘,灵活用工服务等全链劳动力综合管理与满足的云服务商。目前,使用喔趣科技产品服务,累计超过12万家中国企业,覆盖员工超过400万,主要涵盖了国企事业单位、生产制造、餐饮服务、零售连锁、教育培训、医疗美容等多个行业。

职工工资管理系统方案

《C++程序设计》课程设计任务书适用专业:生物工程 设计题目:职工工资管理系统 一、已知技术参数或设计前提 1、学校教职工共一千多人。 2、存储每位教职工的个人信息:基本工资、津贴、房帖、交通补贴、 房租、储蓄、交通费、会费信息。 3、该系统可对职工的信息进行查询、添加、修改、删除和储存。并且 该系统可对职工的个人所得税、应发工资、应扣工资、实际工资做出自动计算。 二、设计内容及要求 1、实现对职工信息如基本工资、津贴、房帖、交通补贴、房租、储蓄、 交通费、会费信息的录入,将数据文件导入工资信息,将工资信息导入磁盘文件。 2、可利用职工的编号对相应职工的信息进行查询、浏览职工的相应信 息。 3、可对系统进行维护,包括对在职职工的信息的查询、修改;对非在 职职工的信息的删除。 4、要通过文件记录职工工资的信息。 三、课程设计工作计划 1、确定题目,成立设计小组,做用户需求分析(10月11日) 2、查阅资料,进行问题分析,制定方案,确定成员分工(10月13日

-10月20日) 3、根据方案编写程序并进行调试(10月21日-11月05日) 4、撰写设计说明书,完成设计(11月06日-11月10日) 5、提交设计内容,答辩(11月10日-11月25日) 四、相关教材及参考书目 1、《C++程序设计》 作者:刘娜娜 出版社:北京航天航空大学出版社。2008 2、《C++程序设计实用教程【M】》 作者:苏仕华 出版社:清华大学出版社。2006 目录 一、需求分析 (4) 二、系统总体设计 (4) 三、模块功能实现 (5) 四、系统的软硬件环境 (8) 五、系统的使用说明 (9) 六、结束语............................................ 错误!未定义书签。

企业工资管理系统需求分析

企业工资管理系统需求分析

引言 随着社会经济的迅速发展和科学技术的进步,以计算机和软件工程为基础的信息系统正是蓬勃发展的时期。企业工资管理系统的内容对于企业的管理者来说都至关重要,所以企业工资管理系统应该能够为用户提供充足的信息和快捷的查询手段。所以工资管理信息系统能够为高层领导者提供准确的人员信息,以便领导者了解企业各个部门的人员构成,计算好人力成本,安排好工作计划,使企业变的更高效,更具有生命力。因此,开发工资管理系统更具有一定的社会现实意义。 1.业务概述 1.1传统模式处理业务介绍 在计算机诞生之前,人们对帐目的管理一直采用的是纸质材料记录,人工统计和计算。这样的管理不但费时费力,也容易产生计算上的错误和各种疏漏;随着时代的变迁,这种混乱的情形有所改善,但采取的依然是人工操作,工作量大的时候,出现错误的机率也随之升高。目前我国还有一部分企业停留在原始的人力管理职工工资的方式上,这样的机制既不能适应时代的发展,又不利于企业自身的发展,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 当今社会,资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分,因为企业每个月都要涉及发放企业员工工资的问题。而随着企业人员数量的增加,企业的工资管理也变得越来越复杂。企业员工的人数越多,工资的统计工作就越多,工资的发放困难就越大。如果能够实现工资管理的自动化,无疑将给企业管理部门带来很大的方便。传统的纸介材料的数据信息管理方式已经不适合现代企业公司的发展了,实现工资管理的系统化、规范化、自动化,将成为现代公司管理工资的首选。

C#+员工信息管理系统的设计课程设计

河南理工大学 计算机科学与技术学院 课程设计 2011 — 2012学年第二学期 课程名称C#Windows程序设计课设 设计题目人事管理系统 学生姓名 学号 专业班级软件工程.net 指导教师 2012 年6月7日 目录 封面...........................1 目录...........................2

1.设计任务书.......................4 1.1题目与要求.....................4 1.2本系统涉及的知识点.................4 2.功能设计........................4 3.数据库设计.......................5 3.1数据库概念设计(E-R图) ...............5 3.2数据库逻辑结构设计.................6 3.3数据库物理设计...................6 4.系统实现........................6 4.1界面设计及实现...................6 4.2部门信息管理设计及实现...............11 4.2.1添加部门信息...................11 4.2.2浏览部门信息...................13 4.2.3修改部门信息...................14 4.2.4删除部门信息...................16 5.总结..........................18 致谢...........................18 参考文献.........................18

企业职工工资管理系统 附代码

#include #include #include #define E 50 void Creat(); void Creat2(); void Creat3(); void Chakan(); void Chakan2(); void Chakan3(); void add(); void del(); void xiugai(); void findnum(); void findname(); void findname2(); void findshijian(); void gengxin(); void findtime(); void jisuan(); void jisuan2(); void jisuan3(); void pai(); void put(); int number; float sum; struct employee { char num[5]; char name[10]; char sex[3]; char shengri[10]; char degree[10]; int nianxian; } emp[E]; struct emp_kao { char num[5]; char name[10]; char riqi[10];

int tianshu; }emp_kaoqin[E]; struct emp_gong { char num[5]; char name[10]; float zhiwugongzi,zhiwubutie,zhufangbutie,kaoqin,yingfagongzi,yanglaobaoxian,zhufang,shifagongzi; }emp_gongzi[E]; void main () { char YN[3]; char *Y="Y"; char *N="N"; int i; int LL; //put(); printf(" ********企业职工工资管理系统********\n"); kaishi: printf("\n创建文件(请选【1】)\n 操作文件(请选【2】)\n 查看文件(请选【3】)\n 更新文件(请选【4】)\n"); scanf("%d",&LL); if(LL==1) { Creat(); printf("\n创建考勤记录文件??Y/N(注意大写)\n"); scanf("%s",&YN); if (strcmp(YN,Y) == 0) { Creat2(); printf("\n创建工资信息文件??Y/N(注意大写)\n"); scanf("%s",&YN); if (strcmp(YN,Y) == 0) { Creat3(); goto kaishi; } else { goto kaishi; } } else { goto kaishi;

C语言课程设计职工信息管理系统设计

C语言课程设计职工信息管理系统设计 集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]

1.设计目的 在今天这个高速信息时代,许多繁杂的办公事务都由计算机代劳,例如职工信息管理等重复劳动越来越需要计算机来处理。本系统就是为提高企业管理职工信息的效率而设计的,现在职工信息管理系统发挥无可取代的作用。 职工信息管理系统是一个可以用来进行职工工号、姓名等自然信息以及各项工资构成进行录入、查询、修改、删除、增加和排序浏览等操作的应用软件。 2.设计的总体思想 本系统是用Visual C进行设计与开发,总体思想是结构化、模块化的程序设计。由于主要实现的是管理系统的增、删、改、查和排序等功能,因此应用到程序设计中的基本控制结构,如循环和选择,还使用到C语言最具特色的语言成分——指针,高效地使用数组、字符串和结构体,采用经典的排序方法——冒泡法进行排序,并且包含对文件的读、写等基本操作。 3.功能模块描述 职工信息管理系统是为企业进行职工信息管理提供辅助而设计的,需要为用户提供一个简单的人机界面以便操作,各功能模块如下。 1)登录模块:根据输入的登录密码判断是否允许该用户使用本系统,输入密码正确才 能进入管理界面,管理职工信息。 2)创建模块:当第一次使用本系统时,根据提示输入职工的工号、姓名、性别、年 龄、学历、职位、工资、电话和住址,可一次性输入多条职工的信息记录。浏览模块:可以浏览经输入、修改、删除、添加、排序、读取后的职工信息。 3)查询模块:分为根据工号、姓名、电话、工资查询的四个具体需求,分别提示管理 员要查询的职工信息的的工号、姓名、电话或工资。 4)修改模块:分为根据工号、姓名修改的两个具体需求,分别提示管理员要修改的职 工信息的工号和姓名,如果有对应职工的信息记录存在,则逐项列出对应职工的信息。

职工工资管理系统设计课程设计含源代码

设计题目职工工资管理系统设计

xxx技术学院课程设计任务书

二、对课程设计成果的要求(包括课程设计说明书、图纸、图表、实物等软硬件要求) (1)分析职工工资管理系统程序结构: 画出程序粗略的流程图和各个模块的详细流程图,每个功能模块用文字说明他们的功能(与对应流程图放在一起); (2)对你已经实现的功能(修改的、新编写的)做详细的说明, 并附上流程图及程序清单。 (3)自己对该职工工资管理系统的进一步设想; (4)对于有设想但最终未实现的功能的大致编程思路的阐述; (5)论述在设计过程中遇到的并且对你具有启发性的问题。 (6)严禁抄袭,发现雷同,双方扣分。 三、课程设计工作进度计划: 周一、二:教师布置任务,讲解本课设模块。画出主程序粗略的流程图和各个模块的详细流程图。设计程序及调试程序。 周三、四:设计程序及调试程序。同时着手写报告。 周五:完成设计,提交报告,接受教师考评。 四、主要参考资料 (1)《面向对象程序设计》,郑莉,清华大学出版社, (2)《面向对象程序设计C++语言》,朱战立等编西安电子科技大学出版社 (3)《面向对象程序设计----Visual C++》,刘斌等编, 清华大学出版社 (4)《面向对象程序设计----C++语言描述》, Richard Johnsonbaugh(美)等著,蔡宇辉等译,机械工业出版社,2003

目录 1 概述: (5) 1.1 基本功能 (5) 1.2 拓展功能 (5) 2 课题分析 (6) 2.1 类的设计 (6) 2.2类的实现 (6) 3 详细设计说明 (7) 3.1 程序主界面 (7) 3.2 方案 (7) 3.3 程序描述(输入INPUT) (9) 4 课程设计总结 (12) 5 软件使用说明 (12) 6 附录(参考文献,原代码:) (13) 6.1 参考文献: (13) 6.2 原代码 (13)

相关文档
最新文档