数据结构课程设计宿舍管理查询软件.

合集下载

宿舍管理查询系统软件

宿舍管理查询系统软件

宿舍管理查询系统软件(总100页)本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March河南城建学院课程设计报告书专业:计算机科学与技术课程设计名称:《数据结构课程设计》题目:宿舍管理查询软件班级:0814102班学号:081410222姓名:孟学丰同组人员: 李照耀指导老师:张延红张芳芳杨斌完成时间:2012年2月17日摘要在校学生的信息管理是校园管理中的一个重要内容,随着国家扩招政策的继续实施,学生数量也不断增加、信息的不断细化、各个行业间联系的不断密切,对人事管理的要求也不断提高。

如何记录和管理好学生的信息,对学生实施高效的宏观管理,对学生出入宿舍以及学生注入和迁出的信息的灵活的记录及更新,是一项繁重而艰巨的任务。

关键词:C++;数据库表;宿舍信息查询;宿舍信息管理目录目录 0第一章开发环境和开发工具 01.1 C#语言简介 01.2 开发背景 01.3 开发环境 (1)第二章算法思想 (2)2.1 系统需求分析 (3)2.2 系统总体设计 (2)2.2.1 系统设计目标 (2)2.2.2 开发设计思想 (3)2.2.3 系统功能模块设计 (4)2.3 算法思想描述 (4)第三章算法实现 (5)3.1 数据结构 (5)3.2 程序模块 (5)3.3 各模块之间的调用关系 (6)3.4 源程序代码 (6)第四章测试与分析 (14)4.1 测试数据选择 (14)4.2 测试结果分析 (16)总结 (18)心得体会 (19)参考文献 (20)第一章开发环境和开发工具1.1C/ C ++语言简介C++标准可分为两部分, C++语言本身和C++标准库。

C++标准库对于Visual C++是相当新的,实际上微软只是在发布Visual C++ 5.0时去除了一些“bug”。

标准库提供了标准的输入/输出、字符串、容器(如矢量、列表和映射等)、非数值运算(如排序、搜索和合并等)和对数值计算的支持。

数据结构课程设计之宿舍管理系统

数据结构课程设计之宿舍管理系统

##大学数据结构课程设计报告题目:宿舍管理查询软件院(系):学生姓名:班级:学号:起迄日期: 2011.6.20--2011.7.1指导教师:2010—2011年度第 2 学期一、需求分析1.问题描述:程序设计要求:为宿舍管理人员编写一个宿舍管理查询软件(1)采用交互工作方式(2)建立数据文件,数据文件按关键字(姓名、学号、放号)进行排序(冒泡、选择、插入排序等任选一种)(3) 查询菜单:(用二分查找实现以下操作)①按姓名查询②按学号查询③按放号查询(4)打印任一查询结果(可以连续操作)程序分析:(1)程序采用交互工作方式,也就是说要有一个人性化的操作界面。

将每一种操作赋给一个数字,通过输入不同的数字来实现不同的操作。

这样使人一看就能明白如何实现不同的操作。

全部使用提示选择方式,只需要输入你要使用方式的代号即可。

(2)本系统无数据信息,在使用的时候首先创建一个数据文件,开发一个录入数据的功能,使得所需要的数据存储到软件中,并暂时存在内存中,以便使用。

(3)录入和修改函数:建立相应的函数,在主函数中得到调用,以便于对学生信息的增加和修改。

(4)查询:以不同的关键字分别使用二分查找实现。

(5)为了使用方便和安全,增加了密码登录、密码锁定、退出、删除、全部删除、修改、存储为文本文档信息等功能。

2.基本功能(1)录入学生信息(2)显示学生信息(分别按学号、宿舍号、姓名进行排序后显示并在磁盘上以“.txt”格式保存显示的信息)(3)查询学生信息(分别按学号、宿舍号、姓名进行查询并显示)(4)修改学生信息(可进行单个删除、全部删除和修改学生信息)(5)存储学生信息(存储到磁盘上,保存为“.txt”格式)(6)锁定管理系统(进入密码登录界面,以确保安全)(7)退出管理系统3.输入输出各种功能之间的选择采用了数字提示方式,只需要根据提示进行选择相应的数字,在录入学生信息功能中姓名为长度30以内的任意字符,学生学号和宿舍号控制住15个数字以内。

数据结构宿舍管理查询系统的实现课程设计

数据结构宿舍管理查询系统的实现课程设计

2014-2015学年第一学期《数据结构》课程设计报告题目:宿舍管理查询系统的实现专业:班级:姓名:学号:指导教师:成绩:计算机与信息工程系2014年10 月25 日目录1设计任务............................... 错误!未定义书签。

2总体设计.. (3)3系统流程图 (3)4详细设计及测试.。

......。

...。

.。

..。

...。

.。

.。

.。

.。

.。

...。

..。

..。

..。

.。

..。

.55心得体会 (13)致谢.。

.。

.。

...。

..。

...。

.。

.。

.。

..。

..。

..。

..。

. ..。

..。

.。

.。

.....。

..。

.。

.。

13参考文献。

.....。

..。

.。

..。

..。

.。

.。

.。

..。

.。

....。

.。

.。

..。

....。

.。

.。

.。

....。

.。

14附录:源代码 (15)1设计任务题目:宿舍管理查询软件任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:(1)建立数据文件 ,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)(2)实现如下查询功能:按姓名查询按学号查询按房号查询(3)打印任意查询结果(可以连续操作)针对题目所要求的功能不太多,我特意添加了插入数据、读入文件数据以及将数据写入文件三个额外功能.2总体设计根据系统要求,即本系统具有信息的录入,显示,排序显示、查找,插入、从文件中读入数据、循环写入数据、结束程序等功能,先设计出详细的系统流程图,然后将源代码输入程序,进行编译调试即可。

程序总体分12个项目:输入记录、显示记录、按姓名排序并显示、按房间号排序并显示、按学号排序并显示、按姓名查找并显示、按房间号查找并显示、按学号查找并显示、插入一条记录按学号排序并显示、从文件中读入数据、循环写入数据以及结束程序.3系统流程图系统流程图下页图1所示否是 否 是图14详细设计及测试根据流程图,将程序源代码输入到编译环境中,按照提示选择进行记录的输入,输入一个数据后提示是否继续输入,直到结束程序为止。

数据结构课程设计——宿舍管理查询软件

数据结构课程设计——宿舍管理查询软件

