课程设计之职工信息管理系统

合集下载

职工信息管理系统课设报告

职工信息管理系统课设报告

*******************实践教学*******************计算机与通信学院20 年春季学期C程序设计课程设计题目:职工信息管理系统专业班级:姓名:学号:指导教师:成绩:_____________ __摘要职工信息管理系统是一个工作单位不可缺少的管理工具,它管理的数据对于公司的决策者和管理者来说都至关重要,所以职工信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。

使用计算机对职工信息进行管理,具有手工管理所无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高职工管理的效率,也是公司的科学化、正规化管理和与世界接轨的重要条件。

本系统利用C语言开发,实现了简单的职工基本信息的录入、追加、修改、查询、删除等操作,并且能利用文件系统长久地保留原始数据。

通过本系统的开发,我们熟悉了面向过程的程序设计的基本方法和步骤,对于C语言有了更深入的理解,并且较好地掌握了C语言的编程方法和技术。

关键字:C语言;职工;信息管理系统;函数目录一、需求分析 (1)二、总体设计 (2)三、详细设计 (3)3.1数据定义 (3)3.2主函数设计 (4)3.3算法流程图 (5)四、编码 (9)五、测试 (10)5.1职工管理系统主界面 (10)5.2进入新增职工信息界面 (11)5.3进入删除职工信息界面 (12)5.4进入查询职工信息界面 (13)5.5进入修改职工信息界面 (14)5.6进入职工信息排序界面 (15)5.7退出系统 (16)六、设计总结 (17)致谢 (18)参考文献 (19)附录 (20)一、需求分析1.1问题描述对单位的职工进行管理,包括插入、删除、查找、排序等功能。

1.2要求职工对象包括姓名(字符串)、性别(字符)、出生年月(数字)、工作年月(数字)、学历(字符串)、职务(字符串)、住址(字符串)、电话(字符串)等信息。

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

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

南京工程学院程序设计课程设计报告职工信息管理系统设计专业学生姓名班级学号指导教师完成日期职工信息管理系统设计目录1课程设计目的 (1)2课程设计内容 (1)3设计流程图 (1)4源程序清单 (2)5小结 (27)程序设计课程设计报告(2011)职工信息管理系统的设计1课程设计目的1.加深对《C语言程序设计》课程知识的理解,掌握C语言应用程序的开发方法和步骤;2.进一步掌握和利用C语言进行程序设计的能力;3.进一步理解和运用结构化程序设计的思想和方法;4.初步掌握开发一个小型实用系统的基本方法;5.学会跳是一个较长程序的基本方法;6.学会利用流程图火N-S图表示算法;7.掌握书写长须设计开发文档的能力(书写课程设计报告)2 课程设计内容设计职工信息管理系统,要求职工心想包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

