校园导航系统课程设计报告.doc
《校园导航系统课程设计报告.doc》由会员分享,可在线阅读,更多相关《校园导航系统课程设计报告.doc(61页珍藏版)》请在咨信网上搜索。
1、校园导航系统课程设计报告姓 名: 郭璇 学 号: 班 级: 10网络 专 业: 网络工程 指导教师: 唐轶媛 蒋荣萍 时 间:2023/6/25-2023/7/6信息科学与工程学院目 录摘要.11. 题目.12. 概要设计.13. 调试分析.154. 参考文献.151. 题目校园导航系统设计一个校园导游程序,后台操作:1、操作员信息管理如修改密码等2、能根据学校的规模进行添加景点信息、修改景点信息等功能,3、若临时有交通管制,能进行交通管制的设立和撤消(如某某时间段那条路进行那个方向的交通管制等)前台为来访的客人提供各种信息查询服务:1、设计学校的校园平面图,所含景点不少于10个。以图中顶点表
2、达校内各景点,存放景点名称、代号、简介等信息;以边表达途径,存放途径长度等相关信息。2、为来访客人提供图中任意景点相关信息的查询。3、提供途中任意景点问路查询,即求任意两个景点间的一条最短的简朴途径。1.1 需求分析设计一个校园导航系统,导航系统又分为游客和管理员。要进行管理操作还是游客操作由用户自己选择管理员的操作:修改景点信息、增长景点信息、交通管制等。游客的操作:查看景点信息和查最短途径。2. 概要设计景点的信息由一维数组存放,景点关系由二维数据来存放景点的信息和关系从文献读取,进而初始化typedef struct /保存单个景点信息的结构体char code10; /存放景点代码ch
3、ar name20; /存放景点名称char instruction100; /存放景点简介ViewPoint;typedef struct /存放景点关系的二维数组int edgesMAXVMAXV; /两景点间的距离int number; /景点的数量ViewPoint VMAXV; /保存景点信息的结构体数组MGraph;2.1 流程图函数开始接受功能的请求 接受信息输入判断是否对的读取文献进行相相应操作写回文献函数结束2.2 具体设计void MainMenu(); 主菜单,写界面操作的函数。 void UserMenu(); 游客菜单,判断是否非法输入,不会死循环。void Map(
4、); 输出民大地图,由于时间关系,没有画出。void ViewAsk(); 游客查询景点函数,让游客选择要查询的景点,判断是否非法输入,不会死循环。void PathAsk(); 问路函数,根据游客的起点和终点给出最短途径,判断是否非法输入,不会死循环。void Dijkstra(MGraph G,int v,int i); 迪杰斯特拉函数求最短途径void Ppath(MGraph G,int path,int i,int v); 输出最短途径中的景点void Dispath(MGraph G,int dist,int path,int s,int n,int v,int i); 查找最短途
5、径。void AdminMenu(); 管理员菜单,判断是否非法输入,不会死循环。void Password(); 密码函数,管理员需输入密码才干进入后台,输入一次后无需再输入。void AdminAlter(); 修改密码,需要再次输入密码。void ViewAdd(); 增长景点,列出已有景点,判断新景点信息是和与已有景点的冲突,如冲突需重新输入,判断是否非法输入,不会死循环。void ViewAlter(); 修改景点信息,由于时间关系,没有判断新修改的景点信息是否与已有景点信息冲突。若要做次判断,应与增长景点的判断算法一致。void ControlMenu(); 交通管制菜单,判断是否
6、非法输入,不会死循环。void PathControl(); 途径管理,可增长途径和修改途径,列出已有途径,根据用户的输入进行管理,判断是否非法输入,不会死循环。但途径长度为整型,没有判断,若输入非整型,则进入死循环,一个大大的BUG,能力有限。void PathDel(); 删除途径,列出已有途径,用户根据提醒进行删除。判断是否非法输入,不会死循环。void Read(MGraph &G); 读取文献。void White(MGraph &G); 保存文献。2.3 操作界面程序一开始登录主界面:游客菜单:管理员界面管理员界面管理员操作界面查询景点查询最短途径修改密码增长景点修改景点信息交通管
7、制界面删除途径管理途径3 调试分析:当进入操作界面进行功能的选择,但非法输入时,应当提醒错误并可以让用户重新选择,我使用的接受选择的是字符串,判断字符串长度是否等于1,假如不等于则是错误的,等于1后用switch判断第一个字符,与case比较,调用相应的函数。用whlie(1),使之一直循环,直到与case中相同,使用标志和break;让他跳出相应的循环层。在这里经常会犯错,所以要很小心的判断每个标志跳出的相应的循环,使他不会跳出不该跳出的循环。另一个问题是最短途径。在新增一个景点后,我选择不添加相邻的途径时(矩阵的行等于列始终为0,表达同一个景点到同一个景点的途径为0),再次查询最短途径时,
8、起点为新增的途径,终点为任何一个景点都无法运营;但是起点为除新增景点外的景点,而终点为新增景点时,可对的输出:没有途径。由于时间因素来不及调试了。参考文献 1严蔚敏、吴为民.数据结构(C语言版).北京:清华大学出版社.20232林小茶.C语言程序设计(第二版).中国铁道出版社.20233杜茂康、李昌兵等.C+面向对象程序设计(第2版).北京:电子工业出版社.2023 附 录源程序:头文献具体代码#include#include#include#include#include#include#include#define MAXV 100#define INF 10000typedef stru
9、ctchar code10;char name20;char instruction100;ViewPoint;typedef structint edgesMAXVMAXV;int number;ViewPoint VMAXV;MGraph;void MainMenu();void UserMenu();void Map();void ViewAsk();void PathAsk();void Dijkstra(MGraph G,int v,int i);void Ppath(MGraph G,int path,int i,int v);void Dispath(MGraph G,int d
10、ist,int path,int s,int n,int v,int i);void AdminMenu();void Password();void AdminAlter();void ViewAdd();void ViewAlter();void ControlMenu();void PathControl();void PathDel();void Read(MGraph &G);void White(MGraph &G);:主函数#includeAll.hmain()int pass;char name10,password10;ifstream indata(Password.txt
11、);indatapassnamepassword;indata.close();pass=0;ofstream outdata(Password.txt);outdatapassendlnameendlpassword;outdata.close();MainMenu();:菜单功能#includeAll.hvoid MainMenu()system(cls);char choose1;coutnnnsetw(56)欢迎光顾广西民族大学,祝您旅途快乐!endl;coutsetw(55)广西民族大学校园导航系统为您服务!endl;coutendlsetw(45)1.进入导航系统endl;cout
12、setw(45)endl;coutsetw(45)2.登录操作系统endl;coutsetw(45)endl;coutsetw(37)3.退出endl;coutsetw(45)endl;coutendlsetw(46)choose;if(strlen(choose)=1)switch(choose0)case 1:UserMenu();break;case 2:Password();break;case 3:exit(0);default:system(cls);coutnnnendlsetw(43)选择错误!endl;coutendlsetw(52)按任意键返回主菜单重新选择!;couten
13、dl;getch();MainMenu();break;elsesystem(cls);coutnnnendlsetw(43)选择错误!endl;coutendlsetw(52)按任意键返回主菜单重新选择!;coutendl;getch();MainMenu();void UserMenu()system(cls);char choose1;int flag=0;coutnnnsetw(45)校园导航系统!endl;coutendlsetw(45)1.查看校园地图endl;coutsetw(45)endl;coutsetw(45)2.景点信息查询endl;coutsetw(45)endl;co
14、utsetw(45)3.景点问路查询endl;coutsetw(45)endl;coutsetw(43)4.返回主菜单endl;coutsetw(45)endl;coutsetw(37)5.退出endl;coutsetw(45)endl;coutendlsetw(46)choose;if(strlen(choose)=1)switch(choose0)case 1:Map();break;case 2:ViewAsk();break;case 3:PathAsk();break;case 4:MainMenu();break;case 5:exit(0);default:system(cls)
15、;coutnnnsetw(43)选择错误!endl;coutendlsetw(49)按任意键返回重新选择!;coutendl;getch();UserMenu();elsesystem(cls);coutnnnsetw(43)选择错误!endl;coutendlsetw(49)按任意键返回重新选择!;coutpassnamepassword;indata.close();if(pass)AdminMenu();elsecoutnnnsetw(40)entername;coutendlsetw(40)enterpassword;if(strcmp(name,entername)=0&strcmp
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 校园 导航系统 课程设计 报告
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。