数据结构课程设计宿舍管理查询软件班级学号班学生姓名提交日期2015年7月24日成绩计算机与通信工程学院一、需求分析1、程序设计任务为宿舍管理人员编写一个宿舍管理查询软件。

①程序设计要求:A. 采用交互工作方式B. 建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)②查询菜单: (用二分查找实现以下操作)A. 按姓名查询B. 按学号查询C. 按房号查询③打印任一查询结果(可以连续操作)2、功能①要实现交互工作方式,各项操作结束后均应返回主菜单;②系统本无任何信息数据,要建立数据文件,需开发一个信息录入功能,即首先创建一个学员线性表,同时我们可以将数据暂时保存在内存中,所以我们未开发信息存盘功能;③信息录入后都保存在内存中,用户看不到,需要设计一个信息显示功能,信息的显示应该便于查阅,所以需具备按各种关键字显示的功能;④本系统按关键字(姓名、学号、房号)进行冒泡排序,采用二分查找方式分别实现按关键字(姓名、学号、房号)查询功能;⑤由于有些同学因为不同原因而离校,所以设计了删除功能;⑥由于有新同学入校,所以设计了插入功能;⑦当用户操作完毕需要退出时,我们提供了退出选项,便于使用者退出交互式工作系统。

3、功能模块图4、流程图5、输入和输出①输入的形式1)开始创建线性表:按先后顺序输入姓名(20个字以内),学号(整型),房号(整型)。

2)根据用户所选择的操作键,然后再根据程序的相应提示进行输入。

选择操作键1(按姓名排序):无输入;选择操作键2(按学号排序):无输入;选择操作键3(按房号排序):无输入;选择操作键4(按姓名查找):输入要查找的姓名;选择操作键5(按学号查找):输入要查找的学号;选择操作键6(按房号查找):输入要查找的房号;选择操作键7(按学号插入):按照提示顺序输入要插入的学生姓名,学号,房号;选择操作键8(按学号删除):输入要删除学生的学号。

②输出的形式及范围根据用户选择的不同,会有不同的输出。

宿舍管理查询软件课程设计报告

宿舍管理查询软件课程设计报告

滁州学院课程设计题目宿舍管理查询软件课程设计报告课程名称:数据结构课程设计设计题目:宿舍管理查询软件院部:计算机与信息工程学院专业:网络工程组别:第四组起止日期: 2012年6月11日~2012年6月24日指导教师:计算机与信息工程学院二○一二年课程设计任务书目 录1绪论........................................................................................................................................ 1 组长学号 班级 系别计算机与信息工程学院 专业 组员指导教师胡成祥 课程设计目的1.为宿舍管理人员编写一个宿舍管理查询软件2.通过此次实验锻炼我们的编程能力与合作能力 课程设计所需环境 Windows XP 系统;VC++6.0 软件课程设计任务要求1.采用交互工作方式2. 建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)3. 查询菜单:(用二分查找实现以下操作)A.按姓名查询B.按学号查询C.按房号查询4. 打印任意查询结果(可以连续操作)课程设计工作进度计划 序号起止日期 工 作 内 容 分工情况 16.11~6.12 课程内容介绍和查找资料 26.12~6.13 构思程序整体框架,构思程序所需子函数 36.12~6.13 按照整体程序框架,编写子函数 46.13~6.15 编写主函数 56.16~6.20 修改完善程序,整理资料,着手课程设计报告。

6 6.20~6.24 做课程设计报告,整理经验教训,并作总结。

教研室审核意见:教研室主任签字: 年 月 日2需求分析 (1)2.1 课程设计题目 (1)2.2 课程设计任务及要求 (1)2.3课程设计思想 (1)2.4软硬件运行环境及开发工具 (2)3 概要设计 (2)4详细设计 (2)5调试与操作说明 (8)5.1 宿舍管理主菜单与信息录入 (8)5.2 学员信息显示 (9)5.3 插入学员信息 (9)5.4 查询学员信息 (10)6课程设计总结与体会 (11)致谢 (12)参考文献 (12)附录 (12)课程设计的主要内容1绪论作为当代大学生,精通一门学问是能在这个社会独立生存的必要条件。

宿舍管理查询软件

宿舍管理查询软件

《数据结构》课程设计报告(宿舍管理查询软件)一.需求分析(1)建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)(2)能够实现输入查询和删除功能。

(3)对已有的学生数据进行管理,比如删除功能和交换以及比较功能。

同时也可以再进行数据的输入和管理。

(4)在查询一项功能中,要求能对输入过的数据进行选择性的输出。

实现如下查询功能:按姓名查询按学号查询按房号查询(5)打印任一查询结果(可以连续操作)二.概要设计1>1)需要定义一个结构体:struct student //定义一个结构体,储存数据{char studentnum[15];int roomnum;char name[10];student *next; //结构体类型的指针};用来存储学生的信息。

2)main()//初始条件:必须保证原有记录是空时方可建立操作结果:建立一个新的数据文件3)print ( )//定义选择菜单显示函数/清除屏幕后重新显示菜单4)add(student *head)//定义节点插入函数添加数据信息5)search(student *head)serch1()按学号查找serch2()按姓名查找serch3()按房号查找初始条件:数据文件中含有纪录操作结果:不支持模糊查询必须查询项和关键字吻合情况下才可查询。