设计一职工信息管理系统,使之能提供以下功能:(6)系统以菜单方式工作(7)职工信息录入功能(职工信息用文件保存)--输入(8)职工信息浏览功能--输出(9)查询和排序功能(至少一种查询方式)--算法(10)按工资查询(11)按学历查询等(12)职工信息删除、修改功能(任选项)3设计流程图职工信息管理系统的设计程序设计课程设计报告(2011)(1)菜单函数void menu() /*菜单函数*/{printf(" ☆☆☆计算机科学与技术软件技术☆☆☆\n");printf("\n");printf(" ∮1010704422 杨婷婷∮\n");printf("\n");printf(" ******************职工信息管理****************\n");printf(" 1.录入职工信息");printf(" 2.浏览职工信息\n");printf(" 3.查询职工信息");printf(" 4.删除职工信息\n");printf(" 5.添加职工信息");printf(" 6.修改职工信息\n");printf(" 7.退出\n");printf(" ********************谢谢使用******************\n");printf("\n");printf("\n");}(2)录入职工信息void append(){if((fp=fopen("worker.xls","a"))==NULL){printf("\n不能打开该文件!");exit();}printf("\n请输入添加职工信息(姓名、职工号、性别、年龄、学历、职位、工资、电话、地址)\n"); scanf("%s%s%s%s%s%s%s%s%s",,one.num,one.sex,one.age,one.record,one.positio n,one.wanges,one.tel,one.addr);fprintf(fp,"%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15s\n",,one.num,one.sex,o ne.age,one.record,one.position,one.wanges,one.tel,one.addr);fclose(fp);}(3)查询职工信息数据查找共分为职工号、姓名等方式查找void search(){int l;printf("\t\t\t\t*姓名查找按:1*\n");printf("\t\t\t\t*学历查找按:2*\n");printf("\t\t\t\t*职工号查按:3*\n");scanf("%d",&l);if(l>0&&l<4){switch(l){职工信息管理系统的设计case 1:nameway();break;case 2:xueliway();break;case 3:numway();break;}printf("\n\n操作完毕!!!");}else printf("\t\t\t\t输入有误!!!");}void nameway(){int k=0;char nam[8];printf("\n请输入您要查找的职工姓名:");scanf("%s",nam);if((fp=fopen("worker.xls","rb"))==NULL){printf("\n不能打开文件!");exit();}while(!feof(fp)){fscanf(fp,"%s%s%s%s%s%s%s%s%s\n",,one.num,one.sex,one.age,one.record,one.p osition,one.wanges,one.tel,one.addr);if(strcmp(nam,)==0){printf("\n\n已查到,记录为:");printf("\n%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15s\n",,one.num,one.sex,one .age,one.record,one.position,one.wanges,one.tel,one.addr);k=1;}}if(k==0)printf("\n\n对不起,查无此人!。

C语言课程设计报告:职工信息管理系统程序设计

C语言课程设计报告:职工信息管理系统程序设计

1.课程论文题目职工信息管理系统程序设计一、题目要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计一职工信息管理系统,使之能提供以下功能:(1)系统以菜单的方式工作。

(2)职工信息录入功能(职工信息用文件保存)。

(3)职工浏览功能。

(4)职工信息查询功能,查询方式可按学历查询或者工号查询。

(5)职工信息的删除、修改功能(可选项)。

2.程序设计思路1、设计思路(1)根据题目要求,应该把职工工资信息用结构体形式输入,在定义一个全局变量和文件指针进行整个程序的运行,然后把职工工资信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;(2)在程序中需实现职工工资浏览、查询、统计等功能的操作,所以需要建立相应的功能模块来实现;(3)另外还需要提供键盘式选择菜单实现功能,在运行时达到所要的目的。

3.功能模块图5.算法设计1.主函数提供输入、处理和输出部分的函数调用,各功能模块采用菜单方式选择。

2浏览模块【分析】该模块的功能是浏览职工的全部信息3排序模块4查询模块【分析】该模块的功能是根据输入的职工按照工号和学历查找对应的记录,找到以后,可进行继续查找或修改信息的操作。

流程图如下:5修改模块【分析】该模块的功能是显示所有职工的信息,考虑到记录较多,建议采用分屏显示。

显示完所有记录后,输入要修改的职工的工号,根据工号查到职工的记录,并提示用户修改该记录的哪部分信息,根据用户做的选择修改相应信息。

流程图如下:6.程序代码#include<stdio.h>#define N 50struct worker{char id[50];char name[20];char sex[10];char age[10];char edu[20];char salary[10];char address[20];char tel[20];}worker[N];void save(int n) //保存函数,保存n个记录{ FILE *fp;int i;if((fp=fopen("worker.txt","wb"))==NULL) //以只写方式为输出打开一个二进制文件{ printf("\nCannot open file\n");}for(i=0;i<n;i++)if(fwrite(&worker[i],sizeof(struct worker),1,fp)!=1)printf("file write error\n");fclose(fp);}int load() //加载函数{ FILE *fp;int i;if((fp=fopen("worker.txt","rb"))==NULL){printf("\nCannot open file\n");return NULL;}for(i=0;!feof(fp);i++)fread(&worker[i],sizeof(struct worker),1,fp);fclose(fp);return(i-1);}void no_input(int i,int n) //工号输入函数,i表示第i个职工的信息,n 表示比较到第n个职工{ int j,k,w1;do{w1=0;printf("工号:");scanf("%s",worker[i].id);for(j=0;worker[i].id[j]!='\0';j++)if(worker[i].id[j]<'0'||worker[i].id[j]>'9') //判断工号是否为数字{puts("请重新输入!\n");w1=1;break;}if(w1!=1)for(k=0;k<n;k++) //比较到第N个职工if(k!=i&&strcmp(worker[k].id,worker[i].id)==0) //判断职工号是否有雷同{puts("请重新输入!\n");w1=1;break;}}while(w1==1);}void input(int i) //输入一个记录的函数{ no_input(i,i);printf("姓名:");scanf("%s",worker[i].name);printf("性别:");scanf(" %s",&worker[i].sex);printf("年龄:");scanf("%s",&worker[i].age);printf("工资:");scanf("%s",worker[i].salary);printf("学历:");scanf("%s",&worker[i].edu);printf("住址:");scanf("%s",worker[i].address);printf("电话:");scanf("%s",worker[i].tel);}void printf_one(int i) //显示一个记录的函数{printf("%10s %10s %5s %5s %8s %6s %10s %10s\n",worker[i].id,worker[i].name,worker[i].sex,worker[i].age,worker[i].salary,worker[i].edu,worker[i].address,worker[i].tel); }void printf_back() //一个任务结束后选择是好似浏览还是返回{ int k,w;printf("\n\n\tSuccessful^-^.\n\n");printf("接下来做什么?\n\n\t1).浏览全部\t2).返回: [ ]\b\b");scanf("%d",&w);if(w==1)browse();else menu();}modify_data(int i,int n) //修改函数{ int c,w1;do{puts("\nmodify by=>\n\n 1).工号 2).姓名 3).性别 4).年龄 5).工资6).学历 7).地址 8).电话 9).取消");printf("请选择?:[ ]\b\b");scanf("%d",&c);if(c>9||c<1){puts("\nChoice error!please again!");getchar();}}while(c>9||c<1);do{switch(c){case 1:no_input(i,n);break;case 2:printf("name:");scanf("%s",worker[i].name);break;case 3:printf("sex:");scanf("%s",worker[i].sex);break;case 4:printf("age:");scanf("%s",worker[i].age);break;case 5:printf("salary:");scanf("%s",worker[i].salary);break;case 6:printf("edu:");scanf("%s",worker[i].edu);break;case 7:printf("address:");scanf("%s",worker[i].address);break;case 8:printf("tel:");scanf("%s",worker[i].tel);break;case 9:menu();break;}puts("\nNow:\n");printf_face();printf_one(i);printf("\n确定?\n\n\t1).是2).否,重新修改3).不保存退出[ ]\b\b");scanf("%d",&w1);if(w1==1)save(n);}while(w1==2);return(w1);}printf_face() //显示数据结构项目{ printf("\n\t工号姓名性别年龄工资学历地址电话号码\n"); }void enter() //输入模块{ int i,n;printf("输入多少个职工信息(0-%d):",N-1);scanf("%d",&n);printf("\n 请输入职工信息\n\n");for(i=0;i<n;i++)input(i);if(i!=0)save(n);printf_back();}browse() //浏览模块{ int i,j,n;n=load();printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)){printf("\n\n按任意键显示下一页...");getch();puts("\n\n");}printf_one(i);}printf("\t这里有 %d 条记录.\n",n);printf("\n按任意键返回...");getch();menu();}modify() //修改模块{struct worker s;FILE *fp;int i,n,k,w0=1,w1,w2=0;n=load();do{k=-1;printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)) //目的是分屏显示{printf("\n\n记住要修改的工号.按任意键显示下一页");getch();puts("\n\n");}printf_one(i); //调用显示一个记录的函数}do{printf("\n\n输入要修改的职工工号! 工号:");scanf("%s",s.id); //输入要修改的IDfor(i=0;i<n;i++) //查找要修改的数据if(strcmp(s.id,worker[i].id)==0){k=i; //找到要修改的记录s=worker[i]; //把worker[i]备份,以便恢复}if(k==-1)printf("\n\n未找到请重输");}while(k==-1); //当k=-1表示没有找到printf_face(); //调用显示数据结构项目的函数printf_one(k); //调用显示一个记录的函数w1=modify_data(k,n); //修改记录并返回保存控制值w1,w1=1表示用户已确认修改if(w1==1){printf("\Successful^_^.\n\n修改另一个?\n\n\t1).是 2).否,保存退出\t[ ]\b\b");scanf("%d",&w0);w2=1; //用来控制保存,使w2=1是标记已有过修改}else{w0=0;if(w2==1)worker[k]=s;}if(w0!=1&&w2==1)save(n);}while(w0==1);menu();}search() //查询模块{ int c,w1;do{puts("\nsearch by=>\n\n1).工号 2}.学历 3).取消并返回"); printf("Which you needed?:[ ]\b\b");scanf("%d",&c);if(c>3||c<1){ puts("\nchoice error!please again!");getchar();}}while(c>3||c<1);{switch(c){case 1:search1();break;case 2:search2();break;case 3:menu();break;}}}search1() //按工号查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n输入要查询的工号! id:");scanf("%s",s.id);printf_face();for(i=0;i<n;i++)if(strcmp(s.id,worker[i].id)==0){k=i;printf_one(k);break;}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search1();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}search2() //按学历查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n请输入你要查询的学历:\n");scanf("%s",);printf_face();for(i=0;i<n;i++)if(strcmp(,worker[i].edu)==0){k=i;printf_one(k);}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search2();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}menu(){int n,w1;do{puts("\t\t*******************菜单*******************\n\n");puts("\t\t\t\t1.录入职工信息");puts("\t\t\t\t2.浏览职工信息");puts("\t\t\t\t3.查询职工信息");puts("\t\t\t\t4.修改职工信息");puts("\t\t\t\t5.退出");puts("\t\t****************************************\n\n");printf("请选择(1~5): [ ]\b\b");scanf("%d",&n);if(n<1||n>5) //对选择的数字作判断{w1=1;getchar();}else w1=0;} while(w1==1);switch(n){case 1:enter();break; //录入 case 2:browse();break; //浏览 case 3:search();break; //查询 case 4:modify();break; //修改 case 5:exit(0); //退出}}main(){menu();}7.程序运行结果下面是各个模块的的界面截图(1)、主菜单(2)、输入模块(3)、浏览模块(3)、查找模块(4)、修改模块8.编程中遇到的困难及解决方法温故而知新,可以为师矣。

课程设计之职工信息管理系统(doc 8页)

课程设计之职工信息管理系统(doc 8页)

课程设计之职工信息管理系统(doc 8页)山东信息职业技术学院软件工程系课程设计报告书题目:职工信息管理系统系部:软件工程系专业:网络系统管理班级:07软件7班学号:2007030701姓名:同组者:_______________________组号:组长:指导教师:开始时间:2008-6-10完成时间:2008-6-16年月日下间距为:段前0.5行,段后0.5行)总体设计的目的是根据需求分析文档,初步提出问题的解决方案,以及软件系统的体系结构和数据结构的设计方案,为下一步进行详细设计做准备。

3.1 功能模块图(作为正文2级标题,用4号黑体,加粗)3.1.1 各模块逻辑图(作为正文3级标题,用小4号黑体,不加粗)该系统可以按功能进行模块划分,其模块图如下:其中:信息输入模块完成职工信息的输入功能,输入信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等;信息浏览模块完成已录入职工信息的显示;信息查询模块完成职工信息的查询,查询时对应有按工资查询和按学历查询两种方式;信息修改模块完成职工信息的修改功能;信息删除模块完成职工信息的删除功能;菜单选择模块完成用户命令的接收,此模块也是职工信息管理系统的入口,用户所要进行的各种操作均需在此模块中进行选择并进而调用其他模块实现相应的功能;3.1.2 项目分工组长的设计报告中应有各模块分工情况。

如:角色姓名学号分工(5号宋体)组长2007030701张某项目总体规划设计、模块划分、界面设计组员2007030702王某登录模块、删除模块2007030703李某查询模块2007030704孙打印模块某各组员的设计报告中应明确写明自己负责的模块名称。

3.2 数据结构(作为正文2级标题,用4号黑体,加粗)本系统中主要的数据结构就是职工的信息,包含职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等,在处理过程中各项可以作为一个职工的不同属性来进行处理。

职工管理系统课程设计

职工管理系统课程设计

职工管理系统课程设计一、教学目标本课程旨在使学生掌握职工管理系统的理论知识,培养学生运用职工管理系统进行实际操作的能力,并树立正确的职工管理理念。

具体目标如下:1.知识目标:•了解职工管理系统的定义、功能和应用范围;•掌握职工信息录入、查询、修改和删除的操作方法;•理解职工管理系统的数据分析和报表生成过程。

2.技能目标:•能够熟练使用职工管理系统进行职工信息的录入、查询、修改和删除;•能够根据需求设置职工管理系统的参数和权限;•能够运用职工管理系统进行数据分析和报表生成。

3.情感态度价值观目标:•培养学生对职工管理工作的重视和责任感;•培养学生遵守数据安全和隐私保护的原则;•培养学生积极向上、团结协作的工作态度。

二、教学内容本课程的教学内容主要包括职工管理系统的理论知识、操作方法和实践应用。

具体安排如下:1.职工管理系统的理论知识:•职工管理系统的定义、功能和应用范围;•职工信息录入、查询、修改和删除的基本操作;•职工管理系统的数据分析和报表生成原理。

2.职工管理系统的操作方法:•职工信息录入、查询、修改和删除的具体步骤;•职工管理系统的参数设置和权限管理;•数据分析和报表生成的实践操作。

3.职工管理系统的实践应用:•结合具体案例,分析职工管理系统的实际应用场景;•讨论职工管理系统在提高工作效率和促进团队协作方面的作用;•分析职工管理系统在企业管理和人力资源规划中的重要性。

三、教学方法为了提高教学效果和学生的参与度,本课程将采用多种教学方法相结合的方式进行教学。

具体方法如下:1.讲授法:通过教师的讲解,使学生了解职工管理系统的理论知识,为学生提供系统的知识结构。

2.讨论法:学生进行小组讨论,分享职工管理系统的操作经验和实践案例,促进学生之间的交流和合作。

3.案例分析法:通过分析具体案例,使学生了解职工管理系统在实际应用中的作用和效果,培养学生解决问题的能力。

4.实验法:安排上机实验环节,让学生亲自动手操作职工管理系统,巩固所学知识和技能。

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

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

c语言课程设计职工信息管理系统一、教学目标本课程的教学目标是使学生掌握C语言职工信息管理系统的基本概念、设计和实现方法。

通过本课程的学习,学生应能理解职工信息管理系统的需求分析、系统设计、编码实现和测试评估等环节,掌握C语言编程的基本技能,并培养解决实际问题的能力。

具体来说,知识目标包括:掌握职工信息管理系统的功能模块及其相互关系;理解C语言的数据类型、运算符、控制结构、函数等基本语法;了解软件工程的基本原理和方法。

技能目标包括:能够使用C语言独立完成职工信息管理系统的设计和实现;具备基本的调试和优化代码的能力;能够进行团队合作,合理分工,共同完成项目。

情感态度价值观目标包括:培养学生对计算机科学的兴趣和热情,提高他们对编程学习的自信心;培养学生具备良好的编程习惯和团队协作精神,增强他们的责任感和使命感。

二、教学内容本课程的教学内容主要包括以下几个部分:1.职工信息管理系统的基本概念和架构:介绍职工信息管理系统的功能模块,如职工信息录入、查询、修改和删除等,以及各模块之间的关系。

2.C语言基础知识:讲解C语言的数据类型、运算符、控制结构、函数等基本语法。

3.软件工程方法:介绍需求分析、系统设计、编码实现、测试评估等软件工程基本原理和方法。

4.职工信息管理系统的实现:通过实际编码,讲解如何使用C语言实现职工信息管理系统的各个功能模块。

5.调试与优化:教授如何使用调试工具对代码进行调试,以及如何对代码进行优化,提高系统性能。

三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式,包括:1.讲授法:讲解C语言的基本语法和职工信息管理系统的设计原理。

2.案例分析法:分析实际案例,使学生更好地理解职工信息管理系统的实现过程。

3.实验法:安排实验课程,让学生亲自动手编写代码,实现职工信息管理系统。

4.小组讨论法:学生进行小组讨论,分享学习心得,互相答疑解惑。

四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:《C语言程序设计》等。

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

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

摘要C是一种计算机程序设计语言,可以作为系统设计语言编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序,因此它的应用范围广阔。

本系统是根据职工信息管理工作的需要,通过C语言开发一个职工信息管理系统来实现对职工信息进行有效、准确的管理。

整个系统从简便、实用的要求出发,完成职工信息管理的全过程,包括职工信息的录入、修改、删除、查找、输出等功能。

本文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。

系统的说明了系统的设计思路、总体设计、各个功能模块的设计与实现方法。

关键词:职工信息管理系统,C语言,信息采集模块目录1.程序设计任务书要求 (4)2.程序基本框架 (5)3.C语言课程设计的目的 (6)4.详细设计报告 (7)5.程序清单 (22)6.课程设计总结 (30)后记 (32)参考文献 (33)课程设计任务书2013—2014 学年第一学期专业班级:学号:姓名:课程名称:C程序设计完成期限:自2013年12 月19日至2013年12 月26日共 1 周课程设计题目职工信息管理系统的设计与应用设计目的:进一步加深、巩固学生所学专业课程(《C程序设计》)的基本理论知识,进一步培养学生综合分析问题和解决问题的能力。

掌握运用C语言独立地编写、调试应用程序和进行其它相关设计的技能,充分发掘广大同学的潜力,使得同学们能够通过本次课程设计而得到全面的锻炼。

一、功能要求:职工信息管理系统是企业职工管理中的一项重要内容,该系统功能主要包括:(1)定义结构体类型数组存放职工信息。

(2)编写函数输出系统界面。

(3)编写各函数实现系统的追加、删除、统计、查询等功能。

该同学主要完成系统输出界面和主函数,追加,删除,统计,查询模块的设计。

二、设计任务:1、设计职工信息管理系统的功能框图、流程图; 2、编写该系统的源程序代码; 3、上机调试; 4、撰写课程设计报告。

三、开发工具:Turbo C 2.0 /Vc++6.0及UCDOS 7.0。

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

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

c语言课程设计职工信息管理系统一、教学目标本节课的教学目标是使学生掌握C语言编程的基本技能,能够使用C语言设计一个简单的职工信息管理系统。

具体目标如下:1.知识目标:使学生掌握C语言的基本语法、数据类型、运算符、控制结构等基本知识。

2.技能目标:使学生能够使用C语言编写程序,实现对职工信息的增删改查功能。

3.情感态度价值观目标:培养学生对计算机编程的兴趣,使学生认识到计算机编程在实际生活中的重要性。

二、教学内容本节课的教学内容主要包括以下几个部分:1.C语言基本语法和数据类型。

2.运算符和控制结构。

3.职工信息管理系统的设计与实现。

4.程序调试和优化。

三、教学方法为了达到本节课的教学目标,我们将采用以下教学方法:1.讲授法:讲解C语言的基本语法、数据类型、运算符和控制结构。

2.案例分析法:通过分析职工信息管理系统的案例,使学生掌握系统设计的方法。

3.实验法:让学生动手编写程序,实现职工信息的管理。

4.讨论法:分组讨论,引导学生思考如何优化程序。

四、教学资源为了支持本节课的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《C语言程序设计》。

2.参考书:《C语言编程实践》。

3.多媒体资料:讲解C语言语法和程序设计的视频教程。

4.实验设备:计算机、编程环境。

5.在线编程平台:用于学生在线编写和调试程序。

五、教学评估本节课的教学评估将采取多元化评价方式,全面公正地评价学生的学习成果。

评估方式包括:1.平时表现:通过课堂参与、提问、小组讨论等环节,评估学生的学习态度和积极性。

2.作业:布置相关的编程作业,评估学生的编程能力和对知识的掌握程度。

3.考试:安排一次课程结束考试,测试学生对C语言和职工信息管理系统设计的全面理解。

4.项目展示:学生分组设计并展示自己的职工信息管理系统,评估学生的实际操作能力和团队协作能力。

评估标准将根据课程目标和教学内容制定,确保评估的客观性和公正性。

六、教学安排本节课的教学安排将根据课程目标和学生的实际情况进行设计,确保在有限的时间内达到最佳教学效果。

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

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

c语言职工信息管理系统课程设计一、教学目标本课程的教学目标是使学生掌握C语言职工信息管理系统的基本概念、设计与实现。

通过本课程的学习,学生应达到以下知识目标:1.理解C语言的基本语法和数据结构。

2.掌握职工信息管理系统的需求分析和系统设计。

3.学会使用C语言实现职工信息管理系统的功能。

4.能够使用C语言进行程序设计。

5.能够独立完成职工信息管理系统的需求分析和系统设计。

6.能够使用C语言实现职工信息管理系统的功能并调试程序。

情感态度价值观目标:1.培养学生对计算机科学的兴趣和热情。

2.培养学生独立思考、解决问题的能力。

3.培养学生团队协作、沟通的能力。

二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、职工信息管理系统的需求分析和系统设计,以及C语言实现职工信息管理系统的方法。

1.C语言的基本语法:数据类型、变量、运算符、表达式、语句等。

2.数据结构:数组、链表、栈、队列等。

3.职工信息管理系统的需求分析:系统功能、数据流图、实体关系图等。

4.职工信息管理系统的系统设计:模块划分、模块功能、接口设计等。

5.C语言实现职工信息管理系统:代码编写、调试与优化。

三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。

1.讲授法:通过讲解C语言的基本语法、数据结构和职工信息管理系统的相关知识,使学生掌握基本概念。

2.案例分析法:分析实际案例,使学生了解职工信息管理系统的需求分析和系统设计的过程。

3.实验法:让学生动手编写C语言代码,实现职工信息管理系统的功能,培养学生的实际操作能力。

四、教学资源本课程所需教学资源包括教材、参考书、多媒体资料和实验设备。

1.教材:选用权威、实用的C语言教材,为学生提供系统、全面的学习资料。

2.参考书:提供相关领域的参考书籍,丰富学生的知识体系。

3.多媒体资料:制作课件、视频等多媒体资料,提高课堂教学效果。

4.实验设备:提供计算机、编程环境等实验设备,确保学生能够进行实际操作。

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

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

职工信息管理系统目录1.总体设计方案 (6)2.使用说明及运行实例 (8)3.项目源程序代码 (15)4.课程设计心得 (28)一、题目:职工信息管理系统二、目的和要求目的:要求熟练掌握C语言的基本知识和编辑技能;基本掌握结构化程序设计的基本思路和方法。

要求:设计一个职工信息管理系统,使之能提供以下功能:1、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!2、输入功能:职工信息录入(职工信息用文件保存),可以一次完成若干条记录的输入。

3、浏览功能:完成对全部职工信息的显示。

4、查找功能:①完成按职工的职工号查询职工的相关信息,并显示。

②完成按职工的学历查询职工的相关信息,并显示。

③完成按职工的电话号码查询职工的相关信息,并显示。

5、删除功能:通过输入职工的姓名完成对该名职工的信息进行删除。

6、添加功能:完成添加新职工的信息的任务。

7、修改功能:通过输入职工的姓名完成对该名职工的信息进行修改。

8、退出职工信息管理系统。

三、信息描述职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等。

四、解决方案1、首先进行需求分析,搞清楚系统功能和任务;2、然后在总体设计中确定模块结构、划分功能模块,将软件功能需求分配给所划分的最单元模块。

确定模块间的联系,确定数据结构、文件结构、数据库模式,确定测试方法与策略;3、在详细设计中,为每个模块确定采用的算法,选择适当的工具表达算法的过程来描述模块的详细过程。

确定每一模块采用的数据结构和模块接口的细节,包括对系统外部的接口和用户界面,对系统内部其他模块的接口;4、根据分析编写C语言代码。

五、进度安排课程设计时间为一周:第一天做的比较散漫,没做什么东西。

只是简单设计了一下系统的全局变量。

分析设计阶段编码调试阶段根据设计分析方案编写C语言代码,然后调试该代码,实现课题要求的功能。

总结报告阶段。

总结设计工作,写出课程设计说明书,包括需求分析、总体设计、详细设计、编码、测试的步骤和内容。

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

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

1.设计目的在今天这个高速信息时代,许多繁杂的办公事务都由计算机代劳,例如职工信息管理等重复劳动越来越需要计算机来处理。

本系统就是为提高企业管理职工信息的效率而设计的,现在职工信息管理系统发挥无可取代的作用。

职工信息管理系统是一个可以用来进行职工工号、姓名等自然信息以及各项工资构成进行录入、查询、修改、删除、增加和排序浏览等操作的应用软件。

2.设计的总体思想本系统是用Visual C进行设计与开发,总体思想是结构化、模块化的程序设计。

由于主要实现的是管理系统的增、删、改、查和排序等功能,因此应用到程序设计中的基本控制结构,如循环和选择,还使用到C语言最具特色的语言成分——指针,高效地使用数组、字符串和结构体,采用经典的排序方法——冒泡法进行排序,并且包含对文件的读、写等基本操作。

3.功能模块描述职工信息管理系统是为企业进行职工信息管理提供辅助而设计的,需要为用户提供一个简单的人机界面以便操作,各功能模块如下。

1)登录模块:根据输入的登录密码判断是否允许该用户使用本系统,输入密码正确才能进入管理界面,管理职工信息。

