xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 3KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-03
  • 語(yǔ)言: C/C++
  • 標(biāo)簽:

資源簡(jiǎn)介

用數(shù)據(jù)結(jié)構(gòu)方法完成校園導(dǎo)航,適合數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)

資源截圖

代碼片段和文件信息

#include?“string.h“?
#include?“stdio.h“?
#include?“malloc.h“
#include?“stdlib.h“
#define?Max?20000
#define?NUM?10
typedef?struct?ArcCell{
?int?adj;??/*?相鄰接的景點(diǎn)之間的路程?*/
}ArcCell;???/*?定義邊的類型?*/
typedef?struct?VertexType{
?int?number;??/*?景點(diǎn)編號(hào)?*/
?char?*sight;??/*?景點(diǎn)名稱?*/
}VertexType;???/*?定義頂點(diǎn)的類型?*/
typedef?struct{
?VertexType?vex[NUM];?/*?圖中的頂點(diǎn),即為景點(diǎn)?*/
?ArcCell?arcs[NUM][NUM];?/*?圖中的邊,即為景點(diǎn)間的距離?*/
?int?vexnumarcnum;?/*?頂點(diǎn)數(shù),邊數(shù)?*/
}MGraph;???/*?定義圖的類型?*/
MGraph?G;???/*?把圖定義為全局變量?*/
int?P[NUM][NUM];??/*??*/
long?int?D[NUM];??/*?輔助變量存儲(chǔ)最短路徑長(zhǎng)度?*/
int???x[9]={0};?
void?CreateUDN(int?vint?a);?/*?造圖函數(shù)?*/
void?narrate();???/*說(shuō)明函數(shù)*/
void?ShortestPath(int?num);?/*最短路徑函數(shù)*/
void?output(int?sight1int?sight2);?/*輸出函數(shù)*/
char?Menu();???/*?主菜單?*/
char?SearchMenu();??/*?查詢子菜單?*/

void?main()?/*?主函數(shù)?*/
{
?
?int?v0v1;
?char?ck;
?CreateUDN(NUM21);
?do
?{??
??ck=Menu();
??switch(ck)
??{
??case?‘a(chǎn)‘:
???system(“cls“);
???narrate();
???printf(“\n\n\t請(qǐng)選擇起點(diǎn)景點(diǎn)(0~9):“);
???scanf(“%d“&v0);
???printf(“\t請(qǐng)選擇終點(diǎn)景點(diǎn)(0~9):“);
???scanf(“%d“&v1);
???ShortestPath(v0);??/*?計(jì)算兩個(gè)景點(diǎn)之間的最短路徑?*/
???output(v0v1);?????/*?輸出結(jié)果?*/
???printf(“\n\n\t\t請(qǐng)按任意鍵繼續(xù)...\n“);
???getchar();
???getchar();
???break;
?
??};
?}while(ck!=‘b‘);
?
?
}
char?Menu()??/*?主菜單?*/
{
?char?c;
?int?flag;
?do{
??flag=1;
??system(“cls“);
??narrate();
??printf(“\n\t????????????????????????????????\n“);
??printf(“\t??????????????????????????????????\n“);
??printf(“\t????????a、查詢景點(diǎn)路徑???????????\n“);
??printf(“\t????????b、退出???????????????????\n“);
??printf(“\t??????????????????????????????????\n“);
??printf(“\t??????????????????????????????????\n“);
??printf(“\t\t請(qǐng)輸入您的選擇:“);
??scanf(“%c“&c);
??if(c==‘a(chǎn)‘||c==‘b‘)
???flag=0;
?}while(flag);
?return?c;
}








void?CreateUDN(int?vint?a)?/*?造圖函數(shù)?*/
{?
?int?ij;
?G.vexnum=v;??/*?初始化結(jié)構(gòu)中的景點(diǎn)數(shù)和邊數(shù)?*/
?G.arcnum=a;
?for(i=0;i?
?/*?初始化沒(méi)一個(gè)景點(diǎn)名及其景點(diǎn)描述?*/
?
?G.vex[0].sight=“宿舍區(qū)“;

?G.vex[1].sight=“科學(xué)樓“;

?G.vex[2].sight=“信息樓“;
?
?G.vex[3].sight=“逸夫樓“;

?G.vex[4].sight=“映雪湖“;
?
?G.vex[5].sight=“體育館“;

?G.vex[6].sight=“博文樓“;

?G.vex[7].sight=“圖書館“;

?G.vex[8].sight=“外文樓“;
?
?G.vex[9].sight=“建藝館“;
?
?/*?這里把所有的邊假定為20000,含義是這兩個(gè)景點(diǎn)之間是不可到達(dá)?*/
?for(i=0;i??for(j=0;j???G.arcs[i][j].adj=Max;
??
???/*
???
?????下邊是可直接到達(dá)的景點(diǎn)間的距離,由于兩個(gè)景點(diǎn)間距離是互相的,
?????所以要對(duì)圖中對(duì)稱的邊同時(shí)賦值。
?????
??*/
??G.arcs[0][1].adj=G.arcs[1][0].adj=100;
??G.arcs[1][3].adj=G.arcs[3][1].adj=150;
??G.arcs[0][4].adj=G.arcs[4][0].adj=100;
??G.arcs[0][5].adj=G.arcs[5][0].adj=200;
??G.arcs[4][1].adj=G.arcs[1][4].adj=10;
??G.arcs[6][3].adj=G.arcs[3][6].adj=50;
??G.arcs[8][6].adj=G.arcs[6][8].adj=50;
??G.arcs[8][9].adj=G.arcs[9][8].adj=100;
??G.arcs[4][7].adj=G.arcs[7][4].adj=400;
??G.arcs[2][7].adj=G.arcs[7][2].adj=100;
??G.arcs[7][9].adj=G.arcs[9][7].adj=110;
??G.arcs[2][9].adj=G.arcs[9][2].adj=30;

}
void?narrate()?/*?說(shuō)明函數(shù)?*/
{

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件???????5998??2009-06-30?23:54??校園導(dǎo)航.cpp

-----------?---------??----------?-----??----

?????????????????5998????????????????????1


評(píng)論

共有 條評(píng)論

相關(guān)資源