调用按不同关键字查询的子函数若存在相应的查询结果则显示在屏幕上,若查找的纪录不存在则提示该纪录不存在,请建立相应的数据纪6)searchstnum(student *head)/ /定义学号查找函数7)searchname(student *head)//定义姓名查找函数8)searchroom(student *head)//定义房间号查找函数9)sequence(student *head,int n)//定义排序函数将学号转换为数字比较,若前一节点学号大于后一节点,交换两节点的所有数据用q临时保存需要交换的所有数据,交换完成,释放q的内存空间10)printlist(student *head)//定义节点打印函数,在循环到链表底部时结束2>本程序包含9个函数:1.主函数main()2.选择菜单显示函数print()3.节点插入函数add(student *head)4.查找函数search(student *head)5.学号查找函数searchstnum(student *head)6.姓名查找函数searchname(student *head)7.房间号查找函数searchroom(student *head)8.排序函数sequence(student *head,int n)9.节点打印函数printlist(student *head)三.详细设计1. 主函数main(){int n,m;int listnum=0; //定义节点个数student *head;head=(student *)malloc(sizeof(student)); //为头指针开辟空间head->next=NULL;print();do{print(); //打印选择菜单scanf("%d",&n); //输入选项标号if(n==1){m=add(head); //调用节点插入函数if(m==1)listnum++; //函数调用成功节点个数加1}else if(n==2)search(head); //调用查找函数else if(n==3&&listnum!=0)sequence(head,listnum); //调用排序函数else if(n==3&&listnum==0){printf("记录为空,不能排序,按回车键返回\n");getchar();}else if (n==4&&listnum!=0)printlist(head); //在选择4的时候同时链表不为空,调用打印节点函数else if (n==4&&listnum==0){printf("记录为空,不能显示,按回车键返回\n");getchar();}else if(n==0)exit(0); //选择0,退出程序else{printf("输入有误,按回车键返回后重新输入\n");getchar();}}while(n);}构建图形用户界面一次调用其他模块完成总体功能;2 选择菜单显示函数print(){system("cls"); //清除屏幕后重新显示菜单printf("请按数字键0-3选择操作:\n");}3 节点插入函数add(student *head){int m=0;char n[15];student *p,*find=head->next;printf("请输入学号:\n");scanf("%s",&n);while(find!=NULL) //插入节点前先查找是否相同学号以存if(m==0) //若没有相同学号的节点else //若存在相同学号的节点printf("添加完毕.按回车键返回\n");getchar();if(m==0)return 1;elsereturn 0;}4 查找函数int search(student *head){int n,m;printf("按数字键0-3选择查找方式:\n");scanf("%d",&n){printf("输入有误,按回车键返回后重新输入\n");printf("\n查找完毕,按回车键返回\n");getchar()return 0;}为节点分配内存创建二进制文件用于存储学生信息通过一个循环一次录入学生信息5 学号查找函数searchstnum(student *head){student *p;char a[15];int sum=0;printf("请输入需要查询的学号:\n");scanf("%s",&a);p=head->next; //以头节点后第一个节点为起始while(p!=NULL)}return (sum); //返回查找标记值}打开文件遍历整个文件找到与制定学号匹配的信息输出查询到的信息6 姓名查找函数searchname(student *head){student *p;char a[10];int sum=0;printf("请输入需要查找的姓名:\n");scanf("%s",&a);p=head->next;while(p!=NULL)return (sum);}打开文件遍历整个文件找到与指定姓名匹配的信息输出查询到的信息7房间号查找函数searchroom(student *head){student *p;int a;int sum=0;printf("请输入需要查询的房间号:\n");scanf("%d",&a);p=head->next;while(p!=NULL)return (sum);}打开文件遍历整个文件找到与制定房号匹配的信息输出查询到的信息8排序函数sequence(student *head,int n){int i,j=0;long a,b;student *p,*q;printf("当前节点数为:%d,现开始对学号进行由小到大的冒泡排序\n\n",n);getchar();for (i=0;i<n;i++) //循环节点个数次排序过程{p=head->next;while(p->next!=NULL) //在查找到链表底部时结束当前循环过程{a=atol(p->studentnum); //将学号转换为数字比较b=atol(p->next->studentnum);if(a>b) //若前一节点学号大于后一节点,交换两节点的所有数据}printf("排序完成!按回车键返回\n");getchar();}9节点打印函数printlist(student *head){student *p;p=head->next;while (p!=NULL) //在循环到链表底部时结束{printf("\n学号:%s\n",p->studentnum);printf("姓名:%s\n",p->name);printf("房间号:%d\n\n",p->roomnum);p=p->next;}printf("显示完毕,按回车键返回\n");getchar();}四.调试分析1. add 函数在输入N个数据后执行N次,所以时间复杂度为O(n)search 函数需要查找所有的节点,所以在最坏的情况下时间复杂度为O(n)searchstnum ,searchname ,searchroom函数在每次调用时才使用,设调用次数为n则时间复杂度为O(n)sequence 函数在调用时每次执行一次内循环遍历链表.之后循环n次将数据放置在正确的位置,所以时间复杂度为O(n^2)2. 程序编译过程中,第一次函数参数传递错误,导致运行出错之后再编写排序函数的时候忘记在每次外循环时将修改指针指向头指针,导致排序不完全3.对我们这一学期实际学到的内容的检验,在课程设计的同时不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

宿舍管理查询软件

宿舍管理查询软件

河南城建学院课程设计报告书专业:计算机科学与技术课程设计名称:《数据结构课程设计》题目:宿舍管理查询软件班级:0814102班学号:081410222姓名:孟学丰同组人员: 李照耀指导老师:张延红张芳芳杨斌完成时间:2012年2月17日摘要在校学生的信息管理是校园管理中的一个重要内容,随着国家扩招政策的继续实施,学生数量也不断增加、信息的不断细化、各个行业间联系的不断密切,对人事管理的要求也不断提高。

如何记录和管理好学生的信息,对学生实施高效的宏观管理,对学生出入宿舍以及学生注入和迁出的信息的灵活的记录及更新,是一项繁重而艰巨的任务。

关键词:C++;数据库表;宿舍信息查询;宿舍信息管理目录目录 (1)第一章开发环境和开发工具 (1)1.1 C#语言简介 (1)1.2 开发背景 (1)1.3 开发环境 (1)第二章算法思想 (2)2.1 系统需求分析 (3)2.2 系统总体设计 (3)2.2.1 系统设计目标 (3)2.2.2 开发设计思想 (3)2.2.3 系统功能模块设计 (4)2.3 算法思想描述 (4)第三章算法实现 (5)3.1 数据结构 (5)3.2 程序模块 (5)3.3 各模块之间的调用关系 (6)3.4 源程序代码 (6)第四章测试与分析 (14)4.1 测试数据选择 (14)4.2 测试结果分析 (16)总结 (18)心得体会 (19)参考文献 (20)第一章开发环境和开发工具1.1 C/ C ++语言简介C++标准可分为两部分, C++语言本身和C++标准库。

C++标准库对于Visual C++是相当新的,实际上微软只是在发布Visual C++ 5.0时去除了一些“bug”。

标准库提供了标准的输入/输出、字符串、容器(如矢量、列表和映射等)、非数值运算(如排序、搜索和合并等)和对数值计算的支持。

应该说, C/C++包含了相对少的关键字,而且很多最有用的函数都来源于库,C++标准库实现容器和算法的部分就是STL。

数据结构宿舍管理查询系统的实现课程设计