2)创建模块:当第一次使用本系统时,根据提示输入职工的工号、姓名、性别、年龄、学历、职位、工资、电话和住址,可一次性输入多条职工的信息记录。

浏览模块:可以浏览经输入、修改、删除、添加、排序、读取后的职工信息。

3)查询模块:分为根据工号、姓名、电话、工资查询的四个具体需求,分别提示管理员要查询的职工信息的的工号、姓名、电话或工资。

4)修改模块:分为根据工号、姓名修改的两个具体需求,分别提示管理员要修改的职工信息的工号和姓名,如果有对应职工的信息记录存在,则逐项列出对应职工的信息。

5)删除模块:分为根据工号、姓名删除的两个具体需求,分别提示管理员要删除的职工信息的工号和姓名,如果有则删除此职工对应的信息记录。

6)添加模块:可在原有职工信息记录的基础上增加新的职工信息记录,并保存至磁盘中。

7)排序模块:分为根据姓名、年龄、工资排序的三个具体需求,分别提示管理员选择排序的方式。

C语言课程设计报告职工信息管理系统设计范文

C语言课程设计报告职工信息管理系统设计范文
3
ACkNxIzB dirconf90°18;wugplbySvqOW thesam 命 族 民 、 家 系 心 们 我 匆 急 临 光 富 远 久 越 间 时 的 去 离 子 日 苦 : 念 一 作 化 感 ,百 昔 追 今 .抚 运 思 当 耻 国 忘 勿
分析:我认为链表的使 用正是本程序的最精 彩的地方所在,较数组 而言它的使用带来了 很多优点: (1)空间的 灵活分配,虽然地址不 是连续的,但只要找到 链表的头所有数据都 可以迅速找到( 2 )可 以灵活的插入或删除 元素而不会像数组那 样带来较多数据的移 动
4
ACkNxIzB dirconf90°18;wugplbySvqOW thesam 命 族 民 、 家 系 心 们 我 匆 急 临 光 富 远 久 越 间 时 的 去 离 子 日 苦 : 念 一 作 化 感 ,百 昔 追 今 .抚 运 思 当 耻 国 忘 勿
分析:周密地考虑 到了内存不足以及 职工号已存在导致 的录入失败,给予 用户适当的提示使 得设计更加人性化
ACkNxIzB dirconf90°18;wugplbySvqOW thesam 命 族 民 、 家 系 心 们 我 匆 急 临 光 富 远 久 越 间 时 的 去 离 子 日 苦 : 念 一 作 化 感 ,百 昔 追 今 .抚 运 思 当 耻 国 忘 勿
二、系统设计方案
1.程序采用模块化设计,主函数为程序的入口,各模块独立,可分块调试,各 模块由主函数控制调用。主函数的控制功能通过循环执行一个开关语句来实现。 该开关语句的条件值为调用主菜单函数得到的返回值,根据该值,调用相应的各 功能函数。 2.应用高级语言程序设计中的基本控制结构,如选择和循环等,并且包含对文 件的读、写等基本操作,在软件开发过程中应用了软件工程的基本理论。因此, 系统的设计方法是结构化设计方法,开发手段是 C 语言。 3.源程序运用多个函数,开头先进行函数声明,然后分别定义、调用各函数。

