基于c++实现的校友录管理系统课程设计.doc

上传人:文库蛋蛋多 文档编号:2385285 上传时间:2023-02-17 格式:DOC 页数:21 大小:950KB
返回 下载 相关 举报
基于c++实现的校友录管理系统课程设计.doc_第1页
第1页 / 共21页
基于c++实现的校友录管理系统课程设计.doc_第2页
第2页 / 共21页
基于c++实现的校友录管理系统课程设计.doc_第3页
第3页 / 共21页
基于c++实现的校友录管理系统课程设计.doc_第4页
第4页 / 共21页
基于c++实现的校友录管理系统课程设计.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《基于c++实现的校友录管理系统课程设计.doc》由会员分享,可在线阅读,更多相关《基于c++实现的校友录管理系统课程设计.doc(21页珍藏版)》请在三一办公上搜索。

1、学校代码: 10128学 号:201020201049课程设计说明书题 目: 校友录管理系统学生姓名: xxx学 院: 信息工程学院班 级: 计10-1班指导教师: 王晓强 讲师 邢红梅 讲师 吕 岩 讲师 关玉欣 讲师 2011 年 12 月 2 8 日目录内蒙古工业大学课程设计(论文)任务书31、目的42、问题题目4总体需求4功能需求4用户界面4提示与参考53程序框图5(1)结构框图5(2)功能框图61、选择62、删除74、源代码71添加校友信息92修改校友信息103删除校友信息124查找校友信息135显示校友信息155、调试及运行结果17(1)菜单17(2)增加17(3)修改18(4)显

2、示18(5)查找196、总结191、遇到的问题192、解决方法193、体会207、参考文献20内蒙古工业大学课程设计(论文)任务书课程名称: 面向对象程序设计课程设计 学院: 信息工程学院 班级: 计10-1班 学生姓名: 张旭辉 _ 学号: 201020201049 _ 指导教师: 王晓强、 一、题目校友录管理系统二、目的与意义面向对象程序设计课程设计课程设计是计算机科学与技术专业实践性环节之一,通过课程设计的综合训练可以使学生进一步理解和掌握面向对象程序设计课程的基本知识;掌握面向对象程序设计的思路和方法;基本具有利用面向对象的方法以及 C+的编程思想来完成系统设计的能力。三、要求(包括原

3、始数据、技术参数、设计要求、图纸量、工作量要求等) 1. 要求利用面向对象的方法以及C+的编程思想来完成系统的设计;2. 要求在设计的过程中,建立清晰的类层次;3. 在系统中至少要定义一个类,类中要有各自的属性和方法;4. 在系统的设计中,至少要用到面向对象的一种机制。四、工作内容、进度安排 1. 根据课程设计的要求,确定设计题目;(0.5天)2. 查找相关资料,进行应用程序总体结构、使用功能的设计;(0.5天)3. 进行应用程序的界面设计和源程序代码的编写;(2.5天)4. 设计说明书的撰写、答辩(1.5天)五、主要参考文献1C+语言程序设计(第三版),郑莉,清华大学出版社,20042C+程

4、序设计教程,钱能主编,清华大学出版社,1999.43C+程序设计课程设计,刘振安,机械工业出版社,2004.8审核意见系(教研室)主任(签字) 指导教师下达时间 2011年 12月 26日指导教师签字:_1、目的一直以来人们使用传统人工的方式管理员工档案,这种管理方式存在着许多缺点,譬如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。人事管理信息系统的出现轻而易举的解决了传统管理人员档案的方法的缺点。伴随着人事管理信息