数据结构宿舍管理查询系统的实现课程设计

2014-2015学年第一学期《数据结构》课程设计报告题目:宿舍管理查询系统的实现专业:班级:姓名:学号:指导教师:成绩:计算机与信息工程系2014年10 月25 日目录1设计任务............................... 错误!未定义书签。

2总体设计.. (3)3系统流程图 (3)4详细设计及测试 (5)5心得体会 (13)致谢 (13)参考文献 (14)附录:源代码 (15)1设计任务题目:宿舍管理查询软件任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:(1)建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)(2)实现如下查询功能:按姓名查询按学号查询按房号查询(3)打印任意查询结果(可以连续操作)针对题目所要求的功能不太多,我特意添加了插入数据、读入文件数据以及将数据写入文件三个额外功能。

2总体设计根据系统要求,即本系统具有信息的录入,显示,排序显示、查找,插入、从文件中读入数据、循环写入数据、结束程序等功能,先设计出详细的系统流程图,然后将源代码输入程序,进行编译调试即可。

程序总体分12个项目:输入记录、显示记录、按姓名排序并显示、按房间号排序并显示、按学号排序并显示、按姓名查找并显示、按房间号查找并显示、按学号查找并显示、插入一条记录按学号排序并显示、从文件中读入数据、循环写入数据以及结束程序。

3系统流程图系统流程图下页图1所示4详细设计及测试根据流程图,将程序源代码输入到编译环境中,按照提示选择进行记录的输入,输入一个数据后提示是否继续输入,直到结束程序为止。

将程序编译生成“学生宿舍管理系统.exe”。

运行该文件如图2所示。

图2 输出界面图输入记录采用循环输入while(sign!='n' && sign!='N') /*判断*/{printf("\t\t姓名:");scanf("\t\t%s", &room[n+i].name);printf("\t\t学号:");scanf("\t\t%s", &room[n+i].num);printf("\t\t房间号:");scanf("\t\t%s",&room[n+i].roomnum);printf("\t\t是否继续输入?(Y/N)");scanf("\t\t%c",&sign); /*输入判断*/i++;}返回(n+i);按照提示选择“1”进行记录的输入如图3所示:图3 输入记录显示图连续输入多组数据后,按“n”结束输入,提示按任意键继续,按任意键后选择“2”进行记录的显示如图4所示。

数据结构课程设计——宿舍管理查询软件

数据结构课程设计——宿舍管理查询软件

风从水上走过,留下粼粼涟漪; 骆驼从荒漠上走过,留下深深的脚迹; 哨鸽从天空飞过,留下串串欢韵; 光阴从树林穿过,留下圈圈年轮。

啊,朋友,我们从时代的舞台走过,将给社会留下些什么?花从春走过,留下缕缕花香 ;叶从夏走过,留下片片荫凉; 风从秋走过,留下阵阵金浪; 雪从冬走过,留下各种希望。

啊,朋友,我们从人生的四时走过,将给人生留下些什么?数据构造课程设计宿舍管理查问软件班级学号班学生姓名提交日期2015年 7月 24日成绩我们从人生的四时走过,将给人生留下些什么?计算机与通讯工程学院一、需求剖析1、程序设计任务为宿舍管理人员编写一个宿舍管理查问软件。

① 程序设计要求:A.采纳交互工作方式B. 成立数据文件,数据文件按重点字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)②查问菜单 : (用二分查找实现以下操作)A.按姓名查问B.按学号查问C.按房号查问③ 打印任一查问结果(能够连续操作)2、功能①要实现交互工作方式,各项操作结束后均应返回主菜单;②系统本无任何信息数据,要成立数据文件,需开发一个信息录入功能,即第一创立一个学员线性表,同时我们能够将数据临时保留在内存中,因此我们未开发信息存盘功能;③信息录入后都保留在内存中,用户看不到,需要设计一个信息显示功能,信息的显示应当便于查阅,因此需具备按各样重点字显示的功能;④本系统按重点字(姓名、学号、房号)进行冒泡排序,采纳二分查找方式分别实现按重点字(姓名、学号、房号)查问功能;⑤因为有些同学因为不一样原由此离校,因此设计了删除功能;⑥因为有新同学入校,因此设计了插入功能;⑦当用户操作完成需要退出时,我们供给了退出选项,便于使用者退出交互式工作系统。

3、功能模块图我们从人生的四时走过,将给人生留下些什么?4、流程图我们从人生的四时走过,将给人生留下些什么?5、输入和输出①输入的形式1)开始创立线性表:按先后次序输入姓名(20个字之内),学号(整型),房号(整型)。

数据结构课程设计 宿舍管理查询软件.doc

数据结构课程设计 宿舍管理查询软件.doc

数据结构课程设计报告设计题目:宿舍管理查询软件学号:姓名:指导教师:专业:班级:学年学期:起止时间:哈尔滨师范大学计算机科学与信息工程学院目录一.具体任务 (1)二.软件环境 (1)三.算法设计思想及流程图 (1)1. 算法设计思想 (1)2. 流程图 (1)四.源代码 (2)五.运行结果 (9)六.收获及体会 (10)七.参考文献 (10)八.教师评价表 (11)数据结构课程设计报告一.程序设计题目和具体任务:题目:宿舍管理查询软件(限1 人完成)任务:1)为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:A.采用交互工作方B.建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)2)查询菜单: (用二分查找实现以下操作)A.按姓名查询B.按学号查询C.按房号查询3)打印任一查询结果(可以连续操作)二.软件环境:C语言三.算法设计思想及流程图1.算法设计思想:主要有主菜单函数,插入功能子菜单函数,查找功能子菜单函数,学生信息录入函数,显示函数,排序函数,插入函数以及查找函数。

在每个区域中会调用不同的函数来实现主要的功能。

在插入功能里调用子菜单函数;在显示信息时调用排序函数先对需要输出的信心进行排序,然后再输出;在查找功能里会调用查找函数来进行查找,包括按照性别,学号,姓名,房间号等查询。