职工信息管理系统C语言课程设计+源代码

职工信息管理系统C语言课程设计+源代码

职工信息管理系统C语言课程设计+源代码课程设计报告课程:高级语言课程设计学号:姓名:班级:教师:时间:设计名称:职工信息管理系统设计内容、目的与要求:本设计旨在熟练掌握C语言的基本知识和编辑技能,基本掌握结构化程序设计的基本思路和方法。

通过编写职工信息管理系统,便于对职工的信息进行管理,训练综合运用函数的自定义,数组,结构体等,并提高程序设计的能力。

要求:设计一个职工信息管理系统,提供以下功能:1.提供一个清晰美观的界面来调用各个功能。

2.录入功能:职工信息录入(职工信息用文件保存),可以一次完成若干条记录的输入。

3.浏览功能:完成对全部职工信息的显示。

4.查找功能:①按职工的职工号查询职工的相关信息,并显示。

②按职工的学历查询职工的相关信息,并显示。

③按职工的电话号码查询职工的相关信息,并显示。

5.删除功能:①通过输入职工的姓名完成对该名职工的信息进行删除。

②通过输入职工号完成对该名职工的信息进行删除。

6.添加功能:完成添加新职工的信息的任务。

7.修改功能:①通过输入职工的姓名完成对该名职工的信息进行修改。