5、系统的广泛应用,它已经成为了任何一家企业公司都不可缺少的组成部分,它的存在使得管理者更容易了解自己公司的员工,便于分配人员,易于进行调整。所以人事管理信息系统能够为管理人员提供充足的信息和快捷的查询手段。2、问题题目总体需求编写一个校友录管理软件,校友的信息包括姓名、性别、年龄、届级、学院,系、班级、通讯地址、联系方式。功能需求a 增加校友信息;b 修改校友信息;c 删除校友信息;d 查询校友信息。用户界面输入:程序正常运行后,屏幕上显示一个文字菜单(根据序号选定相应的操作项目),当用户选定操作项目所对应的序号时,根据应用程序的提示信息,从键盘上输入相应的数据。输出:应用程序正常运行后,要在屏

6、幕上显示一个文字菜单;要求用户输入数据时,要给出清晰、明确的提示信息。提示与参考为各项操作功能设计一个菜单,应用程序运行后,先显示这个菜单,然后用户通过菜单项选择希望进行的操作项目。将校友的信息定义为一个类;每个人的编号应唯一,不可重复。采用文件保存数据。3程序框图(1)结构框图添加校友信息删除校友信息修改校友信息显示校友信息校友录管理系统查找校友信息按姓名查找按编号查找(2)功能框图1、选择查找输入编号判断信息不存在显示信息输出菜单2、删除 菜单输入删除校友信息的判断信息不存在删除成功输出菜单4、源代码#include#include#include#includeusing namespa

7、ce std;int k;class friendsprivate: char num10;/编号 char name20;/姓名 char sex10;/性别 char age10;/年龄 char jieji20;/届级 char xueyuan20;/学院 char xi20;/系 char banji20;/班级 char txdz20;/通讯地址 char lxfs30;/联系方式 static int bianhao;public: void setfriends(char *name1,char *sex1,char *age1,char *jieji1,char *xueyua

8、n,char *xi1,char *banjil1,char *txdz1,char *lxfs1); static int& getbianhao() return bianhao; char * getname() return name; char * getsex() return sex; char * getage() return age; char * getjieji() return jieji; char * getxueyuan() return xueyuan; char * getxi() return xi; char * getbanji() return ba

9、nji; char * gettxdz() return txdz; char * getlxfs() return lxfs; char * getnum() return num; void add(); void find(); void deleted(); void alter(); void show();friends g150;friends p200;int k1;int friends:bianhao=0;void friends:setfriends(char *name1,char *sex1,char *age1,char *jieji1,char *xueyuan1

10、,char *xi1,char *banji1,char *txdz1,char *lxfs1) int static j=1; strcpy(name,name1); strcpy(sex,sex1); strcpy(age,age1); strcpy(jieji,jieji1); strcpy(xueyuan,xueyuan1); strcpy(xi,xi1); strcpy(banji,banji1); strcpy(txdz,txdz1); strcpy(lxfs,lxfs1); bianhao+; ofstream file(校友录信息.txt,ios_base:app);/追加到文

11、件尾 filegj.getbianhao()endl; filegj.getname()endl; filegj.getsex()endl; filegj.getage()endl; filegj.getjieji()endl; filegj.getxueyuan()endl; filegj.getxi()endl; filegj.getbanji()endl; filegj.gettxdz()endl; filegj.getlxfs()endl; j+; file.close(); 1添加校友信息 void friends:add() int v,l=1;char name220;char

12、sex210;char age210;char jieji220; char xueyuan220;char xi220;char banji220;char txdz220;char lxfs230; cout请输入要添加的人数k; g1.getbianhao()=pk1.getbianhao(); v=bianhao; for(int i=v+1;i=v+k;i+) cout请输入第l校友的信息endl; coutname2; coutsex2; coutage2; coutjieji2; coutxueyuan2; coutxi2; coutbanji2; couttxdz2; cout

