




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、宁波大红鹰学院信息工程学院课程设计报告信息工程学院制目 录一、案例描述1、总体描述- 1 - 1 -2、模块描述- 1 - 1 - 2 -二、设计思路三、程序设计1、数据结构描述- 2 -2、主函数及其流程图- 3 -3、源程序- 4 -四、调试与分析1、主菜单- 5 - 5 -2、增加信息- 6 -3、查找某人并相应输出4、输出整个家谱信息- 6 - 6 -5、姓氏查询五、设计总结1、完成情况2、心得体会- 7 - 7 - 7 - 8 -一、案例描述1、总体描述家谱管理系统是查询家谱信息必不可少的一部分,利用家谱管理系统可以清楚的查询到家族成员的详细信息。该家谱管理系统是通过树来实现的。本程
2、序具有插入、查找等功能,可以实现存放家谱中各成员的信息。程序的操作界面简洁美观,易于操作。本程序运用了函数、循环、树等知识来进行设计,实现系统和数据结构设计。2、模块描述1)菜单设计:家谱管理系统是为了让用户能够清楚地获得自己想要信息。为了要使设计的菜单体现用户的需求,就需要设计一个含有多个菜单项的主控菜单子程序以链接系统的各项子功能,简易明了,方便用户使用本系统,让用户第一时间能够清楚的查询到需要的信息。本程序包含主程序模块,菜单选择模块和树操作模块。调用关系如下图 1-11 所示:图 1 模块调用示意图2)添加家谱信息:输入成员姓名,性别,子女个数,子女姓名,性别,成功建立家谱。操作简单。
3、3)查找并输出相应信息:输入要查找家谱成员的姓名,通过一个比较函数,找到要查找的成员的信息并输出。4)退出:选择操作 D 退出,即可退出程序,实现了操作的简单高效。5) 姓氏查询:预先存入大量中国姓氏的历史。输入你想了解的姓氏,可输出该姓氏的历史。二、设计思路本程序要求模块化管理,分成菜单函数、创建函数、添加函数、查找函数、控制各个部分从而将程序简单化出来分析。本程序的主要功能是:创建数据:创建各相关数据,例如创建家谱信息。添加数据:增加家谱成员孩子信息。查询信息:按照姓名来查询成员信息,还可以通过输入姓氏来查询该家谱信息。退出系统:程序编译结束后退出系统。图 2 家谱管理系统功能模块图三、程
4、序设计1、数据结构描述本程序首先定义了五个结构体,一是时间结构体,定义了小时和分钟;二是车辆信息结构体,定义了车位信息,车辆进入和离开的信息;三是模拟车站信息结构体;四是节点的结构体,定义了 data 和 next 两个指针域;五是队列结构体,定义了 head 和 rear 两个指针域。项目结构体定义如下:typedef struct TreeNodeint Num;/记录这个人拥有几个儿女char Name20;/记录这个人的姓名char Kind;/标示节点的种类有女G男Bstruct TreeNode*NextNode20;/记录这个人的儿女struct TreeNode*Parent;
5、/记录这个节点的父节点TreeNode;2、主函数及其流程图图 3 家谱管理流程图图4 创建家谱流程图3、源程序int main(void);int main() /主函数int a;/选择操作printf(nnt*请选择你的操作*);printf(nnt*1:english*n);printf(nnt*2:中文版*n);printf(n);printf(请输入编号(choose):);scanf(%d,&a);if(a=2)/输入2,则进入中文版/输入2,则进入英文版chinese();else if(a=1)english();elseprintf(error!); /输入的数字不为1、2
6、,则进入输出错误void search()/查询姓氏、输出姓氏历史char xm2;printf(请输入你想查询的姓(如:王):);scanf(%s,&xm);if(strcmp(xm,王)=0) /字符比较printf(王氏发展nn);printf(王姓在先秦、汉晋时期一直以华北地区为主要的活动地区,发展十分迅猛。隋唐时期王姓各支派向各地迁播之外,最重要的事件是河南固始人王审知南迁福建,建立闽国,成为五代十国之一,是福建王姓的总开山祖,史称开闽王氏。nn);printf(printf(王氏族谱nn);王氏家门乃武都郡北望族。其始迁祖宋时由山东徙居山西,转即入甘移居武都安化青草湾。居不久,王氏
7、宗室远祖欣其牛蹄关以北,有蛇山逶迤苍秀,竹木交荫,猿鸟争啼,碧水中流,风光秀美,土地肥厚,居人无多,遂卜居今之隆兴蛇崖。数百年间,族室繁衍。延至世盈王公以其雄勃才略,勤苦创业,欲营方圆百里家业,而中道殂谢,虽为环玦,亦拥广袤土地,奠定殷厚基业。世盈公生前仁义好施,乡民以“王老爷”称之。逮清乾隆世盈嫡孙(其次子喜宗子)聪王公,荣受皇清诰封登左侍郎之爵位,为官清正。隆兴一地,距郡治远窎,聪分理乡曲诉讼,因决断审慎公正,民赠“万民伞”拥戴称颂。其积德累仁,关心民瘼,赈济空乏,泽被百里。“王老爷”之称,世传不替。甘陕比邻因有“天不下雨有菩萨爷,没饭吃了有王老爷” 之俚语传闻远近。);exit(0);e
8、lse if(strcmp(xm,李)=0)/通过比较函数进行查找printf(printf(李氏介绍nn);李姓是世界上人口最多的姓氏,2011年最新百家姓排名,李姓为中国第一大姓。为区别其他同音姓,常说“十八子李”或“木子李”。在台湾、朝鲜和越南,李姓也是常见姓氏,在朝鲜李姓为第二大姓。 据统计,李姓人口总数约为1亿,其中中国大陆有李姓9207.4万人,占中国人口总数的7.19%。河南省是中国李姓的第一大省。nn);exit(0);else/输入不规则则错误printf(没有你要查询的信息!n);exit(0);四、调试与分析1、主菜单将源程序编译运行后会看到如下所示的主界面,输入2后按回
9、车,根据提示输入信息,如图5所示:图5家谱管理系统的主界面2、增加信息输入数字 a/A,按回车,并根据提示输入姓名,性别等,出现如图 6 的界面:图 6 插入家谱信息3、查找某人并相应输出输入数字 b/B,按回车,并根据提示输入选项查看信息,出现如图 7 的界面:图 7 查询家谱成员信息的界面4、输出整个家谱信息输入数字 c/C,按回车,并根据提示输入选项查看信息,出现如图 8 的界面:图 8 家谱信息的界面5、姓氏查询输入数字 d/D,按回车,输入要查询的姓氏,出现如图 9 的界面:图 9 姓氏查询的界面五、设计总结1、完成情况第 1 次课负第 3 次课 第 4 次课 责人进程项目计划丁雷总
10、体方案全体成员编写代码竹宇琪实验报告雷金霞视频制作丁雷整体完善全体成员全体成员2、心得体会马蒋斌本次项目我拍了许多照片,找到了许多的素材,对项目组员的工作流程进行了安排,也对组员对这个项目进行分析,编写代码,总结修改的整个过程进了记录和分析。这次我主要用到的设备有摄像机、闪光灯、抓拍控制系统、图像处理机。我也分析了很多程序解决方法最后就是对视频的制作和技术的分析拉,做视频是件很费时间很飞脑力的事情,做一段好的视频需要很多工作,需要音乐,需要合适的背景,需要很好的过度,更需要一个完美的解说。不过这都不是能难的倒我的越难我就越有动力,幸好我把视频做好了,没有辜负大家对我的期望。大家都说我做的很好,我非常的开心。对我们 90 后小组想当的看好和赞赏!竹宇琪在这个项目里我做了对家谱管理的系统分析。刚开始我们从网上下载好了我们需要的资料,通过取其精华去其糟粕,本来是想把系统整合的很完美,可是由于我 c 语言基础不太扎实,未能完成。也向同学请教,只能做到现在这个地步。通过这次课程设计,我对这个树的操作有了深刻的了解,对 C 语言也有了更深刻的了解。但我们需要更深刻地思考其实质是什么。了解实验所需的基本程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论