②通过输入职工号完成对该名职工的信息进行修改。

8.退出职工信息管理系统。

计划与进度安排:2012年12月8日至2012年12月15日:仔细研究数据库相关知识,通过上网查资料找思路。

2012年12月16日至2012年12月20日:完成设计思路并作出草稿,编写主函数和各调用函数模块。

2012年12月21日至2013年1月1日:逐步实现各模块的功能化,实现整个程序大体功能。

2013年1月2日至2013年1月6日:修改并完善各功能,编写电子实验报告,并准备提交验收。

设计过程、步骤:一、功能结构1.职工信息管理系统开始菜单根据菜单输入的值选择程序1.录入职工信息2.浏览职工信息3.查询职工信息5.添加职工信息4.删除职工信息6.修改职工信息7.退出1.按职工号查询2.按学历查询3.按号码查询1.按职工号删除2.按职工姓名删除1.按职工号修改2.按职工姓名修改二、设计说明1.这个程序需要使用结构体来存储职工信息。

职工管理系统课程设计报告

职工管理系统课程设计报告

职工管理系统课程设计报告一、项目背景随着信息技术的迅速发展,企业对于职工管理系统的需求日益增长。

职工管理系统作为一种集成化的管理工具,可以帮助企业高效地管理员工信息、薪资福利等相关数据,提升管理效率、节省人力成本。