四.源代码:#include <stdio.h>#include<iomanip>#include<fstream># include <stdlib.h>#include<iostream.h># define N 20void showheader();int menu();int menu3();int menu5();//int quanxian();//void SavePass();struct student shuru();void display(struct student);void sort(struct student stu[N],int);void charu(struct student stu[N],int);void chazhao1(struct student stu[N],int i); void chazhao2(struct student stu[N],int i); void chazhao3(struct student stu[N],int i);struct student{int ID;char name[15];char sex;int roomnum;float score[3];char *getSex(){if(sex=='g')return "女";elsereturn "男";}};void main(){struct student stu[N];int count=0,m=0,j;char ch,ch1;int choice,choice3,choice4;int user;do{do{ ch1='n';choice=menu();switch(choice){case 1: {do{cout<<"*********** 学员信息录入 ********\n";cout<<"请输入第"<<count+1<<"个学员的信息\n\n";stu[count]=shuru();//cout<<"是否继续(y/n)";fflush(stdin);ch=getchar();count++;}while(ch=='y');break;}case 2:{cout<<"******************* 学员信息显示 ************\n";cout<<"\n排序后的信息如下:\n";sort(stu,count);showheader();for(j=0;j<count;j++){display(stu[j]);}break;}case 3://插入功能{while(choice3!=3){choice3=menu3();if(choice3==1){do{ cout<<"****************** 学员信息插入 ***************\n";charu(stu,count);count++;cout<<"是否继续插入?(y/n)";fflush(stdin);ch=getchar();}while(ch=='y');}if (choice3==2){cout<<"\n\n插入学生信息后如下:\n"; sort(stu,count);showheader();for(j=0;j<count;j++){display(stu[j]);}}}break;}case 4://查找功能{while(choice4!=4){choice4=menu5();if(choice4==1){chazhao1(stu,count);}if(choice4==2){chazhao2(stu,count);}if(choice4==3){chazhao3(stu,count);}}break;}case 5://退出{cout<<"确认退出?(y/n)";fflush(stdin);ch=getchar();break;}default:{cout<<"\a\a警告:您输入错误,是否重输!(y/n)";fflush(stdin);ch1=getchar();break;}}}while(ch=='n'|| ch1=='y');{cout<<"\a\a警告:您的用户名或密码输入有误!是否重输?(y/n)"; }fflush(stdin);ch=getchar();}while(ch=='y');}struct student shuru(){struct student stu;cout<<"学号:";cin>>stu.ID;cout<<"姓名:";cin>>;cout<<"性别(g/b):";fflush(stdin);cin>>stu.sex;cout<<"房间号:";cin>>stu.roomnum;cout<<"是否继续?(Y/N)"<<endl;return stu;}void display(struct student stu){cout<<"\t"<<stu.ID<<"\t";cout<<<<"\t";cout<<stu.getSex()<<"\t";cout<<stu.roomnum<<"\t"<<endl;;}void sort(struct student stu[N],int i){int j,k;struct student temp;for(j=0;j<i;j++){for(k=0;k<i-j-1;k++){if((stu[k].ID)>(stu[k+1].ID)){temp=stu[k];stu[k]=stu[k+1];stu[k+1]=temp;}}}}void charu(struct student stu[N],int k){int i,l;struct student in ;in=shuru();for(i=0;i<k;i++){}for(l=k;l>i;l--){stu[l]=stu[l-1];}stu[i]=in;}int menu(){ int choice;cout<<"\t\t*************\n\n\t\t\t 欢迎进入学生宿舍管理查询系统\n\n\t\t*****************************\n\n";cout<<"\t\t\t***************主菜单***************\n\n";cout<<"\t\t\t\t1> 学生信息录入\n\n";cout<<"\t\t\t\t2> 学生信息显示\n\n";cout<<"\t\t\t\t3> 插入学生信息\n\n";cout<<"\t\t\t\t4> 查找学生信息\n\n";cout<<"\t\t\t\t5> 退出\n";cout<<"\n\n请选择功能选项:";cin>>choice;return choice;}int menu3(){ cout<<"\t***************这里显示的是插入功能子菜单***************\n\n"; cout<<"\t\t\t\t1、插入学生信息\n\n";cout<<"\t\t\t\t2、显示插入后的学生信息\n\n";cout<<"\t\t\t\t3、退出子菜单,返回上一级菜单\n\n";cout<<"\n\n请选择功能选项:";int choice3;cin>>choice3;return choice3;}void chazhao1(struct student stu[N],int i){int select,j;char ch;cout<<"\t***********您选择的是按照学号查找:*********\n\n"; do{cout<<"\n\n请输入学号:";cin>>select;for(j=0;j<i;j++){if(select==stu[j].ID){break;}}if(j<i){showheader();display(stu[j]);}else{cout<<"你查找的信息不存在\n";}fflush(stdin);ch=getchar();}while(ch=='y');}void chazhao2(struct student stu[N],int i){int j;char name[15];char ch;cout<<"\t*********您选择的是按照姓名查找:********\n\n";do{cout<<"\n\n请输入姓名:";cin>>name;for(j=0;j<i;j++){if(strcmp(name,stu[j].name)==0){break;}}if(j<i){showheader();display(stu[j]);}else{cout<<"你查找的信息不存在\n";}fflush(stdin);ch=getchar();}while(ch=='y');}void chazhao3(struct student stu[N],int i){int j,room;char ch;cout<<"\t*******************您选择的是按照房间号查找:*******************\n\n"; do{cout<<"\n\n请输入房间号:";cin>>room;for(j=0;j<i;j++){if(room==stu[j].roomnum){break;}}if(j<i){showheader();display(stu[j]);}else{cout<<"你查找的信息不存在\n";}cout<<"是否继续查找?(y/n)";fflush(stdin);ch=getchar();}while(ch=='y');}int menu5(){cout<<"\t**********这里显示的是查找功能子菜单***********\n\n"; cout<<"\t\t\t\t1、按照学号查找\n\n";cout<<"\t\t\t\t2、按照姓名查找\n\n";cout<<"\t\t\t\t3、按照房间号查找\n\n";cout<<"\t\t\t\t4、退出子菜单,返回上一级菜单\n\n";cout<<"\n\n请选择功能选项:";int choice4;cin>>choice4;return choice4;}void showheader(){ cout<<"\n\n\t************************************\n";cout<<"\t学号\t姓名\t性别\t房间号\t\n";cout<<"\t******************************************\n";}五.程序运行的结过图2.主菜单显示图3.信息录入界面图4.信息显示界面图5.查找学生信息界面六.收获及体会通过四个星期的时间,我把课程设计给完成了,这是一个坚苦而又漫长的过程。

c宿舍管理查询软件-课程设计报告

c宿舍管理查询软件-课程设计报告

