当前位置:首页 > 采用头文件的图操作合集(主程序)
break; }
if(i==12) break; } }
void menu_maprog1()
{ /* 邻接矩阵菜单执行系统 */ int i,j,k,s; char ch;
VertexType va; for(;;) {
i=menu_maselect1(); switch(i) { case 1:
if(GM.vex!=0) {
printf(\系统中已经存在邻接矩阵(有向网)结构!!!\ printf(\请选择销毁后重新更换(无向网)结构!!!\ printf(\
printf(\按任意键继续.........\ getch(); break; }
else { s=1;
printf(\现在系统状态是:邻接矩阵(无向网)!!!\\n\ setmatxunnetwork1(&GM); /* 建立邻接矩阵无向网 */ printmatx1(GM); /* 输出图的邻接矩阵 GM */ printf(\按任意键继续.........\ getch(); break; } case 2:
if(GM.vex!=0) {
printf(\系统中已经存在邻接矩阵(无向网)结构!!!\ printf(\请选择销毁后重新更换(有向网)结构!!!\ printf(\
printf(\按任意键继续.........\ getch(); break;
} else { s=2;
printf(\现在系统状态是:邻接矩阵(有向网)!!!\\n\ setmatxnetwork1(&GM); /* 建立邻接矩阵有向网 */ printmatx1(GM); /* 输出图的邻接矩阵 GM */ printf(\按任意键继续.........\ getch(); break; } case 3:
if(GM.vex==0) {
printf(\系统中没有邻接矩!不能输出!!!\ printf(\请建立邻接矩阵之后再输出!!!\ printf(\
printf(\按任意键继续.........\ getch(); break; } else {
if(s==1) printf(\现在系统状态是:邻接矩阵(无向网)!!!\\n\ else printf(\现在系统状态是:邻接矩阵(有向网)!!!\\n\ printmatx1(GM); /* 输出图的邻接矩阵 GM */ printf(\按任意键继续.........\ getch(); break; } case 4:
if(GM.vex==0) {
printf(\系统中没有邻接矩阵结构!不能遍历!!!\ printf(\请建立邻接矩阵之后再进行遍历!!!\ printf(\
printf(\按任意键继续.........\ getch(); break; }
else {
if(s==1) printf(\现在系统状态是:邻接矩阵(无向网)!!!\\n\ else printf(\现在系统状态是:邻接矩阵(有向网)!!!\\n\ printf(\无向连通图的深度遍历(邻接矩阵)\\n\ printf(\打印无向连通图\\n\ printmatx1(GM);
printf(\
printf(\输入邻接矩阵(连通-非连通)遍历(深度)的起始点 va:\\n\ printf(\当输入 y 时退出遍历 :\ scanf(\
k=LocateVexs1(GM,va); while(k>=0 && k for(j=0;j printf(\ printf(\输入邻接矩阵(连通-非连通)遍历(深度)的起始点 va:\\n\ printf(\当输入 y 时退出遍历 :\ scanf(\ k=LocateVexs1(GM,va); } printf(\按意键继续.........\ getch(); break; } case 5: if(GM.vex==0) { printf(\系统中没有邻接矩阵结构!不能遍历!!!\ printf(\请建立邻接矩阵之后再进行遍历!!!\ printf(\ printf(\按任意键继续.........\ getch(); break; } else { if(s==1) printf(\现在系统状态是:邻接矩阵(无向网)!!!\\n\ else printf(\现在系统状态是:邻接矩阵(有向网)!!!\\n\ printf(\无向连通图的广度遍历(邻接矩阵)\\n\ printf(\打印无向连通图\\n\ printmatx1(GM); printf(\ printf(\输入邻接矩阵(连通-非连通)遍历(广度)的起始点 va:\\n\ printf(\当输入 y 时退出遍历 :\ scanf(\ k=LocateVexs1(GM,va); while(k>=0 && k for(j=0;j bfs221(GM,k); printf(\ printf(\输入邻接矩阵(连通-非连通)遍历(广度)的起始点 va:\\n\ printf(\当输入 y 时退出遍历 :\ scanf(\ k=LocateVexs1(GM,va); } printf(\按任意键继续.........\ getch(); break; } case 6: if(GM.vex==0) { printf(\系统中没有邻接矩阵结构!不能遍历!!!\ printf(\请建立邻接矩阵之后再进行遍历!!!\ printf(\ printf(\按任意键继续.........\ getch(); break; } else { if(s==1) printf(\现在系统状态是:邻接矩阵(无向网)!!!\\n\ else printf(\现在系统状态是:邻接矩阵(有向网)!!!\\n\ printf(\无向连通图的 DFS 树(邻接矩阵)\\n\ printf(\打印无向连通图\\n\ printmatx1(GM); printf(\ printf(\输入邻接矩阵 DFS 树的起始点 va:\\n\ printf(\当输入 y 时退出遍历 :\ scanf(\ k=LocateVexs1(GM,va); while(k>=0 && k for(j=0;j printf(\ printf(\输入邻接矩阵 DFS 树的起始点 va:\\n\ printf(\当输入 y 时退出遍历 :\ scanf(\ k=LocateVexs1(GM,va); } printf(\按任意键继续.........\
共分享92篇相关文档