本课程设计旨在通过开发一个职工管理系统来帮助学生深入理解管理信息系统的基本原理和应用。

二、项目目标本项目旨在设计并实现一个功能完善的职工管理系统,主要包括以下目标: 1. 实现职工信息的录入、修改和查询功能; 2. 实现薪资福利的管理和计算功能; 3. 实现权限管理和安全控制功能; 4. 提升系统的用户友好性和操作性; 5. 实现系统的数据备份和恢复功能。

三、系统需求分析3.1 功能需求1.职工信息管理模块:包括职工信息的录入、修改和查询功能;2.薪资福利管理模块:包括薪资发放、津贴计算等功能;3.权限管理模块:包括用户权限分配和访问控制功能;4.数据备份模块:包括定期数据备份和恢复功能。

3.2 非功能需求1.用户友好性:系统界面简洁明了,操作简单易懂;2.数据安全性:系统应具有良好的数据加密和权限控制机制;3.稳定性:系统应具有一定的容错能力,能够稳定运行。

四、系统设计与实现4.1 系统架构设计本系统采用B/S架构,前端使用HTML、CSS、JavaScript等技术开发,后端采用Java语言搭建,数据库采用MySQL存储数据。

4.2 模块设计1.职工信息管理模块:包括职工信息的增删改查功能;2.薪资福利管理模块:包括薪资发放、津贴计算等功能;3.权限管理模块:包括用户权限分配和访问控制功能;4.数据备份模块:包括数据备份和恢复功能。

4.3 系统界面设计系统界面简洁明了,采用响应式设计,适配不同大小屏幕的设备,提供友好的用户交互体验。

五、系统测试与维护5.1 系统测试系统测试包括单元测试、集成测试、系统测试和用户验收测试,确保系统功能正常、性能稳定。

5.2 系统维护系统上线后需要定期进行数据备份、安全检查和性能优化,确保系统稳定运行。

职工管理系统课程设计

职工管理系统课程设计

职工管理系统课程设计一、课程目标知识目标:1. 学生能理解职工管理系统的基本概念和功能,掌握其基本操作流程。

2. 学生能掌握职工管理系统中的数据录入、查询、更新和删除等基本操作。

3. 学生能了解数据库管理的基本原理,并将其应用于职工管理系统的实际操作中。

技能目标:1. 学生能运用所学知识,独立进行职工管理系统的基本操作,包括录入新员工信息、查询员工数据、更新员工资料和删除离职员工信息。

2. 学生能通过实际操作,培养问题解决能力和团队协作能力,提高在信息化办公环境下的工作效率。

3. 学生能运用数据库管理技能,对职工管理系统进行优化和拓展,满足不同场景下的管理需求。

情感态度价值观目标:1. 学生通过学习职工管理系统,培养对信息技术学科的兴趣和热情,提高信息素养。

2. 学生在学习过程中,培养良好的团队合作意识,尊重他人意见,积极沟通,共同解决问题。

3. 学生通过了解职工管理系统在企业管理中的重要性,认识到信息技术在现代社会中的广泛应用和价值,增强社会责任感。

课程性质分析:本课程为信息技术学科,结合职工管理系统,注重实践操作和实际应用。

课程设计注重培养学生的动手能力和解决实际问题的能力。

学生特点分析:学生为初中年级,具备一定的计算机操作基础,对新鲜事物充满好奇心,喜欢动手实践,但注意力容易分散,需要激发兴趣和引导。

教学要求:1. 教学内容与实际应用紧密结合,注重培养学生的学习兴趣和动手能力。

2. 教学过程中,教师应关注学生个体差异,给予个性化指导,提高学生的学习效果。

3. 教学评价以学生的实际操作能力为主要依据,关注学生在学习过程中的进步和成长。

二、教学内容本课程教学内容紧密结合职工管理系统,依据课程目标,制定以下教学大纲:1. 职工管理系统概述- 了解职工管理系统的基本概念、功能和作用- 学习职工管理系统的发展历程和应用领域2. 职工管理系统操作流程- 学习职工信息录入、查询、更新和删除等基本操作- 掌握职工管理系统中的权限管理和数据备份恢复功能3. 数据库管理原理- 学习数据库的基本概念、分类和结构- 掌握数据库设计原则和SQL语句编写方法4. 实践操作与案例分析- 结合实际案例,进行职工管理系统的操作实践- 分析职工管理系统在实际应用中的优缺点,探讨优化方案5. 信息技术与团队协作- 培养学生在职工管理系统操作中的团队协作能力- 学习如何在信息化办公环境中进行有效沟通与协作教学内容安排与进度:1. 第1-2周:职工管理系统概述、操作流程学习2. 第3-4周:数据库管理原理、SQL语句编写方法3. 第5-6周:实践操作与案例分析、信息技术与团队协作4. 第7-8周:课程总结、学生项目展示与评价教材章节及内容:1. 教材第1章:职工管理系统概述2. 教材第2章:职工管理系统操作流程3. 教材第3章:数据库管理原理4. 教材第4章:实践操作与案例分析5. 教材第5章:信息技术与团队协作三、教学方法本课程根据教学内容和课程目标,选择以下多样化的教学方法,以激发学生的学习兴趣和主动性:1. 讲授法:- 对于职工管理系统概述、数据库管理原理等理论性较强的内容,采用讲授法进行教学。