《c 语言程序设计》课程设计报告题目: 宿舍管理查询软件专业: 网络工程 班级: 16(3)班 姓名: 代应豪 指导教师: 代美丽成绩:计算机学院2017年4月21日(课外的,第十周答辩和总结) 2017年5月21日(课内的,第十四周答辩和总结)2016-2017学年 第2学期一需求设计1.1任务:为宿舍管理人员编写一个宿舍管理查询软件1.1.1程序设计要求:主要利用数据结构能力设计开发一个小型的管理信息系统,至少具有如下功能:宿舍号录入,按学号、性别、系别、专业、班级进行查询等操作。

操作界面要符合用户的一般习惯,图形或文本界面都可以。

要求:明确课程设计的目的,能根据课程设计的要求,查阅相关文献,为完成设计准备必要的知识;提高学生用高级语言进行程序设计的能力,重点提高用C语言进行文件操作和绘图应用的编程技术水平;初步了解软件开发的一般方法和步骤;提高撰写技术文档的能力。

1.1.2查询菜单①按姓名查询②按学号查询③按房号查询1.1.3各个模块之间的主要关系该程序的功能主要是实现学生住宿的录入,并对学生住宿的相应信息进行学生信息的统计。

各个模块之间的关系是相互联系的。

首先,主函数包含了所有的子函数。

主函数是整个程序的核心。

子函数之间也是有联系的,对学生住宿信息的添加、修改、删除、查询,必须是在学生宿舍号录入的情况下进行的。

因此对学生住宿信息的录入是非常重要的。

在学生住宿信息的添加、修改、删除、查询等所有子函数之间是没有多大联系的。

1.2功能:根据上述要求,我们开始考虑系统应具备的功能:①要实现交互工作方式,各项操作结束后均应返回主菜单;②系统本无任何信息数据,要建立数据文件,需开发一个信息录入功能,即首先创建一个学员线性表,同时我们可以将数据暂时保存在内存中,所以我们未开发信息存盘功能;③信息录入后都保存在内存中,用户看不到,需要设计一个信息显示功能,信息的显示应该便于查阅,所以需具备按各种关键字显示的功能;④本系统按关键字(姓名、学号、房号)进行冒泡排序,采用二分查找方式分别实现按关键字(姓名、学号、房号)查询功能;⑤由于有些同学因为不同原因而离校,所以设计了删除功能;⑥由于有新同学入校,所以设计了插入功能;⑦当用户操作完毕需要退出时,我们提供了退出选项,便于使用者退出交互式工作系统。

宿舍管理查询软件报告

宿舍管理查询软件报告

. . . 《数据结构》课程设计报告设计题目宿舍管理查询软件专业软件工程班级姓名学号完成日期目录1. 问题描述 (2)2. 系统设计 (2)3. 数据结构与算法描述 (5)4. 测试结果与分析………………………………………页码5. 总结…………………………………………………页码6. 参考文献………………………………………………页码附录程序源代码…………………………………………页码(要求:给出一级目录,宋体加粗,四号字,1.5倍行距。

)(报告正文部分):宿舍管理查询软件(要求:正文部分一律用小四号字,宋体,1.5倍行距。

一级标题靠左,四号加粗。

二级、三级标题靠左,小四加粗。

)1. 问题描述由于大学宿舍宿舍楼群过多,且每栋宿舍居住学生较多,因此宿舍管理与查询的任务非常繁重和复杂,然而多大学宿舍还未普及电子信息管理式,还在采用传统的笔录备案管理查询式,因此,为提高宿舍管理人员的工作效率便其对学生宿舍的管理提出此开发项目。

2. 系统设计2.1 设计目标学生宿舍管理系统采用的是计算机化管理,系统界面做的尽量人性化,系统具有运行速度快、安全性高、稳定性好的优点,并且具备完善的报表生成、修改功能,能够快速的查询学校所需的住宿信息。

基本功能:(1)采用交互工作式(2)建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)(3)实现如下查询功能: 按姓名查询按学号查询按房号查询(4)可打印任意查询结果(可以连续操作)2.2 设计思想①要实现交互工作式,各项操作结束后均应返回主菜单;要确保系统的密性和安全性,就应当具有某些操作权限,没有系统管理员或者普通用户的用户名和密码任人都不能登录该系统;在具体实现时还应为系统管理员和普通用户设定不同的权限,系统管理员应当可以使用系统的所有模块,普通用户对于用户管理模块、学生学期注册(涉及到交费问题)及学生毕业离校等(此模块需判断该生有无欠费)牵扯到经济之类的模块是无权使用的。

宿舍管理查询软件的设计

