教师工资管理系统C实现

教师工资管理系统C实现
教师工资管理系统C实现

教师工资管理系统

一.选题背景

二.需求分析

一、设计选题与目标

1.选题要求:

教师工资管理系统

每个教师的信息为:教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、应发工资、电话费、水电费、房租、所得税、卫生费、公积金、合计扣款、实发工资。注:应发工资=基本工资+津贴+生活补贴;合计扣款=电话费+水电费+房租+所得税+卫生费+公积金;实发工资=应发工资-合计扣款。

A、教师信息处理

(1)输入教师信息

(2) 插入(修改)教师信息:

(3) 删除教师信息:

(4) 浏览教师信息:

提示:具体功能及操作参考题1。

B、教师数据处理:

(1) 按教师号录入教师基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。

(2) 教师实发工资、应发工资、合计扣款计算。

提示:计算规则如题目。

(3) 教师数据管理

提示:输入教师号,读出并显示该教师信息,输入新数据,将改后信

息写入文件

(4) 教师数据查询:

提示:输入教师号或其他信息,即读出所有数据信息,并显示出来。

(5) 教师综合信息输出

提示:输出教师信息到屏幕。

2.目标

教师数据处理:

(1) 按教师号录入教师基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。

(2) 教师实发工资、应发工资、合计扣款计算。

计算规则如题目。

(3) 教师数据管理

输入教师号,读出并显示该教师信息,输入新数据,将改后信息写入文件

(4) 教师数据查询:

输入教师号或其他信息,即读出所有数据信息,并显示出来。

(5) 教师综合信息输出

输出教师信息到屏幕

三.总体设计

利用六个模块分别实现教师信息的输入,修改,删除,查询,保存以及信息文件的读入功能。并使用不同的函数实现不同的功能。使用链表存储及处理数据。

程序流程图如下:

四.详细设计

1.功能模块

共分为六个模块:

(1)输入教师信息模块

在主菜单中运用结构体teacher,输入教师信息,首先建立链表,将用户信息储存到链表中,输入完成后提示用户是否继续输入,如果用户输入“Y”,则再次调用,实现继续输入教师信息的操作。如果用户输入”NO“,则返回主菜单界面。

(2)修改教师信息模块

在主函数中调用void change_id(),修改记录操作需要对数组中目标元素的数据域中的值进行操作。首先请用户输入要修改的教师编号,然后若找到该记录就提示用户输入各个信息。

(3)删除教师信息模块

在主函数中调用void delete_id(),以删除教师信息,首先按学号查询教师信息,如果没有找到教师信息,给出提示。如果找到教师信息,将教师信息显示出来,提示用户删除。

(4)查询教师信息

查询分三种,调用void show_all()显示所有教师信息;调用void search_id()按编号查询教师信息;调用void search_name()按姓名查询教师信息。

(5)读入教师信息文件模块

调用void readfromfile()函数从文件导入教师信息

(6)保存并退出模块

调用void writetofile()写入文件。

2.函数的设计与调用

(1)主函数的设计

编写主函数的主要任务就是确定调用函数以及控制屏幕显示。

(2)其他函数

1)原型void show_all;

功能展出所有录入文件

参数无

返回值无

工作方式调用 char name[10]; float salary;float allowance; float life; float tel;float utilities;float rent;float due; float health; float fund;

1float total; float should; float actual;

2)原型void tea_new

功能创建新的信息录入

参数无

返回值无

工作方式创建file

3)原型void searchmenu;

功能查找菜单

参数无

返回值无

工作方式调用void search_id;void search_name;

4)原型void search_id;

功能查找信息按编号查找

参数无

返回值整个信息

工作方式调用 number

5)原型void search_name;

功能查找信息按姓名查找

参数无

返回值整个信息

工作方式调用char name

6)原型void delete_id

功能删除数据按编号删除

参数无

返回值无

工作方式调用 id

7)原型 void change_id;

功能改变数据按编号改参数无

返回值整个录入信息

3.数据结构的设计

定义结构体teacher,用于存放教师的信息。

struct teacher

{

int number; 教师编号

char name[10]; 教师姓名

float salary; 教师基本工资

float allowance; 教师津贴

float life; 教师生活补贴

float tel; 教师电话费

float utilities; 教师水电费

float rent; 教师房租

float due; 教师所得税

float health; 教室卫生费

float fund; 教师公积金

float total; 教师合计扣款

float should; 教师应发工资

float actual; 教师实发工资

}tea[500];

4.算法实现

链表是算法的关键。在添加新的数据时,可以表头插入也可以表尾插入,这两种插入方法决定了其他成员函数数据的处理。本系统中采取的是表尾插入的方法。在删除某信息时需要判断数据是在表头,表中还是表尾,如果删除的是在表中,则需要将删除的前后链表连接起来。统大量运用了链表的5种基本操作:建立链表、链表的插入、删除、输入和查找。

5.程序清单

#include

#include

#include

#include

/*教师工资管理系统结构体定义*/

struct teacher

{

int number;

char name[10];

float salary;

float allowance;

float life;

float tel;

float utilities;

float rent;

float due;

float health;

float fund;

float total;

float should;

float actual;

}tea[500];

int num=0;

FILE *fp;

void mainmenu();

void readfromfile();

void writetofile();

void show_all();

void tea_new ();

void searchmenu();

void search_id();

void search_name();

void delete_id();

void change_id();

void main()

{

readfromfile();

while(1)

{

mainmenu();

}

}

//主菜单

void mainmenu()

{

char choic;

system("cls");

printf("\t----------------欢迎使用\(^o^)/~-------------------\n");

printf("\t****************教师工资管理系统******************\n\n"); printf("\t---------------[1]输入教师信息--------------------\n");

printf("\t---------------[2]修改教师信息--------------------\n");

printf("\t---------------[3]删除教师信息--------------------\n");

printf("\t---------------[4]查询教师信息--------------------\n");

printf("\t---------------[5]保存并退出----------------------\n");

printf("\t**************************************************\n"); printf("\t请输入所需的服务项目序号: \n");

choic=getch();

switch(choic)

{

case'1':tea_new ();break;

case'2':change_id ();break;

case'3':delete_id ();break;

case'4':searchmenu();break;

case'5':writetofile();break;

default:mainmenu();

}

}

//从文件导入

void readfromfile()

{

if((fp=fopen("teacher.bin","rb"))==NULL)

{

printf("\n\t教师工资信息文件不存在哟(*/ω╲*)");

if((fp=fopen("teacher.bin","wb"))==NULL)

{

printf("\n\t建立失败");

exit(0);

}

else

{

printf("\n\t教师工资信息文件已建立(~o ̄3 ̄)~");

printf("\n\t按回车键进入主菜单");

getch();

return;

}

exit(0);

}

fseek(fp,0,2);

if(ftell(fp)>0)

{

rewind(fp);

for(num=0;!feof(fp) && fread(&tea[num],sizeof(struct teacher),1,fp);num++);

printf("\n\t教师工资信息文件导入成功(* ̄3 ̄)╭");

printf("\n\t文件中无任何记录(=@__@=)");

printf("\n\t按回车键进入主菜单");

getch();

return;

}

}