【课程设计】职工信息管理系统

【课程设计】职工信息管理系统

【课程设计】职工信息管理系统第一篇:【课程设计】职工信息管理系统题目:职工信息系统功能包括:λ建立职工信息数据(职工编号,姓名,性别,年龄,电话,职务,工资和家庭成员信息)和信息简表(编号,姓名,电话)λ根据职工编号查询职工信息(查询时需要身份确认。

单位领导和人事秘书可以看到职工所有信息;财务处人员可以看到职工编号,姓名,性别,年龄,电话,工资;一般职工仅能查到信息简表)λ增加新职工信息(由人事秘书完成,需要身份确认)λ删除职工信息(由人事秘书完成,需要身份确认)λ修改职工工资(由财务处人员完成,需要身份确认)λ要求所有信息能够存储在文件中,并具有良好的用户界面#include #include #include #include using namespace std;const char * file = “staff.dat”;const int LIM =8;int ct=0;int Admin;int na;//ct用来储存文件中数据组数,Admin用来储存登陆后该用户的权限,//na用来储存登录所输的编号,方便主菜单内使用其显示当前用户void hline(int);inline void eatline(){while(cin.get()!='n')continue;} class staff {/*职工编号,姓名,性别,年龄,职务,电话,工资和家庭成员信息*/ public: };void staff::printf()//输出的选择,判断其职务,选择调用哪个输出{ if(Admin==1||Admin==2)printf1();else int num;char name[LIM],sex[3];int age;char job[10],phone[15];double wages;char home[20];int admin;void printf();void printf1();void printf2();void printf3();}if(Admin==3)printf2();else printf3();void staff::printf1()//领导及人事秘书能见的输出 {} void staff::printf2()//财务人员能见的输出 {} void staff::printf3()//普通员工能见的输出 { cout<} hline(3);cout<//输出信息的头部{switch(n){ case 1:{cout<<};break;case 2:{cout<};break;case 3:{cout<}} <};break;void menu()//主菜单 { cout<//二级菜单 { cout<//登陆的实现部分 { cout<intw=0;while(!(cin>>na)){ cin.clear();while(cin.get()!='n')continue;co ut<for(int i=1;i<=ct;i++)} fstream find;find.open(file,ios_base::in|ios_base::out|ios_base::binary);eatl ine();staff stu;{streampos place =(i-1)* sizeof stu;find.seekp(place);if(find.fail()){cerr << “■查找出错!程序将退出!■n”;system(“pause”);exit(EXIT_FAILURE);} find.read((char *)&stu, sizeof stu);if(stu.num==na){ } w=1;Admin=stu.admin;}if(w==0){cout<}int stu_num()//计算数据组数 {} staff stu;ifstream stunum;stunum.open(file,ios_base::in|ios_base::binary);if(stunum .is_open()){} stunum.close();return ct;stunum.seekg(0);while(stunum.read((char *)&stu,sizeof stu))ct++;system(“pause”);system(“cls”);void setadmin(staff &stu,char jobs[10])//增加职工时根据职务设置权限{ char job1[10]=“总经理”;char job2[10]=“副总经理”;char job3[10]=“人事秘书”;char job4[10]=“财务人员”;}void add()// 输入数据的函数,增加职工 {if(Admin==2){ staff stu;if((!strcmp(stu.job,job1))||(!strcmp(stu.job,job2)))stu.admin=1 ;elseif(!strcmp(stu.job,job3))stu.admin=2;elseif(!strcmp(stu.job,job4))stu.admin=3;ofstream fout(file, ios_base::out | ios_base::app | ios_base::binary);if(!fout.is_open()){cerr << “不能打开” << file << “ 文件:n”;exit(EXIT_FAILURE);}cout << “★增加职员信息★请输入职工姓名:(按Enter键退出输入!):n”;eatline();cin.get(, LIM);while([0]!= ''){cout << “★增加职员信息★请输入职工编号:”;cin>>stu.num;cout << “★增加职员信息★请输入职工性别:”;eatline();cin.get(stu.sex, 3);cout << “★增加职员信息★请输入职工年龄:”;cin>>stu.age;cout << “★增加职员信息★请输入职工职务:”;eatline();cin.get(stu.job, 10);cout << “★增加职员信息★请输入职工电话:”;eatline();cin.get(stu.phone, 15);cout << “★增加职员信息★请输入职工工资:”;cin>>stu.wages;cout << “★增加职员信息★请输入职工家庭信息:(按Enter键退出输入!):n”;eatline();cin.get(stu.home, 20);setadmin(stu,stu.job);fout.write((char *)&stu, sizeof stu);cout << “■增加职员信息■请输入职工姓名:(按Enter键退出输入!):n”;eatline();cin.get(,LIM);}fout.close();} else cout<void output()//输出全部职工信息的函数 { staff stu;} ifstream find;find.open(file,ios_base::in|ios_base::binary);hline(1);while(fin d.read((char *)&stu,sizeof stu)){ cout<<//修改数据函数 {if(Admin==3){fstream change;int w=0;staff stu;streampos place;change.open(file,ios_base::in|ios_base::out|ios_base::binary);i f(change.eof())change.clear();//清除EOF cout<>rec;eatline();for(int i=0;iplace =i* sizeof stu;change.seekg(place);if(change.fail()){cerr << “■查找出错!程序将退出!■n”;system(“pause”);exit(EXIT_FAILURE);} change.read((char *)&stu, sizeof stu);if(stu.num==rec){ } w=1;cout << “你选择的是:n”;stu.printf2();break;}if(w==1){ cout << “请输入你要修改职员的工资: ”;while(cin >> stu.wages){if(stu.wages<0||stu.wages>100000){cout<cin.clear();while(cin.get()!='n');continue;}break;} change.seekp(place);// 回到查找到的地点change.write((char *)&stu, sizeof stu)<< flush;if(change.fail()){cerr << ”■--查找失败!程序将退出--■n“;system(”pause“);n”;}exit(EXIT_FAILURE);} change.close();cout<void del()//删除指定编号的职工信息 {if(Admin==2){while(1){ eatline();int delnum;cout<cin>>delnum;fstreamin;in.open(“staff.dat”,ios_base::in|ios_base::binary);if(!in){ cout< } in.close();temp.close();//修改完成,将原文件清空,并将临时文件内容q=0;if(stu.num==delnum){ } if(q==0)temp.write((char*)&stu,sizeof(stu));in.read((char*)&stu,si zeof(stu));q=1;复制回原文件中}{ out.write((char*)&stu,sizeof(stu));temp.read((char*)&stu,sizeof( stu));out.open(“staff.dat”,ios_base::out|ios_base::trunc|ios_base ::binary);temp.read((char*)&stu,sizeof(stu));while(!temp.eof())//将文件内容修改后临时寸到另一个文件temp.open(“temp.dat”,ios_base::in|ios_base::binary);if(!te mp){ cout<cout<>x;if(!(x=='y'||x=='Y'))break;} else cout<void find()//查找职工的实现部分 {while(1){ menu2();//eatline();int a;int w=0;cin>>a;int na;char sna[LIM];fstreamfind;find.open(file,ios_base::in|ios_base::out|ios_base::binary);eatl ine();staff stu;switch(a){ case 1:cout<>na;break;case 2:cout<>sna;break;case 3:{w=1;if(Admin==1||Admin==2)output();else cout<}break;default:{} for(int i=1;i<=ct;i++){streampos place =(i-1)* sizeof stu;find.seekp(place);if(find.fail()){cout<cerr << “■查找出错!程序将退出!■n”;system(“pause”);exit(EXIT_FAILURE);} find.read((char *)&stu, sizeof stu);switch(a){ case 1:if(stu.num==na){w=1;stu.printf();};break;case 2:if(!strcmp(,sna)){w=1;stu.printf();};break;case 3:break;default:{cout<cin.clear();while(cin.get()!='n');continue;}} }n”;} if(w==0)cout<>x;if(!(x=='y'||x=='Y'))break;} /* 建立职工信息数据(职工编号,姓名,性别,年龄,电话,职务,工资和家庭成员信息)和信息简表(编号,姓名,电话)根据职工编号查询职工信息(查询时需要身份确认。