宿舍管理查询软件的设计
③信息输入后都保存在内存中后,还需要设计一个信息显示功能,信息的 显示应该便于查询,所以需具备按各种关键字显示的功能;
④本系统按关键字(姓名、学号、房号)进行冒泡排序,采用二分查找方 式分别实现按关键字(姓名、学号、房号)查询功能;
⑤当用户操作完毕需要退出时,我们提供了退出选项,便于使用者退出。
2 算法设计
{
int length; //当前长度
stu *base; //存储空间基址
int listsize; //当前分配的存储容量
}linklist;
void init(linklist &l)//线性表初始化
{
l.length=0;
l.base=(stu *)malloc(N*sizeof(stu));
房号查询
l.listsize=N;
}
void menu()//操作菜单函数
{
printf("\n");
printf("
***************请按键选择操作****************\n");
printf("\n");printf("\n");
printf("
1 按姓名排序
2 按学号排序\n");
2.1 线性表的顺序存储
2.1.1 存储结构
本系统定义的存储结构采用结构体数组,结构体为:
typedef struct
//定义结构体成员
{
char name[20];
int num;
int room;
}stu;
stu stud;
typedef struct
{

数据结构-宿舍管理查询系统之欧阳法创编

数据结构-宿舍管理查询系统之欧阳法创编

攀枝花学院学生课程设计(论文)题目:宿舍管理查询软件的设计与实现学生姓名:学号:所在院(系):计算机学院专业:班级:指导教师:职称:2011年6月4日教务处制攀枝花学院本科学生课程设计任务书注:任务书由指导教师填写。

课程设计(论文)指导教师成绩评定表摘要本宿舍管理查询软件是为方便宿舍管理人员实现宿舍管理查询而开发的,具有信息录入、显示、查询、排序、插入和删除功能,能实现信息修改和通过别的途径导入大量数据,可连续打印任一查询结果,但不能实现信息存盘,使用简单方便,点击程序即可运行。

关键词:管理,查询,结构体,函数目录攀枝花学院本科学生课程设计任务书课程设计(论文)指导教师成绩评定表I摘要II1 方案设计- 0 -1.1任务:- 0 -1.1.1程序设计要求:- 0 -1.1.2查询菜单: (用二分查找实现以下操作)- 0 -1.1.3打印任一查询结果(可以连续操作)- 0 -1.2功能:- 0 -2 算法设计- 1 -2.1线性表的顺序存储- 1 -2.1.1存储结构- 1 -2.1.2程序结构图为:- 1 -3 详细设计- 2 -4 调试分析- 8 -4.1使用方法- 8 -4.2测试数据:- 9 -4.2.1开始录入的数据:- 9 -4.2.2插入的数据:- 9 -4.2.3查找的数据:- 9 -4.2.4删除的数据:- 9 -4.3测试输出结果(以运行结果图表示):- 10 -4.3.1欢迎界面:- 10 -4.3.2按任意键进入线性表的创建界面:- 10 -4.3.3输入数据,开始创建:- 11 -4.3.4请按键选择操作:- 11 -4.3.5按姓名排序:- 12 -4.3.6按学号排序:- 12 -4.3.7按房号排序:- 12 -4.3.8插入后显示:- 13 -4.3.9按姓名查找:- 13 -4.3.10按学号查找:- 13 -4.3.11按房号查找:- 14 -4.3.12进入删除功能,删除数据后显示剩余的学生信息:- 14 -4.3.13退出(数字为零时退出):- 15 -4.4分析结果- 15 -5 总结- 16 - 参考文献- 17 -1方案设计1.1任务:为宿舍管理人员编写一个宿舍管理查询软件1.1.1程序设计要求:①采用交互工作方式②建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)1.1.2查询菜单: (用二分查找实现以下操作)①按姓名查询②按学号查询③按房号查询1.1.3打印任一查询结果(可以连续操作)1.2功能:根据上述要求,我们开始考虑系统应具备的功能:①要实现交互工作方式,各项操作结束后均应返回主菜单;②系统本无任何信息数据,要建立数据文件,需开发一个信息录入功能,即首先创建一个学员线性表,同时我们可以将数据暂时保存在内存中,所以我们未开发信息存盘功能;③信息录入后都保存在内存中,用户看不到,需要设计一个信息显示功能,信息的显示应该便于查阅,所以需具备按各种关键字显示的功能;④本系统按关键字(姓名、学号、房号)进行冒泡排序,采用二分查找方式分别实现按关键字(姓名、学号、房号)查询功能;⑤由于有些同学因为不同原因而离校,所以设计了删除功能;⑥由于有新同学入校,所以设计了插入功能;⑦当用户操作完毕需要退出时,我们提供了退出选项,便于使用者退出交互式工作系统。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学号:学院:计算机与信息技术学院专业:软件工程年级: 2014软件工程班姓名:论文(设计)题目:数据结构课程设计报告成绩:2015 年12 月 15目录一,需求分析 (5)二,算法设计思想及流程图 (5)1.,算法设计思想 (5)2.,流程图 (5)三,详细设计(源代码) (6)四,运行结果 (13)五,收获及体会 (14)六,参考文献 (14)数据结构课程设计报告计算机与信息技术学院软件工程专业姓名赵静静学号20145104055一、课程设计(论文)题目宿舍管理查询二、课程设计(论文)工作自2015 年12月12 日起至 2015 年12月15 日止三、课程设计(论文) 地点: 计算机学院四、课程设计(论文)内容要求:1.本课程设计的目的(1)巩固和加深对数据结构基本知识的理解,提高综合运用课程知识的能力。

(2)使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。

(3)使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。

2.课程设计的任务及要求1)基本要求:(1)对系统进行功能模块分析、控制模块分析;(2)系统设计要能完成题目所要求的功能;(3)编程简练,可用,尽可能的使系统的功能更加完善和全面;(4)说明书、流程图要清楚;(5)提高学生的论文写作能力;(6)特别要求自己独立完成;2)创新要求:在基本要求达到后,可进行创新设计,如改善算法性能、友好的人机界面。

3)课程设计论文编写要求(1)要按照书稿的规格打印与写课程设计论文(2)论文包括目录、正文、小结、参考文献、附录等(3)课程设计论文装订按学校的统一要求完成4)课程设计进度安排内容天数地点构思及收集资料 1 图书馆编码与调试 3 实验室撰写论文 1 图书馆、实验室学生签名:赵静静2015 年12 月12日课程设计(论文)评审意见(1)基本算法(20分):优()、良()、中()、一般()、差();(2)设计分析(20分):优()、良()、中()、一般()、差();(3)调试分析(20分):优()、良()、中()、一般()、差();(4)创新设计(20分):优()、良()、中()、一般()、差();(5)总结分析(20分):优()、良()、中()、一般()、差();(6)格式规范性及考勤是否降等级:是()、否()评阅人:职称:讲师2015 年12月15日一,需求分析题目:宿舍管理查询软件(限1 人完成)任务:1)为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:A.采用交互工作方B.建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)2)查询菜单: (用二分查找实现以下操作)A.按姓名查询B.按学号查询C.按房号查询二.算法设计思想及流程图1. 算法设计思想:主要有主菜单函数,插入功能子菜单函数,查找功能子菜单函数,学生信息录入函数,显示函数,排序函数,插入函数以及查找函数。

在每个区域中会调用不同的函数来实现主要的功能。

在插入功能里调用子菜单函数;在显示信息时调用排序函数先对需要输出的信心进行排序,然后再输出;在查找功能里会调用查找函数来进行查找,包括按照性别,学号,姓名,房间号等查询。

