第一范文网 - 专业文章范例文档资料分享平台

《校园导游》课程设计报告

来源:用户分享 时间:2025/5/17 3:11:37 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

cout<<\增加景点信息成功!\ } else cout<<\增加景点编号重复,请重新增加!\} //删除景点信息2 void Delete(char* sno1,char* sno2,Graph& G) { int count=0; VNode* address=NULL; ArcNode* last=NULL; VNode* parent1=NULL; ArcNode* parent2=NULL; address=GetAddress(sno2,G); last=address->nextArc; parent1=address; while(last) { if(!strcmp(sno1,last->sno)) { if(!count) parent1->nextArc=last->next; else parent2->next=last->next; free(last); break; } else { count++; parent2=last; last=last->next; } } } //删除景点信息1 void DeleteScenery(Graph& G) { int count=0; char noOrName[21]; VNode* p=NULL; VNode* parent=NULL; ArcNode* last; parent=p=G.V; cout<<\请输入要删除的景点的编号或名称\ cin>>noOrName; while(p) { if(!(strcmp(p->sc.sno,noOrName)&&strcmp(p->sc.sname,noOrName))) { count++; break; } else { parent=p; p=p->nextV; } } if(!count) cout<<\无法删除该景点信息,请查核后在删除!\ else { char sno[4]; if(p==G.V) //防止删了第一个景点信息后,找不其他景点信息 G.V=p->nextV; else parent->nextV=p->nextV; strcpy(sno,p->sc.sno); last=p->nextArc; ArcNode* q=NULL; while(last) { Delete(sno,last->sno,G); q=last; last=last->next; free(q); } free(p); G.vexnum--; cout<<\成功删除该景点信息!\ } } //更新景点信息 void UpdateScenery(Graph& G) { int count=0; cout<<\提示:更新景点信息只允许更改景点名称以及景点介绍,编号作为主关键字不允许更改!\ char noOrName[21]; cout<<\请输入需要修改景点的编号以及名称:\ cin>>noOrName; VNode* p=G.V; while(p) { if(!(strcmp(p->sc.sname,noOrName)&&strcmp(p->sc.sno,noOrName))) { count++; cout<<\请输入新的景点名称:\ cin>>p->sc.sname; cout<<\请输入新的景点介绍:\ cin>>p->sc.stext; break; } else { p=p->nextV; } } if(!count) cout<<\修改景点信息未成功!请查核后再次修改!\ else cout<<\修改景点信息成功!\} //增加道路信息 void AddRode(Graph& G) { int count=0; VNode* address=NULL; ArcNode* q=NULL; ArcNode* p=NULL; char sno1[4]; char sno2[4]; int length; cout<<\请输入要增加道路两端的景点编号以及道路长度\ cin>>sno1>>sno2>>length; if(!strcmp(sno1,sno2)) cout<<\您输入的道路两端的景点编号一样,请核查后再试!\ else { address=GetAddress(sno1,G); p=address->nextArc; while(p) { if(!strcmp(p->sno,sno2)) { count++; break; } else p=p->next; } if(count) cout<<\增加道路信息失败!\ else { address=GetAddress(sno1,G); q=(ArcNode*)malloc(sizeof(ArcNode)); strcpy(q->sno,sno2); q->length=length; q->next=address->nextArc; address->nextArc=q; address=GetAddress(sno2,G); q=(ArcNode*)malloc(sizeof(ArcNode)); strcpy(q->sno,sno1); q->length=length; q->next=address->nextArc; address->nextArc=q; G.arcnum++; cout<<\增加道路信息成功!\ } } } //删除道路信息 void DeleteRode(Graph& G) { int count=0; VNode* address=NULL; ArcNode* p=NULL; char sno1[4]; char sno2[4];

搜索更多关于: 《校园导游》课程设计报告 的文档
《校园导游》课程设计报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c98o5u100a11h1yk7prre_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top