职工信息管理系统设计--课程设计

职工信息管理系统设计--课程设计

课程设计课程设计名称:数据结构课程设计专业班级:学生姓名:学号:指导教师:课程设计时间:地点:计算机专业课程设计任务书学生姓名专业班级学号题目职工信息管理系统设计课题性质工程设计课题来源自拟课题指导教师同组姓名无主要内容职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计一职工信息管理系统,使之能提供以下功能:系统以菜单方式工作;职工信息录入功能(职工信息用文件保存);职工信息浏览功能;能按职工号查询功能;排序功能:按工资排序;职工信息删除、修改功能。

任务要求1)要求界面友好,函数功能要划分好2)总体设计应画出流程图3)程序要加必要的注释4)要提供程序测试方案5)提交设计报告参考文献1、《数据结构(C语言版)》,严蔚敏、吴伟民,清华大学出版社,1997审查意见指导教师签字:教研室主任签字: 2011 年12 月10 日说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页一、课程设计目的通过亲自设计程序,可以令我们熟悉c语言操作,更熟练的掌握c语句。

初步体会编程的过程,为将来的程序深入学习打下基础和培养兴趣。

二、设计题目分析2.1 题目简介可以向文件中写入、删除、添加职工信息,也可以从文件中导出来浏览2.2 设计要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计职工信息管理系统,使之能提供以下功能:系统以菜单方式工作。

职工信息录入功能(职工信息用文件保存)--输入职工信息浏览功能--输出查询和排序功能:(至少一种查询方式) --算法按职工号查询按学历查询等职工信息删除、添加功能三、课程设计内容3.2 详细设计:1、主函数:main()显示系统工作菜单,罗列该系统所有功能。

先声明所有将会调用到的函数名。

再运用选择函数switch即可根据使用者所输入的功能代号进入对应的功能程序。

亮点:定义一个全局指针变量*p和全局变量a。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计之职工信息管理系统
山东信息职业技术学院软件工程系
课程设计报告书
题目: 职工信息管理系统
系部: 软件工程系
专业: 网络系统管理
班级: 07软件7班
学号: 030701
姓名:
同组者:_______________________
组号: 组长:
指导教师:
开始时间: -6-10
完成时间: -6-16
年月日
1 引言(或绪论)(可作为正文第1章标题,用小3号黑体,加粗,并留出
上下间距为:段前0.5行,段后0.5行)
当前很多职工的信息还停留在手工管理阶段,加大了管理人员的工作量,还容易造成档案丢失和数据的不一致。

特此开发一个职工信息管理系统。

(小4号宋体,固定值行距20磅)
2 需求分析(可作为正文第1章标题,用小3号黑体,加粗,并留出上下
间距为:段前0.5行,段后0.5行)
进行需求分析的目的是经过对用户需求进行调查分析,写出需求分析文档作为项目设计的基本准则要求,以及作为系统分析员进行系统分析和测试人员进行测试时的手册。

(小4号宋体,固定值行距20磅)
2.1 需求概述(作为正文2级标题,用4号黑体,加粗)
本次设计的职工信息管理系统,应该能提供以下功能:(小4号宋体,固定值行距20磅)
(1) 录入职工信息并保存
(2) 显示所有职工信息
(3) 查询职工信息
(4) 修改职工信息并保存
(5) 删除职工信息
2.1.1 ******(作为正文3级标题,用小4号黑体,不加粗)
×××××××××(小4号宋体,固定值行距20磅)×××××××××××××××××××××××××××…………
2.2 需求说明(作为正文2级标题,用4号黑体,加粗)
(小4号宋体,固定值行距20磅)
(1)职工信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等,而且要求职工号不重复;
(2)录入的职工信息要求用文件形式保存,并能够对其进行浏览、查询、修改、删除等基本操作;
(3)职工信息的显示要求有一定的规范格式;
(4)对职工信息应能够分别按工资及按学历两种方式进行,要求能返回所有符合条件的职工的信息;
(5)对职工信息的修改应逐个地进行,一个职工信息的更改不应影响其它的职工记录;
(6)所设计的系统应以菜单方式工作,应为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并要求在此过程中能够尽可能的兼容用户使用过程中的异常情况。

3 总体设计(作为正文第2章标题,用小3号黑体,加粗,并留出上下间
距为:段前0.5行,段后0.5行)
总体设计的目的是根据需求分析文档,初步提出问题的解决方案,以及软件系统的体系结构和数据结构的设计方案,为下一步进行详细设计做准备。

3.1 功能模块图(作为正文2级标题,用4号黑体,加粗)
3.1.1 各模块逻辑图(作为正文3级标题,用小4号黑体,不加粗)
该系统能够按功能进行模块划分,其模块图如下:
其中:
信息输入模块完成职工信息的输入功能,输入信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等;
信息浏览模块完成已录入职工信息的显示;
信息查询模块完成职工信息的查询,查询时对应有按工资查询和按学历查询两种方式;
信息修改模块完成职工信息的修改功能;
信息删除模块完成职工信息的删除功能;
菜单选择模块完成用户命令的接收,此模块也是职工信息管理系统的入口,用户所要进行的各种操作均需在此模块中进行选择并进而调用其它模块实现相应的功能;
3.1.2 项目分工
组长的设计报告中应有各模块分工情况。

如:
各组员的设计报告中应明确写明自己负责的模块名称。

3.2 数据结构(作为正文2级标题,用4号黑体,加粗)
本系统中主要的数据结构就是职工的信息,包含职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等,在处理过程中各项。

相关文档
最新文档