C语言课程设计职工管理系统设计报告.docx
- 文档编号:3593051
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:12
- 大小:262.78KB
C语言课程设计职工管理系统设计报告.docx
《C语言课程设计职工管理系统设计报告.docx》由会员分享,可在线阅读,更多相关《C语言课程设计职工管理系统设计报告.docx(12页珍藏版)》请在冰豆网上搜索。
C语言课程设计职工管理系统设计报告
课程名称:
程序设计语言课程设计
设计题目:
职工信息管理系统设计
学院:
应用技术学院
专业:
电子信息工程
年级:
大一
学号:
************
*******
*******
日期:
2010年7月9号
目录:
摘要:
……………………………………………………2
任务书:
…………………………………………………2
总结与体会:
……………………………………………10
摘要:
通过这次的短学期,在老师的辅导下,我完成了课程设计。
通过课程设计的完成对C和C++有更深的了解。
我做的课程设计题目是职工信息管理系统设计,我主要用到了结构体,结构体数组,指针,文件等等。
对函数的调用,和指针有了更深的理解。
但我做的这个课程设计,职工信息管理系统还存在不足,还希望老师的指点。
我的这个管理系统能处理的是对公司员工的信息存储,还有对职工的查找和排序,还有对职工的信息修改。
有不足的地方还请老师指点。
昆明理工大学
课程设计任务书
应用技术学院学院电子信息工程专业2009级
学生姓名(学号):
袁瑞(200911513127)
课程设计目的:
通过设计一个较为简单的管理系统,进一步熟悉C++中类的概念、类的封装、继承的实现方式。
了解系统开发的需求分析、类层次设计、模块分析、编码测试、模块组装与整体调试的全过程,加深对C++的理解与VisualC++环境的使用;逐步熟悉程序设计的方法,并养成良好的编程习惯。
课程设计(论文)题目及具体内容:
写程序
题目:
职工信息管理系统设计
设计说明与要求:
职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。
试设计一职工信息管理系统,使之能提供以下功能:
(1)系统以菜单方式工作
(2)职工信息录入功能(职工信息用文件保存)
(3)职工信息浏览功能
(4)查询和排序功能:
按工资查询、按学历查询
(5)职工信息删除、修改功能
(1)需求分析:
职工管理系统设计
要能对公司员工的信息资料进行处理和存储,并且能够对每个员工进行查询。
(2)设计:
我是采用C语言编写的,我采用了结构体和指针。
先定义一个结构体包含各种所需的数据类型:
职工号、姓名、月工资、学历、年龄、性别等信息。
然后编写各个函数来实现各种功能。
(3)模块分析:
如下图
(4)各函数调用关系(流程图):
(6)编码及调试:
(注:
此系统由三个人设计,本人只设计了其中的两个功能)
功能二.修改员工信息模块:
此功能代码如下:
modify()/*修改员工信息*/
{structpeoplep;
FILE*fp;
inti,n,k,w0=1,w1,w2=0;
n=load();
do
{
k=-1;
printf_face();
for(i=0;i {if((i! =0)&&(i%10==0)) {printf("\n\n请记住要修改的员工号.任意键继续...\n"); getch(); puts("\n\n"); } printf_one(i); } do {printf("\n\n请输入要修改信息的员工号! 员工号: "); scanf("%s",p.num); for(i=0;i if(strcmp(p.num,people[i].num)==0) {k=i; p=people[i]; } if(k==-1)printf("\n\n不存在,请重试"); }while(k==-1); printf_face(); printf_one(k); w1=modify_data(k,n); if(w1==1) {printf("\n操作成功^_^.\n\n继续修改吗? \n\n\t1).是2).保存并返回\t[]\b\b"); scanf("%d",&w0); w2=1; } else {w0=0; if(w2==1) people[k]=p; } if(w0! =1&&w2==1) save(n); }while(w0==1); system("cls"); menu(); } 调试截图: 功能三.员工信息查询模块: 此功能代码如下: search()/*查找功能*/ { inti,n,k,w1=1,w2,w3,w4,m,a; structpeoplep; n=load(); do { printf("\n\n以哪种方式查找? \n\t1).学历2).员工号[]\b\b"); scanf("%d",&m); switch(m) { case1: do {k=-1; printf("\n\n请输入学历! 学历: "); scanf("%s",p.xueli); printf_face(); for(i=0;i if(strcmp(p.xueli,people[i].xueli)==0) {k=i; printf_one(k);break; } if(k==-1) {printf("\n\n没有该学历的员工"); printf("\n\n重新查找吗? \n\t1).是2).否,返回[]\b\b"); scanf("%d",&w1); if(w1==2) printf_back(); } } while(k==-1&&w1==1);break; case2: do {k=-1; printf("\n\n输入您要查询的员工号! 员工号: "); scanf("%s",p.num); printf_face(); for(i=0;i if(strcmp(p.num,people[i].num)==0) {k=i; printf_one(k);break; } if(k==-1) {printf("\n\n该员工号不存在"); printf("\n\n是否重新选择? \n\t1).是2).否,离开[]\b\b"); scanf("%d",&w1); if(w1==2) printf_back(); } } while(k==-1&&w1==1);break; } w4=0;w3=0; if(k! =-1) {printf("\n\n请选择操作\n\t1).继续查找2).修改3).删除4).返回菜单[]\b\b"); scanf("%d",&w2); switch(w2) {case2: w3=modify_data(k,n);break; case3: {printf("\n确定吗? \n\t1).确定2).返回[]\b\b"); scanf("%d",&w4); if(w4==1) for(a=k;a { strcpy(people[a].num,people[a+1].num); strcpy(people[a].name,people[a+1].name); strcpy(people[a].sex,people[a+1].sex); strcpy(people[a].age,people[a+1].age);/*删除所选员工信息*/ strcpy(people[a].xueli,people[a+1].xueli); strcpy(people[a].gongzi,people[a+1].gongzi); strcpy(people[a].address,people[a+1].address); strcpy(people[a].telephone,people[a+1].telephone); } break; } } if(w3==1||w4==1) {save(n); printf("\n\n操作成功.^_^."); printf("\n\n请选择操作\n\t1).继续查找2).返回[]\b\b"); scanf("%d",&w2); } } } while(w2==1); system("cls"); menu(); } 此功能截图: 员工信息是用用文本文件存储的,资料分别存储在这些文本文件中,具体如下: 总结与体会: 通过本次的课程设计,对C和C++又更一步的了解,了解了C上的结构体,并对结构体有了熟练的掌握,并且熟悉了指针,通过指针可以使程序很好的实现,结构体类型是一个很好的类型,在现实生活中,应用结构体可以使问题很好的解决。 程序=数据结构+算法,我认为程序是用来解决生活中复杂繁琐的事务,对人的信息处理,就要对字符和数据的处理,所以结构体类型是一个很好的处理这些问题的好工具。 对C++上文件的操作也有了一定的了解,通过文件流对象打开文件,并把数据存储在文件中。 我觉得这是一很好的用途,我们应该熟练地掌握文件的操作。 经过这次的编程感到自己有太多的不了解,对C和C++不熟练,还需要努力学习。 我慢慢觉得学习编程是一个很好的方向,虽然现在做出来的东西很不完善,但因此我更喜欢上了编程,在以后的日子里我会更加努力学习! 同时也感谢老师这一年对我们的精心教导。 参考文献: C程序设计,C++程序设计,C程序设计上机指导
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言课程设计 职工管理系统设计报告 语言 课程设计 职工 管理 系统 设计 报告