【精品】c语言寝室管理.doc

【精品】c语言寝室管理.doc

ID:56184669

大小:476.50 KB

页数:23页

时间:2020-03-18

【精品】c语言寝室管理.doc_第1页
【精品】c语言寝室管理.doc_第2页
【精品】c语言寝室管理.doc_第3页
【精品】c语言寝室管理.doc_第4页
【精品】c语言寝室管理.doc_第5页
资源描述:

《【精品】c语言寝室管理.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、课程设计成绩考勤成绩(%)指导老师评语报告及程序成绩(%)总评成绩指导老师签名:《数据转构》课程设计报告学院(系):电计系班级:软件一班学生姓名:—学号指导教师:时间:从2011年9月5日到2011年9月9日课程设计题目程序设计目标建立数据文件,数据文件按关键字包含(姓名、学号、房号),本程序采用冒泡排序发排序,实现按照姓名首字母排序,学号排序,以及寝室号排序,因为查找时涉及相同姓名以及相同寝室号的情况,故查找采用的是顺序查找法,考虑到方便管理,故以一栋楼为对象,人数上限设为400,可设立外部程序调用每栋楼的数据,即可实现对全院是寝室管理。姓名字符长度不能超过20,学号

2、耍12位数字,寝室号格式为X+5位数字,未按照规定输入时会自提示出错,然后退出程序,菜单选项分别有:0,插入学员插入学员能在指定的寝室中插入,输入寝室号,规定每个寝室住4人,如果该寝室人数已满,则会显示:该寝室人数已满!插入成功会提醒:恭喜你已是该寝室成员。该项功能将有助丁•小规模调寝室。1,重新输入学员重新输入学员。功能是格式化原来记录,重新输入新成员,用于大规模的寝室调动。2,删除记录删除记录是输入学号进行删除,因为考虑到按照姓名删除会出现相同姓名的情况,故只设这种删除方式。3,按照姓名查找输入姓名后能查找该姓名的人的姓名,学号以及房号,相同姓名的人也会一起找到,并

3、显示出来。4,按照学号查找输入学号,能准确快速的找到你耍查找的记录。一冃找到记录,就会即刻跳出循环,减少时间。5,按照寝室号查找输入寝室号,会显示该寝室里住的每个成员。6,按照姓名排序按照姓名的首字母排序。从8到z。7按昭学号排序菽照辜号的大小排序。从小到大。&按照寝室号排序按照寝室号码的顺序排序,从小到大。9,显示记录打印出所有记录。9,保存记录保存记录到程序冃录下的record,txt文件中。10,加载记录自动读取程序冃录下的record,txt文件。11,退出退出整个程序。1、问题描述建立结构体,结构体元素有:姓名,学号,寝室号。用switch语句和循环语句实现程

4、序的反复使用,用了结构体,排序,折半查找,问题关键在用折半查找法找出名字相同的人,寝室号相同的多个人,文件的保存和读取。2、问题分析排序直接比较字符的大小,折半查找查多个人:用折半查找先找到其中一个人,然后再用那个人和相邻的人比较,相同的就打印出来。由此解决了用折半查找,找出多个人的问题。二、概要设计利用switch语句将程序各个部分联系起來,函数相互调用,可实现交互作用。1、数据结构:姓名,学号,寝室号2、程序模块:12个功能模块+主程序+菜单选项3、各模块之间的调用关系:用主程序进入菜单选项,用switch语句连接所有功能函数,折半查找用了排序功能。三、详细设计模块

5、的功能描述流程框图删除记录结束C源程序清单:1213.cpp:Definestheentrypointfortheconsoleapplication.//#inelude"stdafx.h"ifino1ude"stdio.h"#include"stdlib.h"#inelude"string,h"#inelude"ctype.h"^defineM400/*M为寝室总人数*/typedefstruct/*定义一个结构体,存姓名,学号,寝室号*/{charname[20];*姓名*charxuehao[20];/*学号*/charfanghao[20];/*寝宅'J*/)

6、ADDRESS;inttianjiti(ADDRESSt[]);重新添加成员*intshanchu(ADDRESSt[],intn);/*删除寝室成员*/intxingming(ADDRESSt[],intn);/*按照姓名查找*/intxuehao(ADDRESSt[],intn);*按照学号查找*intfanghao(ADDRESSt[],intn);'*按照寝室号查找*/voidxingmingpx(ADDRESSt[],intn);*按照姓名排序*/voidxuehaopx(ADDRESSt[],intn);*按照学弓排序*voidfanghaopx(ADDRE

7、SSt[],intn);*按照寝室号排序*voidxianshi(ADDRESSt[],intn);/*显乐*voidsave(ADDRESSt[],intn);/*■保存记录*/intmenu.select0;*主菜单*intload(ADDRESSt[J);/*从外部加载文件记录*/intadd(ADDRESSt[],intn);*添加成员*voidmainO*丄函数*{ADDRESSadr[MI:/*定义一个结构体数纽,M-400*/intlength;*成员个数*system("cis");/*清屏*/for(;;)/*无限循环,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。