C语言与数据结构专题训练_第1页
C语言与数据结构专题训练_第2页
C语言与数据结构专题训练_第3页
C语言与数据结构专题训练_第4页
C语言与数据结构专题训练_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言与数据结构综合训练个人关系网的设计与实现系统任务要求(1)系统菜单的建立(2)信息的输入(3)信息的输出(4)个人关系的查询思路分析当面对个人关系网的问题时,我们首先想到的是用树或图知识去解决,这是没错的。但当我们用传统方法操作时,会出现无从下手的感觉,所以我们应该改变思路,学会用C++语言去建立图,并学会用switch,case语言建立菜单,这样会更轻松简便的解决个人关系网问题。个人关系网的分析当一个人在社会中就会扮演很多角色,这样与人形成了各种各样的关系。从现实出发就会考虑个人的关系网有:朋友、同事、师生、父子关系等等个人关系示意图亲戚陌生人父子师生师生同事父子朋友甲乙丙爸爸个人个人关系的程序分析(1)定义图中的顶点信息、边的信息、边的大小(2)清除图中的记录(3)打印图中的信息(4)个人关系信息的建立(5)把个人关系信息录入图中(6)菜单的建立图中信息的建立#definevexnum4//图的最大顶点个数#defineM10//储存人名数组的大小usingnamespacestd;typedefstruct{int**arcs;//边的信息charvex[vexnum][M];//顶点信息intvexs;//边的大小}Graph;清除图中信息voidDestroyGraph(Graph&G)//清除图中记录{inti;for(i=0;i<G.vexs;i++){free(G.arcs[i]);}free(G.arcs);}打印图中信息voidPrint(GraphG)//打印图中信息{inti,j;cout<<"关系信息输出:"<<endl;for(i=0;i<G.vexs;i++){printf("\t");cout<<G.vex[i];}cout<<endl;for(i=0;i<G.vexs;i++){cout<<G.vex[i];for(j=0;j<G.vexs;j++){switch(G.arcs[i][j]){case0://边的信息为0.打印关系为陌生cout<<"\t陌生";break;case1://边的信息为1,打印关系为同学cout<<"\t同学";break;case2://边的的信息为2,打印关关系为朋友友cout<<"\t朋友";break;case3://边的的信息为3,打印关关系为同事事cout<<"\t同事";break;default://否否则,边的的信息为100,打打印关系为为本人cout<<"\t本人";break;}}cout<<endl;}}个人信息的的建立(1)输入入要查找的的两个人的的姓名charname1[10];charname2[10];//cin>>name1;//cin>>name2;scanf("%s%s",name1,name2);(2)在表表中查找并并记录两个个人的名字字(3)用switch,case语句句记录边的的信息,并并记录他们们之间的关关系(4)如若若两个人为为一个人,,则打印关关系为本人人个人信息的的录入图中中(1)输入入顶点的信信息和要录录入图中人人的姓名(2)给边边分配储存存空间G.arcs=(int**)malloc(vexnum*sizeof(int*));for(i=0;i<vexnum;i++){G.arcs[i]=(int*)malloc(vexnum*sizeof(int));}(3)输入入边的信息息菜单的建立立(1)定义义一个图GraphG;//定义一一个图intn;cout<<"0:退出1:信信息输入2:信息输出出3:查询"<<endl;cout<<"请输输入编号::"<<endl;(2)用switch,case语句句分别调用用输入、输输出、查找找函数,执执行各自的的功能。(3)删除除图中的记记录个人关系网网的完成菜单:0::退出1:信息输输入2::信息输出出3:查查询1、信息输输入输入要存入入关系网的的人名(容容量为4人人),并输输入他们之之间的关系系

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论