//写入文件

void writetofile()

{

int i;

if((fp=fopen("teacher.bin","wb"))==NULL)

{

printf("\n\t打开文件失败(*/ω╲*)");

}

for(i=0;i

{

if(fwrite(&tea[i],sizeof(struct teacher),1,fp)!=1)

{

printf("\n\t文件写入错误!(>﹏<)\n");

}

}

fclose(fp);

printf("\n\t教师工资信息文件已保存");

printf("\n\t按任意键退出程序(* ̄ω ̄)\n\t");

exit(0);

}

//添加记录

void tea_new()

{

printf("请输入教师号:");

scanf("%d",&tea[num].number);

printf("请输入教师姓名:");

scanf("%s",tea[num].name);

printf("请输入教师基本工资:");

scanf("%f",&tea[num].salary);

printf("请输入教师的津贴:");

scanf("%f",&tea[num].allowance);

printf("请输入教师的生活补贴:");

scanf("%f",&tea[num].life);

printf("请输入教师的电话费:");

scanf("%f",&tea[num].tel);

printf("请输入教师的水电费:");

scanf("%f",&tea[num].utilities);

printf("请输入教师的房租:");

scanf("%f",&tea[num].rent);

printf("请输入教师的所得税:");

scanf("%f",&tea[num].due);

printf("请输入教师的卫生费:");

scanf("%f",&tea[num].health);

printf("请输入教师的公积金:");

scanf("%f",&tea[num].fund);

tea[num].should =tea[num].salary +tea[num].allowance +tea[num].life;

tea[num].total=tea[num].tel+tea[num].utilities

+tea[num].rent+tea[num].due+tea[num].health+tea[num].fund;

tea[num].actual=tea[num].should-tea[num].total;

num++;

printf("是否继续添加?(Y/N)");

if(getch()=='y')

tea_new ();

return;

}

//查询菜单

void searchmenu()

{

char choic;

system("cls");

printf("\n\t------------查询-------------------");

printf("\n\t--------[1]显示所有----------------");

printf("\n\t--------[2]按编号查询--------------");

printf("\n\t--------[3]按姓名查询--------------");

printf("\n\t--------[4]返回主菜单--------------");

printf("\n\t请选择:\n");

choic=getch();

switch(choic)

{

case'1':show_all();break;

case'2':search_id();break;

case'3':search_name();break;

case'4':mainmenu();break;

}

}

//显示所有

void show_all()

{

int i;

system("cls");

if(num!=0)

{

for(i=0;i

{

printf("\n\t编号: %d",tea[i].number);

printf("\n\t姓名: %s",tea[i].name);

printf("\n\t基本工资: %.5f",tea[i].salary);

printf("\n\t津贴: %.5f",tea[i].allowance);

printf("\n\t生活补贴: %.5f",tea[i].life);

printf("\n\t电话费: %.5f",tea[i].tel);

printf("\n\t水电费: %.5f",tea[i].utilities);

printf("\n\t房租: %.5f",tea[i].rent);

printf("\n\t所得税: %.5f",tea[i].due);

printf("\n\t卫生费: %.5f",tea[i].health);

printf("\n\t公积金: %.5f",tea[i].fund);

printf("\n\t应发工资: %.5f",tea[i].should);

printf("\n\t合计扣款: %.5f",tea[i].total);

printf("\n\t实发工资: %.5f",tea[i].actual);

if(i+1

{

printf("\n\t_____________________");

system("pause");

}

}

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

}

else

printf("\n\t文件中无记录┭┮﹏┭┮");

printf("\n\t按回车键回到主菜单");

getch();

return;

}

//按编号查询

void search_id()

{

int mark=0;

int i,a=0;

int id;

printf("\n\t请输入编号:");

scanf("%d",&id);

for(i=0;i

{

if(id==tea[i].number)

{

printf("\n\t******以下是你要查找的教师工资信息******\n");

printf("\n\t编号: %d",tea[i].number);

printf("\n\t姓名: %s",tea[i].name);

printf("\n\t基本工资: %.5f",tea[i].salary);

printf("\n\t津贴: %.5f",tea[i].allowance);

printf("\n\t生活补贴: %.5f",tea[i].life);

printf("\n\t电话费: %.5f",tea[i].tel);

printf("\n\t水电费: %.5f",tea[i].utilities);

printf("\n\t房租: %.5f",tea[i].rent);

printf("\n\t所得税: %.5f",tea[i].due);

printf("\n\t卫生费: %.5f",tea[i].health);

printf("\n\t公积金: %.5f",tea[i].fund);

printf("\n\t应发工资: %.5f",tea[i].should);

printf("\n\t合计扣款: %.5f",tea[i].total);

printf("\n\t实发工资: %.5f",tea[i].actual);

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

printf("\n\t按回车键回到主菜单");

mark++;

getch();

return;

}

}

if(mark==0)

{

printf("\n\t没有该编号的信息");

printf("\n\t按回车键返回主菜单");

getch();

return;

}

}

//按姓名查询

void search_name()

{

int mark=0;

int i,a=0;

char name[10];

printf("请输入姓名:");

scanf("%s",name);

for(i=a;i

{

if(strcmp(tea[i].name,name)==0)

{

printf("\n\t******以下是你要查找的教师工资信息******\n");

printf("\n\t编号: %d",tea[i].number);

printf("\n\t姓名: %s",tea[i].name);

printf("\n\t基本工资: %.5f",tea[i].salary);

printf("\n\t津贴: %.5f",tea[i].allowance);

printf("\n\t生活补贴: %.5f",tea[i].life);

printf("\n\t电话费: %.5f",tea[i].tel);

printf("\n\t水电费: %.5f",tea[i].utilities);

printf("\n\t房租: %.5f",tea[i].rent);

printf("\n\t所得税: %.5f",tea[i].due);

printf("\n\t卫生费: %.5f",tea[i].health);

printf("\n\t公积金: %.5f",tea[i].fund);

printf("\n\t应发工资: %.5f",tea[i].should);

printf("\n\t合计扣款: %.5f",tea[i].total);

printf("\n\t实发工资: %.5f",tea[i].actual);

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

mark++;

if((i+1)

{

printf("\t\n是否继续查找相同名字的教师信息:(y/n)");

if(getch()=='y')

{

a=i;continue;

}

else

return;

}

else

{

printf("\n\t按回车键返回主菜单");

getch();

return;

}

}

}

if(mark!=0)

{

printf("\n\t没有相同姓名的教师信息记录");

printf("\n\t按回车键回到主菜单");

getch();

return;

}

else

{

printf("\n\t没有相同姓名的教师信息记录");

printf("\n\t按回车键回到主菜单");

getch();

return;

}

}

//删除菜单

void delete_id()

{

int i,j;

int deletemark=0;

int id;

printf("\n\t情输入要删除的编号:");

scanf("%d",&id);

if(num==0)

{

printf("\n\t对不起,文件中无任何教师工资信息记录");

printf("\n\t按回车键回到主菜单");

getch();

return;

}

for(i=0;i

{

if(id==tea[i].number)

{

printf("\n\t******以下是你要删除的教师工资信息******\n");

printf("\n\t编号: %d",tea[i].number);

printf("\n\t姓名: %s",tea[i].name);

printf("\n\t基本工资: %.5f",tea[i].salary);

printf("\n\t津贴: %.5f",tea[i].allowance);

printf("\n\t生活补贴: %.5f",tea[i].life);

printf("\n\t电话费: %.5f",tea[i].tel);

printf("\n\t水电费: %.5f",tea[i].utilities);

printf("\n\t房租: %.5f",tea[i].rent);

printf("\n\t所得税: %.5f",tea[i].due);

printf("\n\t卫生费: %.5f",tea[i].health);

printf("\n\t公积金: %.5f",tea[i].fund);

printf("\n\t应发工资: %.5f",tea[i].should);

printf("\n\t合计扣款: %.5f",tea[i].total);

printf("\n\t实发工资: %.5f",tea[i].actual);

printf("\n\t是否删除?(y/n)");

if(getch()=='y')

{

for(j=i;j

tea[j]=tea[j+1];

num--;

deletemark++;

printf("\n\t删除成功");

printf("\n\t是否继续删除?(y/n)");

if(getch()=='y')

delete_id();

return;

}

else

return;

}

continue;

}

if(deletemark==0)

{

printf("\n\t没有该教师的记录");

printf("\n\t是否继续删除?(y/n)");

if(getch()=='y')

delete_id();

}

}

//修改菜单

void change_id()

{

int a=0,findmark=0;

int i;

int id;

printf("\n\t请输入要修改教师的编号:");

scanf("%d",&id);

for(i=a;i

{

if(id==tea[i].number)

{

printf("\n\t******以下是你要修改的教师工资信息******\n");

findmark++;

printf("\n\t编号: %d",tea[i].number);

printf("\n\t姓名: %s",tea[i].name);

printf("\n\t基本工资: %.5f",tea[i].salary);

printf("\n\t津贴: %.5f",tea[i].allowance);

printf("\n\t生活补贴: %.5f",tea[i].life);

printf("\n\t电话费: %.5f",tea[i].tel);

printf("\n\t水电费: %.5f",tea[i].utilities);

printf("\n\t房租: %.5f",tea[i].rent);

printf("\n\t所得税: %.5f",tea[i].due);

printf("\n\t卫生费: %.5f",tea[i].health);

printf("\n\t公积金: %.5f",tea[i].fund);

printf("\n\t应发工资: %.5f",tea[i].should);

printf("\n\t合计扣款: %.5f",tea[i].total);

printf("\n\t实发工资: %.5f",tea[i].actual);

i=i;

break;

}

else continue;

}

printf("\n\t请重新输入以下信息:\n");

printf("请输入教师号:");

scanf("%d",&tea[num].number);

printf("请输入教师姓名:");

scanf("%s",tea[num].name);

printf("请输入教师基本工资:");

scanf("%f",&tea[num].salary);

printf("请输入教师的津贴:");

scanf("%f",&tea[num].allowance);

printf("请输入教师的生活补贴:");

scanf("%f",&tea[num].life);

printf("请输入教师的电话费:");

scanf("%f",&tea[num].tel);

printf("请输入教师的水电费:");

scanf("%f",&tea[num].utilities);

printf("请输入教师的房租:");

scanf("%f",&tea[num].rent);

printf("请输入教师的所得税:");

scanf("%f",&tea[num].due);

printf("请输入教师的卫生费:");

scanf("%f",&tea[num].health);

printf("请输入教师的公积金:");

scanf("%f",&tea[num].fund);

tea[num].should =tea[num].salary +tea[num].allowance +tea[num].life;

tea[num].total=tea[num].tel+tea[num].utilities

+tea[num].rent+tea[num].due+tea[num].health+tea[num].fund;

tea[num].actual=tea[num].should-tea[num].total;

printf("\n\t以下是你修改后的教师工资信息:\n");

findmark++;

printf("\n\t_________________________________");

printf("\n\t编号: %d",tea[i].number);

printf("\n\t姓名: %s",tea[i].name);

printf("\n\t基本工资: %.5f",tea[i].salary);

printf("\n\t津贴: %.5f",tea[i].allowance);

printf("\n\t生活补贴: %.5f",tea[i].life);

printf("\n\t电话费: %.5f",tea[i].tel);

printf("\n\t水电费: %.5f",tea[i].utilities);

printf("\n\t房租: %.5f",tea[i].rent);

printf("\n\t所得税: %.5f",tea[i].due);

printf("\n\t卫生费: %.5f",tea[i].health);

printf("\n\t公积金: %.5f",tea[i].fund);

printf("\n\t应发工资: %.5f",tea[i].should);

printf("\n\t合计扣款: %.5f",tea[i].total);

printf("\n\t实发工资: %.5f",tea[i].actual);

printf("\n\t_________________________________");

printf("\n\t按回车键回到主菜单");

getch();

return;

}

五.程序运行结果测试

六.结论与心得

在设计与编写程序的过程中,我捡起了很多自己以前没有注意到的细节,并对一些知识特别是链表的运用有了更好的掌握,巩固了所学,提升了自己的能力。

老师和学长们总是建议我们不要眼高手低,不要一味的看书看例程,要自己去写程序,之前我对此不以为意,经过这次课程设计,我改变了原先的看法。真的是只有你自己去动手编程,才会发现自己是否真正掌握了那些知识,才会对所学的知识有更好的理解与运用能力,并且能加深记忆。此外,动手编程的过程本身对自己就是一种锻炼,只能看懂例程而缺少实际设计编写程序能力与经验的人是不会成为一名合格的程序员的。

通过这次课程设计设计我学会了很多,也更加熟悉c语言程序设计,从中得到很多乐趣。

薪资管理系统的设计方案

薪资管理系统的设 计方案 完整薪资系统的设计 人力市场跟「钱」的市场是一样的,哪边有好处就往哪边跑。因此每家公司如何在人力市场当中,挑到「适合」自己公司的人才,

就非常重要的。这里特别强调「适合」的原因,是因为不是找到全世界最好的人才,就是最好。因为,每家公司有其薪资水准、规模大小、工作环境、企业文化等等,这些都是很重要的因素,例如,并不是全部找台大毕业的,公司就会变得比较好。 对於一个负责设计薪资系统的人,心中一定要有结构图,薪资应包含哪些项目? 每一个项目在整个薪资系统中的意义是什麽? 将来要如何变化?大家常听到与薪资有关的名词,例如本俸、伙食津贴、交通津贴、管理加给、绩效奖金、年终奖金、分红等等,这些名词大家似乎都耳熟能响,可是要能找到几个人,来解释这些项目应如何应用,及其结构应如何设计,可能就不多了。 1.薪资设计的基本精神 虽然不论薪资系统设计的多好,都有人会不满意,但至少好的薪资系统,应包含下列层面: 1.1.、合理薪资 - 重新以合乎社会行情的薪资,进行薪资设计 - 薪资与员工自己辛苦及付出相等→效率、能力 - 须比较公司内其它同职等、同性质工作员工的薪资 - 薪资须依职务(工作)来划分、考量 - 解决各部门奖金差异过大的情形 - 薪资调整的规则透明化 1.2奖金的来源

- 日常奖金→与员工本身效率的提升及部门绩效有关 - 员工红利→视公司获利的情况 - 专案奖金→以登记有案之专案为主 - 年终奖金→逐渐朝固定的做法制定(例如本俸2或3个月) 1.3部门主管的薪资 - 权责、绩效结合的薪资 - 采年薪制,依部门主管的权责制定其年薪总额 - 其中经、副理,视其职务情况需要者,亦纳入年薪制 - 不论任何部门主管,依每年目标及绩效,决定所得 - 薪资高低决定在自己 - 公司利益与主管息息相关 1.4一般水准以上的福利制度 2.薪资的设计步骤 一般情况,薪资的设计实在相当的麻烦,因为这中间牵涉相当多的因素,有的是与公司政策相关,有的是外界行业间的比较,如果不花费心血,真的不容易改变薪资结构。不过薪资设计的过程虽然繁杂,但还是有一定的顺序与步骤,只要按照些顺序进行,还是能够整理出头绪的,有关薪资设计步骤大约下列几项。 2.0 认清公司的人事理念与人事政策 2.1.调查外界或同行(业)起薪水准 2.2.决定自己公司薪资政策-新人起薪总额及中高阶层人员每月月

UML课程设计-工资管理系统

统一建模语言UML 课程设计报告 工资管理系统分析与设计 姓名: 学号: 班级: 指导教师: 《UML(Unified Modeling Language统建模语言)》课程设计任务书

指导教师(签字):教研室主任(签字): 一、工资管理系统的需求分析 1.系统功能需求 (1)员工可以进入此系统查询工资和查看基本的信息。 (2)管理员可以对员工的信息进行添加,删除,修改。并对数据库中的数据维护,包括数据备份,导入数据,导出数据。

满足上述需求的系统主要包括下面几个模块 (1)数据库维护模块:管理员要对数据库内所有的数据进行备份和恢复,并可实现数据导入导出功能。 (2)基本信息管理模块:实现对员工基本信息的管理操作,包括员工基本数据信息的添加、修改、删除和查询等功能。 (3)信息浏览查询模块:用户对系统中的信息进行查询。可根据条件查询员工历史工资数据(如按月份查询、按姓名查询、按部门查询等)。 2 3

4 查询员工信息:员工查询自己的信息。 查询工资:员工查询自己的工资情况。 二、系统的UML建模 1、系统的用例图 创建用例图之前首先需要确定参与者。 ①在工资管理系统中,需要员工的参与,员工可以查询工资的历史数据并领取工资,还可以通过员工编号查看员工的基本信息。 ②管理员是此系统的核心,管理着整个系统。他要对所有的员工的信息的管理,对数据进行添加,删除,修改。管理员还要对系统进行相关维护操作,数据备份,数据恢复,数据导入等以及更新数据库。 (1)系统用户参与的总的用例图 管理员和员工都可发从用户这个参与者中泛化而来,用户是指此系统的所有使用者,以登录系统完成相应的操作。

最新教师工资管理系统分析与设计

教师工资管理系统分析与设计 一、系统开发的目的与意义 (一)开发目的 现在我国的学校教师档案信息的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。作为一个计算机应用的本科生,希望可以在这方面有所贡献。改革的总设计师邓小平同志说过“科学技术是第一生产力”,希望能用自身所学的知识编制出一个实用的程序来帮助教育行政部门进行简单的教师档案管理。 (二)开发意义 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对教师档案信息进行管理,具有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高教师档案信息管理的效率,也是教育的科学化、正规化管理,与世界接轨的重要条件。 二、需求分析与详细调查 (一)可行性分析 在现行系统初步调查的基础上就可以提出新系统目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。新系统目标应充分体现学校的战略目标、发展方向和基本特点,直接为学校管理服务,同时,新系统目标应该和现行系统的各项基本功能密切相关,并且可以分期分批实现。需要指出的是,新系统目标不可能在总体规划阶段就提得非常具体,它还将在开发过程中逐步明确和定量化。在新系统中要更好地体现出简单明了的操作,避免以前的繁琐操作。新系统的目标确定后,就可以从以下几个面对能否实现新系统目标进行可行性分析。 1、经济上的可行性 估算新系统的开发费用和今后的运行、维护费用,估计新系统将获得的效益,并将费用与效益进行比较,看是否有利。开发、运行和维护费用主要包括: 购买和安装设备的费用:计算机硬件、系统软件、机器、电源、空调等; 软件开发费用:若由本单位的技术人员开发,则该项费用可以计入下面的人员费用一项; 人员费用:系统开发人员、操作人员和维护人员的工资、培训费用等;由于本项目的特殊性该部分费用可节省。 消耗品费用:系统开发所用材料、系统正常运行所用消耗品,例如电费,打印纸、软盘、开发软件等开支; 其它费用:系统的效益可以从经济效益和社会效益两方面考虑。对于学校管理信息系

员工工资管理系统c语言编程

#include #include #include #include #define null 0 typedef struct Info1 { char num[10]; char name[10]; char depar[10]; char yfsalary[10]; char aband[10]; char tax[10]; char sfsalary[10]; struct Info1 *next; }Info2; typedef struct Info1 *Info; Info head; void display(); void find(); void modify(); void add(); void del(); void list(); void listOne(Info s); Info isExists(char *num); void init(); void init() { head=(Info)malloc(sizeof(Info2)); head->next=null; } void main() { init(); while(1) {

char c; display(); scanf("%c",&c); switch(c) { case '1':find();break; case '2':add();break; case '3':modify();break; case '4':del();break; case '5':list();break; case '6':printf("\t\t...退出系统!\n");return; default: printf("\t\t输入错误!请按任意键返回重新选择(1-7)\n");getchar(); } } } void display() { printf("\n\t** 欢迎使用员工信息管理系统 **\n\n"); printf("\t请选(1-7):\n"); printf("\t============================================\n"); printf("\t\t1.查询员工信息\n"); printf("\t\t2.录入员工信息\n"); printf("\t\t3.修改员工信息\n"); printf("\t\t4.删除员工信息\n"); printf("\t\t6.显示所有员工信息\n"); printf("\t\t7.退出系统\n"); printf("\t============================================\n"); printf("\t您的选择是: "); } void listOne(Info p) { printf("\n该员工信息记录如下: "); printf("\n==========================================================\n\n"); printf("%-12s%-10s%-10s%-7s%-7s%-10s%-10s%\n","员工编号","姓名","部门","应付工资","保险","税金","实付工资"); printf("%-12s%-10s%-10s%-7s%-7s%-10s%-10s%\n",p->num,p->name,p->depar,p->yf salary,p->aband,p->tax,p->sfsalary); } Info isExists(char *num)

学校工资管理系统

教师工资管理系统 一.选题背景 xxx 二.需求分析 一、设计选题与目标 1.选题要求: 教师工资管理系统 每个教师的信息为:教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、应发工资、电话费、水电费、房租、所得税、卫生费、公积金、合计扣款、实发工资。注:应发工资=基本工资+津贴+生活补贴;合计扣款=电话费+水电费+房租+所得税+卫生费+公积金;实发工资=应发工资-合计扣款。 A、教师信息处理 (1)输入教师信息 (2) 插入(修改)教师信息: (3) 删除教师信息: (4) 浏览教师信息: 提示:具体功能及操作参考题1。 B、教师数据处理: (1) 按教师号录入教师基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。 (2) 教师实发工资、应发工资、合计扣款计算。 提示:计算规则如题目。 (3) 教师数据管理

提示:输入教师号,读出并显示该教师信息,输入新数据,将改后信息写入文件 (4) 教师数据查询: 提示:输入教师号或其他信息,即读出所有数据信息,并显示出来。 (5) 教师综合信息输出 提示:输出教师信息到屏幕。 2.目标 教师数据处理: (1) 按教师号录入教师基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。 (2) 教师实发工资、应发工资、合计扣款计算。 计算规则如题目。 (3) 教师数据管理 输入教师号,读出并显示该教师信息,输入新数据,将改后信息写入文件 (4) 教师数据查询: 输入教师号或其他信息,即读出所有数据信息,并显示出来。 (5) 教师综合信息输出 输出教师信息到屏幕 三.总体设计 利用六个模块分别实现教师信息的输入,修改,删除,查询,保存以及信息文件的读入功能。并使用不同的函数实现不同的功能。使用链表存储及处理数据。 程序流程图如下:

工资管理系统设计报告

目录 一、项目名称:工资管理系统设计 (3) 二、实训目的: (3) 三、应掌握的知识点 (3) 四、应训练的能力点 (3) 五、数据库设计内容 (3) (一)需求分析 (3) (二)数据库概念设计 (3) (三)数据库逻辑设计 (5) (四)数据库与数据表设计——物理结构设计 (5) 1.数据库与数据表设计 (5) 2.数据完整性设计 (6) 六、数据库操作实施与结果——数据库对象的设计 (8) (一)建数据库——工资管理库 (7) (二)建表——员工信息表、部门信息表、工资信息表 (7) (三)视图 (9) (四)存储过程 (9) (五)触发器 (10) (六)索引 (11) (七)运行和维护 (12) 1. 关系图的建立 (12) 2. 简单查询 (12) 3. 复杂查询 (15) 4.数据库的用户与权限管理 (17)

5.数据库的备份 (20) 6.数据的导入与导出 (21) 七、总结 (22) 八、评语 (23)

一、项目名称:工资管理系统设计 二、实训目的: ●了解数据库系统的理论 ●掌握数据库设计的基本方法,熟悉数据库设计的步骤; ●通过设计数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力, 提高分析问题和解决问题的能力 ●学习基本数据库编程方法(薪酬设计) ●快速跟踪数据库系统软件的新技术及市场应用动态。 三、应掌握的知识点 ●数据库基本原理 ●关系数据库的设计方法、设计思路 ●初步掌握一种关系数据库语言 四、应训练的能力点 ●SQL Server 2000的操作与使用 ●数据库的概念设计与逻辑设计 ●数据库的建立与管理、数据表的建立与操作 ●SQL查询语言的使用与编程 ●设计和开发一个数据库应用系统的数据库设计部分

C++课程设计高校职工工资管理系统

课程设计报告 课程名称面向对象程序设计 课题名称高校工资管理系统 专业通信工程 班级1302 学号201303020222 姓名王树材 指导教师乔汇东胡瑛 2015年1月3日

湖南工程学院 课程设计任务书 课程名称面向对象程序设计 课题高校工资管理系统 专业班级通信1302 学生姓名王树材 学号201303020222 指导老师乔汇东、胡瑛、黄哲 审批 任务书下达日期2014年12月26日任务完成日期2015 年 1 月3日

一、设计内容与设计要求 1.课程设计目的: 面向对象程序设计课程设计是集中实践性环节之一,是学习完《面向对象程序设计》课程后进行的一次全面的综合练习。要求学生达到熟练掌握C++语言的基本知识和技能;基本掌握面向对象程序设计的思想和方法;能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题,从而提高动手编程解决实际问题的能力。 2.课题题目 ⑴公司考勤管理系统 ⑵高校学籍管理系统 ⑶高校工资管理系统 ⑷高校人事管理系统 ⑸文件加密管理系统 3.设计要求: ⑴设计课题题目:第5个课题是扩展课题,有能力完成的同学可以选择。 其余每位同学根据自己学号除以4所得的余数加一选择相应题号的课题。换题 者不记成绩。 ⑵根据自己对应的课题完成以下主要工作:①完成系统需求分析:包括系 统设计目的与意义;系统功能需求(系统流程图);输入输出的要求。②完成 系统总体设计:包括系统功能分析;系统功能模块划分与设计(系统功能模块 图)。③完成系统详细设计:包括数据库需求分析;类层次图;界面设计与各 功能模块实现。④系统调试:调试出现的主要问题,编译语法错误及修改,重 点是运行逻辑问题修改和调整。⑤使用说明书及编程体会:说明如何使用你编 写的程序,详细列出每一步的操作步骤。⑥关键源程序(带注释) ⑶按规定格式完成课程设计报告,将其打印稿(A4纸)上交给老师存档。 ⑷不得抄袭他人程序、课程设计报告,每个人应体现自己的个性设计。二、进度安排

教师工资管理系统

教师工资管理系统 题U:教师工资管理系统院系专业: 姓名:学号: 2012年3月13日 C语言程序设讣报告书 一、程序设il?的U的和题U要 -5 -四、遇到的问题及解决方法分析、体 -11 - 1?遇到的问题及解决方 -11 - 2.心得体 -15 - C语言程序设讣报告书

一.程序设计的U的和题U要求

用所学过的c语言程序设计知识,掌握结构化程序设il?的基本思路和方法,利用所学的基本知识和技能,发挥自学能力和查找资料的能力,解决稍微复杂的结构化程序设讣问题,加深对所学知识的理解与掌握,增强学生利用自己所学知识解决实际问题的能力,为以后的程序开发打下基础。 1.初步掌握开发一个小型实用系统的基本方法:结合实际应用的要求,使课程 设计既覆盖知识点,乂接近工程实际需要。通过激发学习兴趣,调动学生主动学习 的积极性,并引导他们根据实际编程要求, 训练自己实际分析问题的能力及编程 能力,并养成&好的编程习惯。 2?使学生掌握,语言的基本概念、语法、语义和数据类型的使用特点。 3?使学生掌握,语言程序设计的方法及编程技巧,能正确使用,语言编写程序。 4?使学生掌握调试程序的基本方法及上机操作方法。 5?掌握书写程设计开发文档的能力,使学生学会撰写课程设计总结报告。课程 设计的思想和方法还可以作为学生做毕业论文时的参考资料。 本次课程设汁主要U的在于,通过综合程序课程设计,加深对《C语言》课程所学知识的理解,进一步巩固C语言讲法规则。学会编制结构清晰、风格ft好、数据结构适当的C 语言程序,从而培养和提高 C语言程序设计?报告书 学生的独立分析问题和解决实际问题的能力。 题U要求: 每个教师的信息为:教师号、姓名、性别、单位名称、家庭住址、联系电话、 基本工资.津贴、生活补贴.应发工资、电话费、水电费、房租.所得稅、卫生费、公积金、合计扣款、实发工资。注:应发工资二基本工资+津贴+生活补贴;合计 扣款二电话费+水电费+房租+所得稅+卫生费+公积金;实发工资=应发工资,合计扣款。A、教师信息处理 信息(1)输入教师 插入(修改)教师信息删除教师信息浏览教师信息查询教师信息导入教师信息

人事工资管理系统设计与实现

人事工资管理系统设计与实现 人事工资治理系统设计与实现 【摘要】 (3) 【关键字】 (3) 第一章绪论 (3) 1.1研究课题的背景 (3) 1.2 研究思路和工作打算 (3) 第二章治理信息系统研究概述 (4) 2.1治理信息系统的进展历史 (4) 2.2治理信息系统的特点 (5) 2.3治理信息系统的开发方式 (6) 2.4治理信息系统的开发过程 (7) 第三章工资治理系统分析与设计 (9) 3.1系统功能需求简介 (9)

3.2功能需求描述 (10) 3.3目标系统要求 (10) 3.4系统平台选择 (11) 3.5数据库设计 (11) 3.5.1数据库介绍 (11) 3.5.2数据流图 (11) 3.5.3数据词典分析 (12) 第四章人事工资治理系统的功能实现 (13) 4.1职员差不多信息模块编码设计 (13) 4.2工资结构设置模块编码设计 (20) 4.3入口程序 (21) 4.4连编程序 (21) 第五章小结 (22)

【摘要】对企业而言,人力资源是企业最宝贵的资源,也是企业的“生命线”。而工资治理又是人力资源治理的重中之重。实行电子化的工资治理,能够让人力资源治理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。本文介绍毕业设计课题的选题背景和意义,相关的研究和开发的比较和综述,研究开发的过程,以及设计思路和实现细节的考虑,最后给出了作者在毕业设计过程的体会。 【关键字】治理信息系统,数据库,工资治理,实体关系图(E-R图),数据字典,数据流图。 第一章绪论 1.1研究课题的背景 借助现代信息技术和治理理论,建立企业治理信息系统是当今社会的重要趋势。党和政府依照知识经济时代的特点,对国民经济建设提出了“用信息化带动工业化”的指导思想。对企业而言,全面开发和应用运算机治理信息系统确实是近期不能回避的问题。在企业治理中,人力资源是企业最宝贵的资源,也是企业的“生命线”,因此人事治理是企业的运算机治理信息系统重要组成部分。而工资治理又是人力资源治理的重中之重。实行电子化的工资治理,能够让人力资源治理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。工资治理信息系统的实现能够减轻比较繁琐的手工工资治理。 现在应用在大中型企业的治理信息系统中,几乎都包括了工资治理模块。有些环境中是由作为大型ERP软件中的一个模块引进的,有些是作为企业的财务系统的一部分。这些依照规范的西方的治理制度设计的工资治理软件,在专门多时候还不能完全解决中国特色的中小企业的问题,本文介绍的毕业设计的研究工作确实是要为这些具有中国特色的中小企业解决他们在工资治理方面的问题。 通过在本单位通过一周的调研,并参考其他同行设计工资治理软件,我差不多上搞清晰了像

教师工资管理系统课程设计

《数据库课程设计》任务书 一、课程设计的目的 《数据库课程设计》是软件工程专业(本科)教学大纲要求的重要实践性环节之一,是学习完《数据库原理及应用》和《Oracle数据库应用》两门课程后进行的一次数据库方面的综合练习。其目的在于:配合《数据库原理及应用》和《Oracle数据库应用》课程的教学,使学生能巩固和加深对数据库基础理论和基本知识的理解;掌握使用数据库进行软件设计的基本思想和方法;提高学生运用数据库理论解决实际问题的能力;培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。 二、课程设计的内容及要求 内容:用一种高级语言和当前流行的数据库管理系统相结合,完成一个小型管理系统的设计与开发。所设计的小型管理系统应包含两个以上(不多于4个)的模块以及输入输出、查询、插入、删除等基本功能。根据课程设计2周时间的安排选择适当大小的设计课题,课题的选择可以是实际问题,也可以是虚构的问题。根据题目的基本需求,画出系统结构图,并对数据库进行详细设计,编写程序,同时写出关于本数据库管理系统的报告书。 要求: (1) 要求学生按照《数据库原理及应用》和《Oracle数据库应用》相关知识以及《数据库课程设计》教学大纲完成一个数据库设计,并撰写相应的课程设计报告。 (2)提交课程设计报告。 要求完成课程设计报告大约15页-20页,包括相应的模块设计文档、数据库设计文档、所承担模块的核心代码、测试过程分析与运行结果等。分组进行的同学共同完成基本设计与数据库设计,但每个人至少必须独立完成一个模块设计与实现,并写入课程设计报告中。 三、课程设计时间 课程设计时间为2周(10个工作日) 四、课程设计分组 一人一组 五、课程设计的成果和形式 1.报告一篇 建议论文按下列的提纲书写 2.符合设计要求的数据库应用系统一个 指导教师签字: 年月日

工资管理系统设计报告

目录 一、项目名称:工资管理系统设计 (2) 二、实训目的: (2) 三、应掌握的知识点 (2) 四、应训练的能力点 (2) 五、数据库设计内容 (3) (一)需求分析 (3) (二)数据库概念设计 (3) (三)数据库逻辑设计 (5) (四)数据库与数据表设计——物理结构设计 (5) 1.数据库与数据表设计 (5) 2.数据完整性设计 (6) 六、数据库操作实施与结果——数据库对象的设计 (7) (一)建数据库——工资管理库 (7) (二)建表——员工信息表、部门信息表、工资信息表 (7) (三)视图 (9) (四)存储过程 (9) (五)触发器 (10) (六)索引 (11) (七)运行和维护 (12) 1. 关系图的建立 (12) 2. 简单查询 (12) 3. 复杂查询 (15) 4.数据库的用户与权限管理 (17) 5.数据库的备份 (20) 6.数据的导入与导出 (21) 七、总结 (22) 八、评语 (23)

一、项目名称:工资管理系统设计 二、实训目的: ●了解数据库系统的理论 ●掌握数据库设计的基本方法,熟悉数据库设计的步骤; ●通过设计数据库系统应用课题,进一步熟悉数据库管理系统的操作技术,提高动手能力, 提高分析问题和解决问题的能力 ●学习基本数据库编程方法 ●快速跟踪数据库系统软件的新技术及市场应用动态。 三、应掌握的知识点 ●数据库基本原理 ●关系数据库的设计方法、设计思路 ●初步掌握一种关系数据库语言 四、应训练的能力点 ●SQL Server 2000的操作与使用 ●数据库的概念设计与逻辑设计 ●数据库的建立与管理、数据表的建立与操作 ●SQL查询语言的使用与编程 ●设计和开发一个数据库应用系统的数据库设计部分

C语言课设职工工资管理系统

C语言课设职工工资管 理系统 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

一引言 C语言是CombinedLanguage(组合语言)的中英混合简称。是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。设计一个程序的过程就是解决一个实际问题的过程,从解决实际问题的角度,我们可以这样来看:首先要了解这个问题的基本要求,即输入、输出、完成从输入到输出的要求是什么;在次我们必须捋清思路,逐一的解决问题的各个方面,即从输入开始入手,着重考虑如何从输入导出输出,在这个过程中,可确定所需的变量、数组、函数、结构体和文件等,然后确定处理过程。 本课题中主要应用了C语言中的数组、结构体、文件等关键技术。在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型;结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,也叫结构,在结构体中的变量,可以是相同、部分相同,或完全不同的数据类型,结构体只能描述一个对象的状态,不能描述一个对象的行为。文件是一种组织外部存储介质上的数据的数据类型。它具有两个特征:一是对一个数据集合可以用一个名字命名;二是保存在外部存储介质上,可以长期保存。 通过此次课设可以锻炼学生理论联系实际能力,提高学生适应实际、实践编程的能力,使对C语言系统编程有一个大致的了解,并达到如下目的:1.熟悉C语言程序的编辑、编译链接和运行的过程。2.熟练运用if语句和switch语句以及嵌套应用。3.学习并掌握C语言定义函数的基本方法、声明函数及调用函数的方法和过程。4.掌握文件的概念以及文件的定义方法,认识文件打开、关闭、读、写等文件基本操作函数。5.掌握结构体类型变量、数组的定义和使用。6.掌握数组的定义、引用以及输入输出的方法、通过字符数组存储字符串,进一步使用字符串。

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

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

课程设计教师工资管理系统 运行平台:(其他平台未经测试,不一定保证有效) 制作者:弓箭中南大学信息科学与工程学院 源代码如下: #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;

人事工资管理系统设计与实现

人事工资管理系统设计与实现 【摘要】 (3) 【关键字】 (3) 第一章绪论 (3) 1.1研究课题的背景 (3) 1.2 研究思路和工作计划 (3) 第二章管理信息系统研究概述 (4) 2.1管理信息系统的发展历史 (4) 2.2管理信息系统的特点 (5) 2.3管理信息系统的开发方式 (6) 2.4管理信息系统的开发过程 (7) 第三章工资管理系统分析与设计 (9) 3.1系统功能需求简介 (9) 3.2功能需求描述 (10) 3.3目标系统要求 (10) 3.4系统平台选择 (11) 3.5数据库设计 (11) 3.5.1数据库介绍 (11)

3.5.2数据流图 (11) 3.5.3数据词典分析 (12) 第四章人事工资管理系统的功能实现 (13) 4.1员工基本信息模块编码设计 (13) 4.2工资结构设置模块编码设计 (20) 4.3入口程序 (21) 4.4连编程序 (21) 第五章小结 (22)

【摘要】对企业而言,人力资源是企业最宝贵的资源,也是企业的“生命线”。而工资管理又是人力资源管理的重中之重。实行电子化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。本文介绍毕业设计课题的选题背景和意义,相关的研究和开发的比较和综述,研究开发的过程,以及设计思路和实现细节的考虑,最后给出了作者在毕业设计过程的体会。 【关键字】管理信息系统,数据库,工资管理,实体关系图(E-R图),数据字典,数据流图。 第一章绪论 1.1研究课题的背景 借助现代信息技术和管理理论,建立企业管理信息系统是当今社会的重要趋势。党和政府根据知识经济时代的特点,对国民经济建设提出了“用信息化带动工业化”的指导思想。对企业而言,全面开发和应用计算机管理信息系统就是近期不能回避的问题。在企业管理中,人力资源是企业最宝贵的资源,也是企业的“生命线”,因此人事管理是企业的计算机管理信息系统重要组成部分。而工资管理又是人力资源管理的重中之重。实行电子化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。工资管理信息系统的实现可以减轻比较繁琐的手工工资管理。 现在应用在大中型企业的管理信息系统中,几乎都包括了工资管理模块。有些环境中是由作为大型ERP软件中的一个模块引进的,有些是作为企业的财务系统的一部分。这些根据规范的西方的管理制度设计的工资管理软件,在很多时候还不能完全解决中国特色的中小企业的问题,本文介绍的毕业设计的研究工作就是要为这些具有中国特色的中小企业解决他们在工资管理方面的问题。 通过在本单位经过一周的调研,并参考其他同行设计工资管理软件,我基本上搞清楚了像我

员工工资管理系统c语言编程

员工工资管理系统c语言 编程 The latest revision on November 22, 2020

#include<> #include<> #include<> #include<> #define null 0 typedef struct Info1 { char num[10]; char name[10]; char depar[10]; char yfsalary[10]; char aband[10]; char tax[10]; char sfsalary[10]; struct Info1 *next; }Info2; typedef struct Info1 *Info; Info head; void display(); void find(); void modify(); void add(); void del(); void list(); void listOne(Info s); Info isExists(char *num); void init(); void init() { head=(Info)malloc(sizeof(Info2)); head->next=null; } void main() { init(); while(1) { char c;

display(); scanf("%c",&c); switch(c) { case '1':find();break; case '2':add();break; case '3':modify();break; case '4':del();break; case '5':list();break; case '6':printf("\t\t...退出系统!\n");return; default: printf("\t\t输入错误!请按任意键返回重新选择(1-7)\n");getchar(); } } } void display() { printf("\n\t** 欢迎使用员工信息管理系统 **\n\n"); printf("\t请选(1-7):\n"); printf("\t============================================\n"); printf("\t\t1.查询员工信息\n"); printf("\t\t2.录入员工信息\n"); printf("\t\t3.修改员工信息\n"); printf("\t\t4.删除员工信息\n"); printf("\t\t6.显示所有员工信息\n"); printf("\t\t7.退出系统\n"); printf("\t============================================\n"); printf("\t您的选择是: "); } void listOne(Info p) { printf("\n该员工信息记录如下: "); printf("\n===================================================== =====\n\n"); printf("%-12s%-10s%-10s%-7s%-7s%-10s%-10s%\n","员工编号","姓名","部门","应付工资","保险","税金","实付工资"); printf("%-12s%-10s%-10s%-7s%-7s%-10s%-10s%\n",p->num,p->name,p->depar,p->yfsalary,p->aband,p->tax,p->sfsalary); } Info isExists(char *num)

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

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

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

教师工资管理系统

教师工资管理系统 题目: 教师工资管理系统院系专业: 姓名: 学号: 2012年 3月 13日 C语言程序设计报告书 目录 一、程序设计的目的和题目要 求 .................................................................. - 2 - 二、流程 图 ..................................................................... ............................... - 4 - 三、源代码程序...................................................................... ....................... - 5 - 四、遇到的问题及解决方法分析、体 会 .................................................... - 11 - 1.遇到的问题及解决方 法 .................................................................... - 11 - 2.心得体会...................................................................... ...................... - 15 - - 1 - C语言程序设计报告书 一、程序设计的目的和题目要求

用所学过的C语言程序设计知识,掌握结构化程序设计的基本思路和方法,利用所学的基本知识和技能,发挥自学能力和查找资料的能力,解决稍微复杂的结构化程序设计问题,加深对所学知识的理解与掌握,增强学生利用自己所学知识解决实际问题的能力,为以后的程序开发打下基础。 1. 初步掌握开发一个小型实用系统的基本方法:结合实际应用的要求,使课程设计既覆盖知识点,又接近工程实际需要。通过激发学习兴趣,调动学生主动学习的积极性,并引导他们根据实际编程要求,训练自己实际分析问题的能力及编程能力,并养成良好的编程习惯。 2.使学生掌握,语言的基本概念、语法、语义和数据类型的使用特点。 3.使学生掌握,语言程序设计的方法及编程技巧,能正确使用,语言编写程序。 4.使学生掌握调试程序的基本方法及上机操作方法。 5.掌握书写程设计开发文档的能力,使学生学会撰写课程设计总结报告。课程设计的思想和方法还可以作为学生做毕业论文时的参考资料。 本次课程设计主要目的在于,通过综合程序课程设计,加深对《C语言》课程所学知识的理解,进一步巩固C语言讲法规则。学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而培养和提高 - 2 - C语言程序设计报告书 学生的独立分析问题和解决实际问题的能力。 题目要求: 每个教师的信息为:教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、应发工资、电话费、水电费、房租、所得税、卫生费、公积金、合计扣款、实发工资。注:应发工资=基本工资+津贴+生活补贴;合计

工资管理系统设计说明书

工资管理系统详细设计说明书 ———软工1502第三组刘召组

目录 1引言 (1) 1.1编写目的 (1) 1.2项目背景 (1) 1.3定义 (1) 1.4参考资料 (1) 2任务概述 (2) 2.1目标 (2) 2.2运行环境 (2) 2.3需求概述 (2) 2.4条件与限制 (3) 3程序描述 (3) 4接口设计 (6) 4.1用户接口 (6) 4.2外部接口 (6) 4.3内部接口 (6) 5数据结构设计 (6) 5.1数据结构 (6) 5.2数据结构与程序的关系 (7) 6运行设计 (7)

7系统出错处理设计 (10) 8程序描述 (10)

1引言 1.1编写目的 本文档将对职工工资软件开发需求进行描述,本文档的读者是项目策划、设计和评审人员。 1.2项目背景 随着计算机应用的日益普及和深化,网上办公已经成为一种趋势。部分公司的工资处理还处于较为原始的手工阶段,一直由会计人工计算工资并编制财务报表,缺少一套实用可靠的管理系统软件。随着公司规模扩大,工作量也越来越大,目前需要多名会计紧张工作才能完成,不仅效率低,而且成本高。今后公司规模进一步扩大,人工计算工资的成本还会进一步提高,利用计算机管理系统管理公司势在必行。 1.3定义 列出本文件中用到的专门术语的定义和外文首字母组词的原词组。 1.4参考资料 张海藩,软件工程导论。北京:清华大学出版社,2008 张敬,软件工程教程。北京:航空航天大学出版社

(美)Patrick O'Neil Elizabeth O'Neil,《数据库原理、编程与应用》。机械工业出版社 百度文献 2任务概述 2.1目标 实行电子化智能化的工资管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来, 去完成更重要的工作。实现企业更大的工作效益和利润。提高工作效率,减少人力;节省开支; 2.2运行环境 硬件、软件、运行环境、开发环境等条件。 硬件环境要求如下:奔腾II或更高档的计算机、笔记本电脑; 运行时内存的要求是10MB以上; 安装所需硬盘空间是150MB; 打印机可选激光打印机。 软件环境要求如下:中文Windows95/Windows98/Windows2000/Me/xp/7;Windows NT 4.0。 2.3需求概述 系统开发基于C/S的开发模式,界面直观、简洁,人机交互性强。基于表单和弹出式窗口的数据录入方式,菜单电击的方式操作。用户使用时,只要是按照格式和要求填入信息,

c语言课程设计报告职工工资管理系统

c 语言课程设计报告职工工资管理系统 1 课程设计报告 课程设计报告 题目:职工工资管理系统 设计者: 专业班级: 学号: 指导教师: 所属院系: 2011 年 6 月29 日 一.设计需求说明 一、职工工资管理系统功能设计要求 1.输入记录:将每一个职工的姓名、ID 号以及基本工资、职务工资、岗位 津贴、医疗保险、公积金的数据作为一个记录。?该软件能建立一个新的数据文件或给已建立好的数据文件增加记录。 2.显示记录:根据用户提供的记录或者根据职工姓名显示一个或几个职工的 各项工资和平均工资。

3.修改记录:可以对数据文件的任意记录的数据进行修改并在修改前后对记 录内容进行显示。 4.查找记录: 可以对数据文件的任意记录的数据进行查找并在查找前后对记录内容进行显示。 5. 删除记录:可删除数据文件中的任一记录。 6.恢复记录:能恢复被删除的任一记录。 7.统计:(A)计算各项工资平均工资及总工资,(B)?统计符合指定条件(如职 工工资前三项之和在2000 元以上、2000~1500 元、1500~1000 元)以内的工资职工人数及占总职工人数的百分比。(C)按字符表格形式打印全部职工工资信息表及平均工资(?包括各项总的平均工资)。 8.保存数据文件功能。 9.打开数据文件功能。 经过逐层逐块、不断细化、求精过程,编写程序并进行测试、验证,可以 逐 个模块地分开调试,并通过文件包含或用工程文件的形式进行逐步联合调试。程序运行结果如下表所示(记录个数至少8 个)。 二.模块设计分析系统功能模块图: 工作程序分析 ①输入:输入职工工资资料

通过结构体的数组来进行操作,先头定义数组em[] ,先输入需要输入的职工人数m,然后进入循环,每次循环将各项输入结构体数组对应项的对应成员中,当循环次数等于人数时,完成全部员工的资料输入,退出循环。同时将数据储存在 ckerk_list 文件中并自动保存至磁盘。 注:如首次使用,尚未输入数据,请先输入数据。输入的数据将自动保 存。 再次选择输入功能时原数据将被覆盖。 ②保存:将输入的资料存入磁盘 读取文件clerk_list ,若文件不存在,打印“打开失败并退出。若存在,则通过循环语句将输入到结构体数组的数据逐个输入磁盘。 ③读取:读取磁盘中的资料 打开文件clerk_list ,若文件不存在,打印“打开失败”并退出。若存在,读取文件中的数据,并返回职工人数。 ④显示:显示职工工资资料 先通过读取函数的返回值确定职工人数m,再通过循环将员工工资资料逐个打印,当循环次数达到m 时退出循环。其中总工资由程序计算,总工资=基本工资+职务工资+津贴-医疗保险-公积金 ⑤删除:删除某员工的资料 打印员工资料并提示输入要删除职工的姓名,输入后若该职工不存在则打印“查无此人”;若存在,则显示该职工资料并询问是否确定删除。若确定,则删除。删除时,通过对比输入的姓名与资料中的姓名做对比从而确定要删除

相关文档
最新文档