




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要电子科技大学成都学院程序综合设计论文论文题目 工会成员信息管理系统 学生姓名 学号 专业 通信工程 系(分院) 通信与信息工程系 授课教师 2015年5月制摘 要c语言是一种编程语言,用于编写程序,日常生活中所用的各种软件啦、游戏啦,其实都是一个程序而已 ,而c语言的作用就是用来编写这些软件的。精通了c语言将来学习其他高级编程软件就比较随意了。如今计算机的运用越来广泛,跟我们的日常生活有密不可分的关系了,然而工会成员的信息管理也能通过计算机程序来实现更好的管理,通过一段简单的计算机程序来实现企业,公众对成员信息的管理,可以通过这段程序实现对新成员信息的录入、浏览、按各种方式进行查找、删除、修改等等。这次,我们将用C语言来实现这个程序,完成它的各个功能。关键字:C语言,信息管理,计算机程序第一章 引言引言1.1 问题分析题目是工会成员信息管理系统,成员信息管理系统是事业单位科学、全面、高效进行人事管理的系统。在操作上集输入、维护、查询、统计、打印、输出等处理为一体,简便灵活,自动化功能强大。就本课题以及我们所学知识而言,需要进行公会成员信息的录入、浏览、修改、查找、删除公会成员信息等操作,分别建立功能模板,最后还应提供键盘式选择菜单实现程序运行。1.1.1基本功能(1) 工会成员信息录入功能输入(2) 工会成员信息浏览功能输出(3) 工会成员信息查询功能(查询方式:a.按是否结婚查询。b.按子女个数查询。)(4) 修改工会成员信息并保存(5) 删除工会成员信息1.1.2扩展功能在基本功能实现以后,可以进行创新设计,比如对菜单进行美化、增添个人登录模块功能、完善成员更加详细的信息功能以及让系统更加人性化一点也就是增加输入提示,以及某些错误提示等。1.2 研究思路基于工会成员信息管理系统的基本功能,我们需要用vc6编写一个程序,此程序的主要功能是有一个菜单,将在实现功能时显示出来,并且有选项。系统应该包含姓名、性别、出生年月、是否婚配、子女个数;系统会有错误提示功能;有输入功能;能够输出所有成员的信息清单;能够按成员婚配与否或成员工号查询某一个成员的信息;能够修改某个成员的信息;能够删除某个成员的信息等。明确了我们所要设计系统的功能后,接下来就应该编写程序去实现每个功能,最后再汇总,然后在主函数中进行调用。1.3 小组分工我们小组有四个人,按照不同的功能模块进行分工,分为四个大致板块(1) 工会成员信息录入功能和浏览功能(2) 工会成员信息查询功能(查询方式:a.按是否结婚查询。b.按子女个数查询。)(3) 修改工会成员信息并保存(4) 删除工会成员信息出了这四个板块以外还有就是要进行程序的整合调试,改错,还有就是美观设计。我们通过大家选择各自自己负责的一部分。最后我做的是主页面的设计、修改公会成员信息并保存。后面的整合调试,改错以及美观设计有大家共同完成。分工好后就各自先完成自己负责的那个板块。在大家做自己的板块之前我们会应该对某些东西进行一个统一的定义,比如公会成员的信息各自有什么来定义。最后我们都用int num来定义工会成员号、char name20来定义公会成员姓名、char sex10来定义公会成员性别、int age来定义公会成员出生年月、char marry10来定义工会成员婚否、int child来定义工会成员的子女个数。通过这样大致统一的定义后,会给后面的归总减轻很大的麻烦。第二章 总体设计总体设计工会成员信息管理系统2.1程序功能结构图 录入信息浏览信息查询信息删除信息修改信息退出2.2系统体系结构 struct employee /*定义一个结构体*/ void main() /*主函数*/ void menu() /*菜单函数*/ void input() /*录入函数*/ void save(int ) /*保存文件函数*/ void display() /*浏览函数*/ void search() /*查询主函数*/ void modify() /*修改函数*/ void del() /*删除函数*/首先制定好总体设计,也就是最后的程序代码的框架,在设计好框架过后,后面才能将各自的程序代码汇总起来。接下来就要大家各自完成自己负责的那一部分代码了。第三章 程序实现详细过程程序实现详细过程3.1主页面函数设计3.1.1设计思路主页面函数,其实主页面函数很简单,就是运用多个printf打印出函数所要实现的功能和选择条件,只是要注意位置,尽量是打印的东西处于对话框的中间位置,这样看上去更加美观。3.1.2实现过程首先是要运用多个printf实现要打印的内容,打印的内容也就是你程序所要实现的功能,并且添加上对应的编号,以便于选择。然后调节主页面的使其看起来更加简单美观,在查阅书籍后学习怎么对页面进行操作,于是就把背景改成了白色,并将主页面以管理员身份就行了命名,也就是页面名称为公会成员信息管理系统,还有就是主页面可能会多次调用,调用时前面还有其他功能执行的一些东西,一点也不美观,于是就在主页面的一开始就使用了一个清屏的操作,这样就好很多了。然后不断的调试位置使其中的内容尽量居中对齐,这样更具有美观感。在多次调试后最后的主界面运行效果如图3-1所示。主页面做成这样子已经差不多了,也算是完成了第一个简单的函数,然后再做后面的公会成员信息的修改。 图3-1-2 主界面运行效果3.2修改公会成员信息函数设计3.2.1设计思路修改函数有一定的难度,在经过查阅书籍后才确定了应该怎么去实现它。首先要对函数进行修改,你就要输入你修改后的内容,然后你该后的内容又不可能直接在原来的结构体重的信息上进行修改,显然这里首先就要对结构体的内容重新定义一次,定义包括公会成员号、姓名、出生年月、性别、婚否以及子女个数。然后,你要修改的是面向某一个成员的信息进行修改,首先要找出你要修改的成员,我觉得名字是最可靠的,于是就通过名字来找到这个成员,在找到成员后,每个成员有6项基本信息,也不会全部去改,于是就还要选择你所修改的是某一项内容,最后将修改后的打印并确认,然后保存修改内容,最后在选择接下来将要进行的操作。3.2.2实现过程首先就行定义,要定义的内容有整型的工会成员号、数组的姓名、数组的性别、数组的婚否、整型的出生年月、整型的子女个数,以及诺干后面要使用到的用于循环啊,选择什么的整型变量。定义好后,第一步就是通过姓名找到你所要修改的那一位成员信息,姓名就要从键盘输入,为了更方便的输入正确无误的姓名我们在之前可以先对成员所有信息就行打印一次,这里就会调用浏览函数。然后根据你输入的内容跟原有的成员信息进行匹配,先是一个循环的对原有成员信息进行一一匹配,有则打印出该成员的信息,若没有就提示没有找到该成员。最终如图3-2-2-a所示。 3-2-2-a再找到所要修改的成员信息之后,第二遍就要选择你所要修改的这位成员的哪一项信息这里就有多项选择就会有的switch就行选择,在选择之前先要打印出各项信息所对应的序号,然后用scanf从键盘上输入你要执行修改哪一项,通过case中的不同分支进行完成。每个分支都先提示xxx改为: 然后通过scanf从键盘上输入你要将这一项改为什么,这里输入储存在的地方也就是修改函数开始定义的里面,然后在用这些输入的去替换原来结构体中的数据,这里替换就涉及两种内容的替换,一个是整型还有一个是数组的替换,整型的替换很简单,如图3-2-2-b所示,直接有等号就可以传递了。 图3-2-2-b然而数组之间值的传递不能直接用等号,需要通过strcpy来实现,如图3-2-2-c所示。 图3-2-2-c还有一点很重的是在每一个case后面必须加上break来跳出去。修改后在进行一次确认,修改函数大致也就完成得差不多了,最终如图3-2-2-d所示。 图 3-2-2-d 最后还要将程序更加的完善,添加一些人性化的提示,当出现选择的时候你所输入的不在选择范围内这时候提示输入错误,并请重新输入,如图3-2-2-e所示。还有在修改完成后进行保存这时调用保存函数,在调用保存函数之后再调用一次浏览函数,以此来判断是否修改正确。还有最后一项就是修改过后是还需要修改其他内容还是返回主函数,在进行一次选择,如图3-2-2-f所示。这些完成后这个修改函数也就差不多了。最后再进行一些对齐之间的调节,修改函数也就做完了。 图3-2-2-e 图3-2-2-f3.3程序归总和调试 等各个成员把每个人自己负责的那一部分程序完成后就要将各个函数组合起来,使其实现相应的功能。按照前面想的系统结构体系,首先定义一个结构体,结构体中包含工会成员的所有信息,在定义了结构体过后就要对函数进行声明,函数只有在声明后才能调用。然后编写主函数,在主函数中实现各个函数的调用,选择同样用switch和case来共同完成,先调用主界面函数在提示请选择的服务,然后从键盘上输入你要实现某一功能所对应的序号,同样考虑到程序的更加完善这里用一个判断来判断你是否输入正确,主页面中只有1-6,若超出此范围提示对不起,您输入有误,请重新输入,如果输入正确,则执行的case中相应的语句,也就是各个函数的调用。这里输入1,则调用录入函数;输入2,则调用浏览函数;输入3,则调用查询函数;输入4,则调用删除函数;输入5,则调用修改函数。最后还加一条输入6,则退出程序,然后就是在执行完函数调用后,选择是继续使用程序还是退出程序,如图3-3所示。最后还要做的,也是最重要的就是让程序能够顺利执行,这也是最麻烦的一步,由于各个函数在调用时所用到的数据不一样,这个时候要全部改成相同的。这个时候有个难点就是成员信息的保存,以及在各个子函数中如何去调用这个保存了的函数。然而函数的保存我们以前没有学过,于是只有自己翻阅书籍查阅资料,看打了几个案例后,它们实现保存函数都是通过下面这段程序来实现的:/*保存文件函数*/ void save(int m) /保存m个成员数据int i; /*计数*/FILE*fp; /*文件变量*/if (fp=fopen(employee_list,wb)=NULL) /*试图打开成员列表文件(二进制写入),如出错,提示后退出。*/printf (成员列表为空,不能打开n);exit(0);for (i=0;im;i+) /*将内存中工会成员的信息输出到磁盘文件中去*/ if (fwrite(&emi,sizeof(struct employee),1,fp)!=1) /逐个写入成员数据,如出错,提示后关闭成员列表文件退出。printf(写入出错n);fclose(fp);int load() /*读入成员数据*/FILE*fp;int i=0;if(fp=fopen(employee_list,rb)=NULL) /*试图打开成员列表文件(二进制读出),如出错,提示后退出。*/printf (不能打开成员列表n);exit(0);elsedofread(&emi,sizeof(struct employee),1,fp); /*逐个读入成员数据*/i+;while(feof(fp)=0);fclose(fp); /*关闭成员列表文件*/return(i-1); /*返回成员个数*/将这段文件保存函数加入进去后,然后就要不停地调试程序,检查程序中的错误,然后改正,刚开始错误好多,一条一条的慢慢改正,好让程序最终能够正常运行。不得不说,调试程序这一步是最麻烦,最累也是最耗时间的。通过不懈的努力,一个错误一个错误的改正,终于经过5天的调试,最终程序的得以正常运行,顿时心中大有成就感。后面的任务就是不断运行,去找程序中的不足的地方,也就是bug。接下来的两天我们小组程序都各自尝试着运行程序,去发现程序中的缺陷,比如提示错误什么还有就是那些地方应该加一些文字让使用者更加简单轻松的上手,还是找到了不少缺陷,慢慢改正后,我们做的工会成员信息系统也越来越有模有样了。现在我们要做的最后一件事就是 让程序看上去更加美观,也就是调整某些语句的位置,让程序的运行结果整体出于居中的样子,某些语句对齐。增加程序的整体美观感。这一步完成,我们做的程序也告了一段落了。第四章 总结总结4.1心得体会 回想起自己做程序的整个过程,还是耗费了不少精力,但也收获了不少。从刚开始接到这个程序题目是,那是惊讶怎么可能,自己才刚开始接触C语言程序设计,做这么一个系统能行吗?不过惊讶归惊讶,怀疑也好,抱怨也好,既然已经布置了题目,就要好好去把它完成。看了题目的要求后,其实也并没有想象的那么难,最大的难点就是有一个文件保存,这个我们以前没有学过,只有翻阅书籍查找资料,慢慢去理解。看了一些相似的案例后,在脑中也有了做程序的大致蓝图,揭晓来小组讨论后开始分配自己的任务,然后各自完成自己的那一部分。我做的主菜单函数和公会成员信息的修改,这些大都是以前学过的,很快就轻车熟路的完成了。这是也感觉这个并没有自己当初想的那么难。等到我们都把自己的那一部分完成后,就开始归总了,这才是真正难的时候,在大概整理过后开始尝试运行程序,一运行,下面弹出的错误一大串,瞬间让我们震惊了,自己写的这个程序也就四百多行,下面就有一两百个错误,这是信心受到了极大的打击。大家也都没有好心情,在徘徊了一天后,都还是觉得已经做了这么多,现在放弃不划算,于是重新振作起来,根据错误提示找到错误,一个一个的改正,在经过五天的纠正后,终于皇天不负有心人,程序最后能运行了。还记得当时弹出那一个对话框是,所有人心中的激动之情。也是自己这么多天的努力终于没有白费。通过做这个C语言程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 端午期末冲刺活动方案
- 美容院六月活动方案
- 组织游玩活动方案
- 电气气浮设备活动方案
- 端午节香囊活动方案
- 石膏摆摊活动方案
- 石屏县春节慰问活动方案
- 电商卖衣服福利活动方案
- 组织户外团队活动方案
- 端午礼品互动活动方案
- 2025中国智能投影市场全产业链发展白皮书
- GB/Z 45463-2025热喷涂涂层孔隙率的测定
- 院前急救护理
- 健身气功项目办赛指南
- 《食品生产经营企业落实食品安全主体责任监督管理规定》解读与培训
- 2025届河南省五市高三第一次联考生物试题(原卷版+解析版)
- 学校食堂食品安全事故案例及教训
- 2025年全国企业员工全面质量管理知识竞赛题库及答案(共70题)
- 改良风险矩阵法在压力管道安全风险分级管控中的应用
- 工程竣工财务决算审计服务方案投标文件(技术方案)
- 2024年IMO中国国家集训队第一阶段选拔试题及答案解析
评论
0/150
提交评论