2. 流程图:Y N图1 宿舍管理查询系统流程图显示“宿舍管理查询系统主菜单” “信息录入” 输入“学号,姓名,性别,房间号” 是否继续 “信息显示” 输出已录入的学生信息 查找功能子菜单 插入功能子菜单 插入学生信息 分别进行查询 输入“4”返回上一级菜单 输入“3”返回上一级菜单 输入“5”退出 结束三,源代码:#include <stdio.h>#include<iomanip>#include<fstream># include <stdlib.h>#include<iostream.h># define N 20void showheader();int menu();int menu3();int menu5();//int quanxian();//void SavePass();struct student shuru();void display(struct student);void sort(struct student stu[N],int);void charu(struct student stu[N],int);void chazhao1(struct student stu[N],int i); void chazhao2(struct student stu[N],int i); void chazhao3(struct student stu[N],int i);struct student{int ID;char name[15];char sex;int roomnum;float score[3];char *getSex(){if(sex=='g')return "女";elsereturn "男";}};void main(){struct student stu[N];int count=0,m=0,j;char ch,ch1;int choice,choice3,choice4;int user;do{do{ ch1='n';choice=menu();switch(choice){case 1: {do{cout<<"*********** 学员信息录入 ********\n";cout<<"请输入第"<<count+1<<"个学员的信息\n\n";stu[count]=shuru();//cout<<"是否继续(y/n)";fflush(stdin);ch=getchar();count++;}while(ch=='y');break;}case 2:{cout<<"******************* 学员信息显示 ************\n";cout<<"\n排序后的信息如下:\n";sort(stu,count);showheader();for(j=0;j<count;j++){display(stu[j]);}break;}case 3://插入功能{while(choice3!=3){choice3=menu3();if(choice3==1){do{ cout<<"****************** 学员信息插入 ***************\n"; charu(stu,count);count++;cout<<"是否继续插入?(y/n)";fflush(stdin);ch=getchar();}while(ch=='y');}if (choice3==2){cout<<"\n\n插入学生信息后如下:\n"; sort(stu,count);showheader();for(j=0;j<count;j++){display(stu[j]);}}}break;}case 4://查找功能{while(choice4!=4){choice4=menu5();if(choice4==1){chazhao1(stu,count);}if(choice4==2){chazhao2(stu,count);}if(choice4==3){chazhao3(stu,count);}}break;}case 5://退出{cout<<"确认退出?(y/n)";fflush(stdin);ch=getchar();break;}default:{cout<<"\a\a警告:您输入错误,是否重输!(y/n)";fflush(stdin);ch1=getchar();break;}}}while(ch=='n'|| ch1=='y');{cout<<"\a\a警告:您的用户名或密码输入有误!是否重输?(y/n)"; }fflush(stdin);ch=getchar();}while(ch=='y');}struct student shuru(){struct student stu;cout<<"学号:";cin>>stu.ID;cout<<"姓名:";cin>>;cout<<"性别(g/b):";fflush(stdin);cin>>stu.sex;cout<<"房间号:";cin>>stu.roomnum;cout<<"是否继续?(Y/N)"<<endl;return stu;}void display(struct student stu){cout<<"\t"<<stu.ID<<"\t";cout<<<<"\t";cout<<stu.getSex()<<"\t";cout<<stu.roomnum<<"\t"<<endl;;}void sort(struct student stu[N],int i){int j,k;struct student temp;for(j=0;j<i;j++){for(k=0;k<i-j-1;k++){if((stu[k].ID)>(stu[k+1].ID)){temp=stu[k];stu[k]=stu[k+1];stu[k+1]=temp;}}}}void charu(struct student stu[N],int k){int i,l;struct student in ;in=shuru();for(i=0;i<k;i++){}for(l=k;l>i;l--){stu[l]=stu[l-1];}stu[i]=in;}int menu(){ int choice;cout<<"\t\t*************\n\n\t\t\t 欢迎进入学生宿舍管理查询系统\n\n\t\t*****************************\n\n";cout<<"\t\t\t***************主菜单***************\n\n";cout<<"\t\t\t\t1> 学生信息录入\n\n";cout<<"\t\t\t\t2> 学生信息显示\n\n";cout<<"\t\t\t\t3> 插入学生信息\n\n";cout<<"\t\t\t\t4> 查找学生信息\n\n";cout<<"\t\t\t\t5> 退出\n";cout<<"\n\n请选择功能选项:";cin>>choice;return choice;}int menu3(){ cout<<"\t***************这里显示的是插入功能子菜单***************\n\n";cout<<"\t\t\t\t1、插入学生信息\n\n";cout<<"\t\t\t\t2、显示插入后的学生信息\n\n";cout<<"\t\t\t\t3、退出子菜单,返回上一级菜单\n\n";cout<<"\n\n请选择功能选项:";int choice3;cin>>choice3;return choice3;}void chazhao1(struct student stu[N],int i){int select,j;char ch;cout<<"\t***********您选择的是按照学号查找:*********\n\n"; do{cout<<"\n\n请输入学号:";cin>>select;for(j=0;j<i;j++){if(select==stu[j].ID){break;}}if(j<i){showheader();display(stu[j]);}else{cout<<"你查找的信息不存在\n";}fflush(stdin);ch=getchar();}while(ch=='y');}void chazhao2(struct student stu[N],int i){int j;char name[15];char ch;cout<<"\t*********您选择的是按照姓名查找:********\n\n";do{cout<<"\n\n请输入姓名:";cin>>name;for(j=0;j<i;j++){if(strcmp(name,stu[j].name)==0){break;}}if(j<i){showheader();display(stu[j]);}else{cout<<"你查找的信息不存在\n";}fflush(stdin);ch=getchar();}while(ch=='y');}void chazhao3(struct student stu[N],int i){int j,room;char ch;cout<<"\t*******************您选择的是按照房间号查找:*******************\n\n";do{cout<<"\n\n请输入房间号:";cin>>room;for(j=0;j<i;j++){if(room==stu[j].roomnum){break;}}if(j<i){showheader();display(stu[j]);}else{cout<<"你查找的信息不存在\n";}cout<<"是否继续查找?(y/n)";fflush(stdin);ch=getchar();}while(ch=='y');}int menu5(){cout<<"\t**********这里显示的是查找功能子菜单***********\n\n"; cout<<"\t\t\t\t1、按照学号查找\n\n";cout<<"\t\t\t\t2、按照姓名查找\n\n";cout<<"\t\t\t\t3、按照房间号查找\n\n";cout<<"\t\t\t\t4、退出子菜单,返回上一级菜单\n\n";cout<<"\n\n请选择功能选项:";int choice4;cin>>choice4;return choice4;}void showheader(){ cout<<"\n\n\t************************************\n";cout<<"\t学号\t姓名\t性别\t房间号\t\n";cout<<"\t******************************************\n";}四,程序运行的结果图2.主菜单显示图3.信息录入界面图4.信息显示界面图5.查找学生信息界面五,收获及体会通过此次做的程序,我深深的体会到当一名程序员的辛苦和努力。

相关文档
最新文档