13、lxfs2; gi.setfriends(name2,sex2,age2,age2,jieji2,xi2,banji2,txdz2,lxfs2); l+; 2修改校友信息 void friends:alter() int k=1; ifstream filem(校友录信息.txt,ios_base:in);/打开文件,以便读取 while(!filem.eof() filempk.getnum(); filempk.getname(); filempk.getsex(); filempk.getage(); filempk.getjieji(); filempk.getxueyuan(); f

14、ilempk.getxi(); filempk.getbanji(); filempk.gettxdz(); filempk.getlxfs(); k+; filem.close(); cout请输入要修改的人的编号:x; cout请输入编号为x的人需要修改的项目的代号:endl; cout1:编号-2:姓名-3:性别-4:年龄-5:届级-6:学院-7:系-8:班级-9:通讯地址-10:联系方式y; switch(y) case 1: coutpx.getnum() ; break; case 2: coutpx.getname(); break; case 3: coutpx.getsex(

15、); break; case 4: coutpx.getage(); break; case 5: coutpx.getjieji(); break; case 6: coutpx.getxueyuan(); break; case 8: coutpx.getbanji(); break; case 9: coutpx.gettxdz(); break; case 10: coutpx.getlxfs(); break; ofstream file1(校友录信息.txt,ios_base:trunc);/如果文件存在,则截短文件,即以前的内容将被删除 for(k=1;k=bianhao;k+)

16、 file1pk.getnum()endl; file1pk.getname()endl; file1pk.getsex()endl; file1pk.getage()endl; file1pk.getjieji()endl; file1pk.getxueyuan()endl; file1pk.getxi()endl; file1pk.getbanji()endl; file1pk.gettxdz()endl; file1pk.getlxfs()endl; file1.close(); cout修改并保存完毕pk.getnum(); filempk.getname(); filempk.get

17、sex(); filempk.getage(); filempk.getjieji(); filempk.getxueyuan(); filempk.getxi(); filempk.getbanji(); filempk.gettxdz(); filempk.getlxfs(); k+; filem.close(); cout请输入要被删除信息的校友的编号:z; while(zbianhao) int menu(); cout没有找到你要删除的校友信息,请重新选择:z; for(k=1;k=bianhao;k+) if(z=k) continue; ofstream file2(校友录信息.

18、txt,ios_base:trunc); file2pk.getnum()endl; file2pk.getname()endl; file2pk.getsex()endl; file2pk.getage()endl; file2pk.getjieji()endl; file2pk.getxueyuan()endl; file2pk.getxi()endl; file2pk.getbanji()endl; file2pk.gettxdz()endl; file2pk.getlxfs()endl; file2.close(); cout删除记录完毕endl; 4查找校友信息void friend

19、s:find() cout1:按编号查询-2:按姓名查询-请选择(1-2)m; while(m2) cout请重新输入(1-2)m; switch(m) case 1: char n10; coutn; ifstream filem(校友录信息.txt,ios_base:in); int k=1; cout编号setw(9)姓名setw(5)性别 setw(5)年龄setw(5)届级setw(5)学院 setw(9)系setw(10)班级setw(10)通讯地址 setw(10)联系方式setw(10)pk.getnum(); filempk.getname(); filempk.getsex

20、(); filempk.getage(); filempk.getjieji(); filempk.getxueyuan(); filempk.getxi(); filempk.getbanji(); filempk.gettxdz(); filempk.getlxfs(); if(strcmp(pk.getnum(),n)=0) coutsetiosflags(ios:left)pk.getnum()setw(9)pk.getname() setw(5)pk.getsex()setw(5)pk.getage() setw(5)pk.getjieji()setw(5)pk.getxueyuan

21、() setw(9)pk.getxi()setw(10)pk.getbanji() setw(10)pk.gettxdz()setw(10)pk.getlxfs()endl;break; k+; if(filem.eof() coutendl; cout 警告:校友录信息没有要查找的人!; filem.close(); break; case 2: char nname20; coutnname; ifstream filem(校友录信息.txt,ios_base:in); int k=1; cout编号setw(9)姓名setw(5)性别 setw(5)年龄setw(5)届级setw(5)学

22、院 setw(9)系setw(10)班级setw(10)通讯地址 setw(10)联系方式setw(10)pk.getnum(); filempk.getname(); filempk.getsex(); filempk.getage(); filempk.getjieji(); filempk.getxueyuan(); filempk.getxi(); filempk.getbanji(); filempk.gettxdz(); filempk.getlxfs(); if(strcmp(pk.getname(),nname)=0) coutsetiosflags(ios:left)pk.g

23、etnum()setw(9)pk.getname() setw(5)pk.getsex()setw(5)pk.getage() setw(5)pk.getjieji()setw(5)pk.getxueyuan() setw(9)pk.getxi()setw(10)pk.getbanji() setw(10)pk.gettxdz()setw(10)pk.getlxfs()endl;break; k+; if(filem.eof() coutendl; cout 警告:没有要查找的人!; filem.close(); break; 5显示校友信息 void friends:show() ifstr

24、eam filem(校友录信息.txt,ios_base:in); int k=1; cout编号setw(10)姓名setw(5)性别 setw(5)年龄setw(5)届级setw(5)学院 setw(9)系setw(10)班级setw(10)通讯地址 setw(10)联系方式setw(10)pk.getnum(); filempk.getname(); filempk.getsex(); filempk.getage(); filempk.getjieji(); filempk.getxueyuan(); filempk.getxi(); filempk.getbanji(); filem

25、pk.gettxdz(); filempk.getlxfs(); coutsetiosflags(ios:left)pk.getnum()setw(9)pk.getname() setw(5)pk.getsex()setw(5)pk.getage() setw(5)pk.getjieji()setw(5)pk.getxueyuan() setw(9)pk.getxi()setw(10)pk.getbanji() setw(10)pk.gettxdz()setw(10)pk.getlxfs()endl; k+; k1=-k; filem.close();int menu() coutendl;c

26、out=校友录管理=endl; cout=endl; cout= 1-添加校友信息 =endl; cout= 2-删除校友信息 =endl; cout= 3-修改校友信息 =endl; cout= 4-查询校友信息 =endl; cout= 5-显示校友信息 =endl; cout= 0-退出 =endl; cout=endl; cout=请选择(0-5):=c; if(c=5) switch(c) case 1:xiaoyou.add();main();break; case 2:xiaoyou.deleted();main(); break; case 3:xiaoyou.alter();

27、main(); break; case 4:xiaoyou.find();coutendlendl; main();break; case 5:xiaoyou.show();main();break; case 0:exit(1);break; elsecoutsetw(35)input error!endl;main();5、调试及运行结果(1)菜单(2)增加(3)修改(4)显示(5)查找6、总结1、遇到的问题(1)当用户想删除时,如果没有输入文件中存在的编号,就会一直运行下去。(2)修改时,会修改全部校友信息2、解决方法(1)在删除时,如果没有找到文件中存在的校友编号,输出“没有查找到你所

28、要删除的小有信息”,并且弹出菜单,跳出循环。(2)可以给修改里套用switch语句,让用户选择修改的校友的信息类目。3、体会通过这次课程设计,我学到了很多东西,学到的东西却可以使我受益终生。除了知识技术上的东西,我更锻炼了自己的快速学习能力;我学会了如何快速有效地从图书馆、网络获取自己需要的信息;我尝到了在周围很多同学拷来拷去时孤军奋战的痛苦;我体会了夜以继日完成一个项目时中途过程的艰辛及最终完成后巨大的成就感我更加深了人生的信心,以后面对任何一个困难的项目,我想我都会努力完成,并最终能够成功地将其完成。7、参考文献1、建议教材1 C+语言程序设计(第三版),郑莉,清华大学出版社,2004 2、教学参考书1C+语言程序设计案例教程,郑莉,清华大学出版社,20052C+程序设计教程,钱能主编,清华大学出版社,1999.43C+程序设计,谭浩强,清华大学出版社,20044C+程序设计实践指导,谭浩强,清华大学出版社,20055C+程序设计课程设计,刘振安,机械工业出版社,2004.8

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号