2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  題 目 xxx校園導(dǎo)航系統(tǒng) </p><p>  學(xué) 院 計(jì)算機(jī)科學(xué)與技術(shù) </p><p>  專 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù)(師范 ) </p><p>  學(xué) 號(hào) </p><p>  學(xué) 生 姓

2、名 </p><p>  指導(dǎo)教師姓名 </p><p>  日期: 2011-12-26 </p><p><b>  題目與要求</b></p><p><b>  

3、1.1 功能要求</b></p><p>  1.不同的功能使用不同的函數(shù)實(shí)現(xiàn)(模塊化),對(duì)每個(gè)函數(shù)的功能和調(diào)用接口要注釋清楚。對(duì)程序其它部分也進(jìn)行必要的注釋。</p><p>  2.對(duì)系統(tǒng)進(jìn)行功能模塊分析、畫出總流程圖和各模塊流程圖。</p><p>  3.用戶界面要求使用方便、簡(jiǎn)潔明了、美觀大方、格式統(tǒng)一。所有功能可以反復(fù)使用,最好使用菜單。&l

4、t;/p><p>  4.通過命令行相應(yīng)選項(xiàng)能直接進(jìn)入某個(gè)相應(yīng)菜單選項(xiàng)的功能模塊。</p><p>  5.所有程序需調(diào)試通過。</p><p><b>  1.2 設(shè)計(jì)內(nèi)容:</b></p><p>  1、查詢了解學(xué)校概況,為導(dǎo)游參觀者提供關(guān)于學(xué)校的相關(guān)信息。</p><p>  2、查詢校園各個(gè)

5、場(chǎng)所和景點(diǎn)信息;</p><p>  3、為導(dǎo)游者或外來人員參觀人員提供校園交通信息,方便用戶走訪學(xué)校。</p><p>  4.如有時(shí)間,可為程序增加以下功能:</p><p>  登錄模塊。該模塊在進(jìn)入主界面之前先執(zhí)行,用于對(duì)進(jìn)入系統(tǒng)的用戶進(jìn)行身份驗(yàn)證,若用戶輸入正確的用戶名及用戶密碼,則進(jìn)入主界面,否則輸入超過3次錯(cuò)誤則退出程序。處理方法:用戶名及用戶密碼可保

6、存在一文件中,校驗(yàn)時(shí)從文件中讀入數(shù)據(jù)進(jìn)行校驗(yàn)。在系統(tǒng)中應(yīng)增加一個(gè)用戶管理模塊,在其中可新增用戶,修改用戶信息等。</p><p>  5系統(tǒng)幫助。顯示開發(fā)者姓名、班級(jí)、開發(fā)完成日期、版本號(hào)和指導(dǎo)老師等信息。</p><p><b>  二、分析</b></p><p>  2.1設(shè)計(jì)基礎(chǔ):要掌握最短路徑的實(shí)現(xiàn)方式。</p><

7、;p>  2.2分析設(shè)計(jì)課題的要求,要求編程實(shí)現(xiàn)以下功能:</p><p><b> ?。?)退出系統(tǒng)</b></p><p> ?。?)進(jìn)入xxx導(dǎo)航系統(tǒng)</p><p><b> ?。?)新增用戶信息</b></p><p><b> ?。?)修改密碼</b><

8、/p><p><b>  2.3主控菜單設(shè)計(jì)</b></p><p>  為實(shí)現(xiàn)導(dǎo)航的操作功能,首先設(shè)計(jì)一個(gè)含有多個(gè)菜單項(xiàng)的主控菜單程序,然后</p><p>  再為這些菜單項(xiàng)配上相應(yīng)的功能。</p><p>  程序運(yùn)行后,給出菜單項(xiàng)的內(nèi)容和輸入提示,如下:</p><p><b>  

9、1.學(xué)校簡(jiǎn)介</b></p><p>  2.xxx校園平面簡(jiǎn)圖</p><p>  3. 顯示場(chǎng)所的編號(hào)</p><p>  4. 查看場(chǎng)所的具體信息</p><p>  5. 計(jì)算路徑長(zhǎng)度及找出最短路徑</p><p><b>  6. 退出</b></p><

10、p>  2.4設(shè)計(jì)課題已明確要求,有關(guān)的定義如下:</p><p>  void insert();</p><p>  #define N 10</p><p><b>  int n=1;</b></p><p>  #define Max 32767</p><p>  #define

11、 NUM 16</p><p>  typedef struct ArcCell</p><p>  { int adj; // 相鄰接的景點(diǎn)之間的路程 </p><p>  char *info;</p><p>  }ArcCell; // 定義邊的類型 </p><p>  typedef struct Vert

12、exType</p><p>  { int number; // 景點(diǎn)編號(hào) </p><p>  char *sight; // 景點(diǎn)名稱 </p><p>  char *description; // 景點(diǎn)描述 </p><p>  }VertexType; // 定義頂點(diǎn)的類型 </p><p>  typed

13、ef struct</p><p>  { VertexType vex[NUM]; // 圖中的頂點(diǎn),即為景點(diǎn) </p><p>  ArcCell arcs[NUM][NUM]; // 圖中的邊,即為景點(diǎn)間的距離 </p><p>  int vexnum,arcnum; // 頂點(diǎn)數(shù),邊數(shù) </p><p>  }MGraph; //

14、定義圖的類型 </p><p>  MGraph G; // 把圖定義為全局變量 </p><p>  int P[NUM][NUM]; //</p><p>  long int D[NUM]; // 輔助變量存儲(chǔ)最短路徑長(zhǎng)度 </p><p>  void CreateUDN(int v,int a); // 創(chuàng)建圖的函數(shù) </p&

15、gt;<p>  void pingmu(); //屏幕輸出函數(shù)</p><p>  void introduce();//輸入介紹內(nèi)容,但不輸出</p><p>  void ShortestPath(int num); //最短路徑函數(shù)</p><p>  void output(int sight1,int sight2); //輸出函數(shù)<

16、/p><p>  void PrintMGraph();</p><p>  char Menu(); // 主菜單 </p><p>  void search(); // 查詢景點(diǎn)信息 </p><p>  char SearchMenu(); // 查詢子菜單 </p><p>  void show();//顯示校

17、園平面圖</p><p>  void mainn();</p><p><b>  2.4邏輯設(shè)計(jì):</b></p><p>  按所設(shè)想的功能,把程序化分為幾個(gè)模塊,各模塊的名稱和其數(shù)據(jù)類型如下:</p><p><b>  Main主函數(shù)</b></p><p>  調(diào)

18、用各函數(shù),實(shí)現(xiàn)課程設(shè)計(jì)的目標(biāo)。其中包含三個(gè)功能,一個(gè)是直接進(jìn)入導(dǎo)航系統(tǒng),利用主函數(shù)中已有的數(shù)據(jù),進(jìn)行查詢:一個(gè)是進(jìn)行創(chuàng)建數(shù)據(jù),本程序中初始數(shù)據(jù)為農(nóng)大的導(dǎo)航數(shù)據(jù),如果需要也可以自己建立一個(gè);最后一個(gè)是退出功能。</p><p><b>  Menu菜單函數(shù)</b></p><p>  該函數(shù)用于顯示初頁(yè)面,列出兩個(gè)功能的選擇。一個(gè)是進(jìn)入農(nóng)大導(dǎo)航系統(tǒng),一個(gè)是進(jìn)行自己創(chuàng)建一

19、個(gè)導(dǎo)航系統(tǒng)。</p><p>  dijkstra建立最小生成樹</p><p>  這是本程序的中心,在眾多路徑中選出最短路徑?;趯?duì)dijkstra求最小生成樹方法的應(yīng)用。使整個(gè)程序顯得極為簡(jiǎn)便。課本中的dijkstra函數(shù)只是輸入一個(gè)結(jié)點(diǎn),然后輸出從該結(jié)點(diǎn)出發(fā)到各結(jié)點(diǎn)的最短路徑,為了使它更適用于本課程設(shè)計(jì),我將它改為“輸入兩個(gè)結(jié)點(diǎn),輸出這兩點(diǎn)的最短路徑”。</p>&l

20、t;p>  search查詢函數(shù) </p><p>  設(shè)計(jì)該函數(shù)的目的是為了能夠多次得應(yīng)用dijkstra函數(shù)進(jìn)行查詢最短路徑。同時(shí)該函數(shù)可以列出各景點(diǎn)的代號(hào)和對(duì)應(yīng)的名稱,這樣大家只要輸入代號(hào)就行了。方便進(jìn)行查詢。</p><p>  相關(guān)模塊介紹已在定義中</p><p><b>  圖1:校園平面圖</b></p>&

21、lt;p>  2.5 程序調(diào)試的實(shí)驗(yàn)截圖</p><p><b>  用戶登陸界面</b></p><p><b>  用戶登陸界面成功</b></p><p><b>  導(dǎo)航系統(tǒng)界面</b></p><p><b>  最短路徑</b></

22、p><p><b>  景點(diǎn)查詢信息</b></p><p><b>  校園平面圖</b></p><p>  三、源程序及系統(tǒng)文件使用說明</p><p>  #include<stdio.h></p><p>  #include <stdlib.h>

23、;</p><p>  #include<conio.h> /*清屏*/</p><p>  #include<string.h></p><p>  void insert();</p><p>  #define N 10</p><p><b>  int n=1;</b&

24、gt;</p><p>  #define Max 32767</p><p>  #define NUM 16</p><p>  typedef struct ArcCell</p><p>  { int adj; // 相鄰接的景點(diǎn)之間的路程 </p><p>  char *info;</p>

25、<p>  }ArcCell; // 定義邊的類型 </p><p>  typedef struct VertexType</p><p>  { int number; // 景點(diǎn)編號(hào) </p><p>  char *sight; // 景點(diǎn)名稱 </p><p>  char *description; // 景點(diǎn)描述 &l

26、t;/p><p>  }VertexType; // 定義頂點(diǎn)的類型 </p><p>  typedef struct</p><p>  { VertexType vex[NUM]; // 圖中的頂點(diǎn),即為景點(diǎn) </p><p>  ArcCell arcs[NUM][NUM]; // 圖中的邊,即為景點(diǎn)間的距離 </p>&l

27、t;p>  int vexnum,arcnum; // 頂點(diǎn)數(shù),邊數(shù) </p><p>  }MGraph; // 定義圖的類型 </p><p>  MGraph G; // 把圖定義為全局變量 </p><p>  int P[NUM][NUM]; //</p><p>  long int D[NUM]; // 輔助變量存儲(chǔ)最短路

28、徑長(zhǎng)度 </p><p>  void CreateUDN(int v,int a); // 創(chuàng)建圖的函數(shù) </p><p>  void pingmu(); //屏幕輸出函數(shù)</p><p>  void introduce();//輸入介紹內(nèi)容,但不輸出</p><p>  void ShortestPath(int num); //最短

29、路徑函數(shù)</p><p>  void output(int sight1,int sight2); //輸出函數(shù)</p><p>  void PrintMGraph();</p><p>  char Menu(); // 主菜單 </p><p>  void search(); // 查詢景點(diǎn)信息 </p><p&

30、gt;  char SearchMenu(); // 查詢子菜單 </p><p>  void NextValue(int); </p><p>  void display(); // 顯示遍歷結(jié)果 </p><p>  void show();//顯示校園平面圖</p><p>  void mainn();</p>&l

31、t;p>  struct student </p><p><b>  { </b></p><p>  char name[20]; </p><p>  char secret[20]; </p><p><b>  };</b></p><p>  struct

32、student stu[N];</p><p><b>  void pf()</b></p><p><b>  {</b></p><p>  printf("\n\n\t\t 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)");</p><p>  printf("\n\

33、n\n\t\t --------------------------------------");</p><p>  printf("\n \t\t |\t 名稱: xxx校園導(dǎo)航系統(tǒng)\t|");</p><p>  printf("\n \t\t |\t 姓名: 田文祥 \t|");</p><

34、;p>  printf("\n \t\t |\t 班級(jí): 10計(jì)師 \t|");</p><p>  printf("\n \t\t |\t 指導(dǎo)老師: 王寶華 \t|");</p><p>  printf("\n \t\t |\t 作者: xxx校園 \t|");<

35、/p><p>  printf("\n \t\t --------------------------------------");</p><p><b>  }</b></p><p>  void main()//主函數(shù)</p><p>  {char s2[10],s3[10],s4[10],

36、s5[10],s6[10],s1[10],s7[10]="\0";</p><p>  int i=0,a,j;</p><p><b>  FILE *fp;</b></p><p>  if((fp=fopen("用戶信息.txt","r"))==NULL)</p>

37、<p>  { printf("找不到 用戶信息.txt文件!\n"); </p><p>  system("pause"); </p><p><b>  exit(0);</b></p><p><b>  } </b></p><p>&l

38、t;b>  else</b></p><p>  { for(i=0;i<N;i++) </p><p>  fscanf(fp,"\t%s\t%s\n",stu[i].name,stu[i].secret); </p><p><b>  } </b></p><p>  

39、fclose(fp); </p><p>  printf("\n\n\n\n\n\n\n\n\t\t保存在用戶信息.txt文件中的所有信息已經(jīng)讀入程序中!\n\n\t\t\t"); </p><p>  system("pause"); </p><p>  system("cls");</p>

40、;<p>  for(i=0;i<3;i++)</p><p><b>  { pf();</b></p><p>  printf("\n\n\t\t 用戶登陸");</p><p>  printf("請(qǐng)輸入用戶名,你還有%d次機(jī)會(huì)。\n\t\t\t",3-i);</p&

41、gt;<p><b>  gets(s3);</b></p><p>  if(!strcmp(s3,s7)) </p><p>  { printf("用戶名不能空格,謝謝!?。?quot;);</p><p>  printf("用戶名不正確,請(qǐng)從新輸入。\n");</p><

42、;p>  system("pause");</p><p>  system("cls");</p><p><b>  if(i==2)</b></p><p>  { printf("\n\n\t\t\t用戶名不正確,按任意鍵退出。\n\n\n\t\t\t");

43、 </p><p><b>  exit(0);</b></p><p><b>  }</b></p><p><b>  continue;</b></p><p><b>  }</b></p><p>  for(j=0

44、;j<N;j++) </p><p><b>  { </b></p><p>  if(!strcmp(stu[j].name,s3))</p><p>  { printf("用戶名正確\n");</p><p>  strcpy(s1,stu[j].name);</p>&

45、lt;p>  strcpy(s2,stu[j].secret);</p><p>  system("cls");</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b><

46、/p><p>  if(!strcmp(s1,s3))</p><p>  break; </p><p>  printf("用戶名不正確,請(qǐng)從新輸入。\n");</p><p>  system("pause");</p><p><b>  if(i==2)&

47、lt;/b></p><p>  { printf("用戶名和密碼不匹配,按任意鍵退出。\n");</p><p>  system("pause");</p><p><b>  exit(0);</b></p><p><b>  } </b>&

48、lt;/p><p>  system("cls");</p><p><b>  }</b></p><p>  for(i=0;i<3;i++)</p><p><b>  {</b></p><p><b>  pf();</b>

49、;</p><p>  printf("\n\n\t 用戶登陸");</p><p>  printf("\n\n用戶名正確\n");</p><p>  printf("\n請(qǐng)輸入用戶密碼,你還有%d次機(jī)會(huì)。\n",3-i);</p><p>  printf("密碼正確

50、,登陸成功時(shí),系統(tǒng)將自動(dòng)跳轉(zhuǎn)\n");</p><p><b>  gets(s4);</b></p><p>  if(!strcmp(s2,s4))</p><p>  { system("cls");</p><p><b>  break;</b></p

51、><p><b>  }</b></p><p><b>  else</b></p><p><b>  if(i==2)</b></p><p>  { system("cls");</p><p>  printf("

52、\n\n\n\t\t\t用戶名和密碼不匹配,按任意鍵退出。\n\n\n\t\t\t");</p><p><b>  exit(0);</b></p><p><b>  }</b></p><p><b>  else</b></p><p>  {system(

53、"cls");</p><p>  printf("輸入錯(cuò)誤,請(qǐng)從新輸入:\n");</p><p><b>  }</b></p><p><b>  }</b></p><p>  for(i=0;;i++)</p><p><

54、;b>  {</b></p><p><b>  pf();</b></p><p>  printf("\n\t\t ******************************\n");</p><p>  printf("\t\t * 1.退出系統(tǒng)

55、 * \n");</p><p>  printf("\t\t * * \n");</p><p>  printf("\t\t * 2.進(jìn)入xxx導(dǎo)航系統(tǒng) * \n");</p><p>  printf("\t\t

56、 * * \n");</p><p>  printf("\t\t * 3.新增用戶信息 * \n");</p><p>  printf("\t\t * * \n");</p>

57、<p>  printf("\t\t * 0.修改密碼 * \n");</p><p>  printf("\t\t ******************************\n");</p><p>  printf("請(qǐng)選擇功能\n");</p>

58、<p>  scanf("%d",&a);</p><p><b>  if(a==1)</b></p><p><b>  {</b></p><p>  printf("按任意鍵退出\n");</p><p><b>  bre

59、ak;</b></p><p><b>  }</b></p><p>  getchar(); </p><p><b>  if(a==2)</b></p><p><b>  mainn();</b></p><p><b&g

60、t;  if(a==3)</b></p><p>  insert();</p><p><b>  if(a==0)</b></p><p><b>  {</b></p><p>  for(i=0;i<3;i++)</p><p>  { syst

61、em("cls");</p><p><b>  pf(); </b></p><p>  printf("\n\n請(qǐng)輸入原密碼\n");</p><p>  printf("兩次不正確,系統(tǒng)將自動(dòng)返回,你還有%d次機(jī)會(huì)。\n",3-i-1);</p><p&

62、gt;<b>  gets(s3);</b></p><p>  if(!strcmp(s2,s3))</p><p>  { for(i=0;;i++)</p><p>  { printf("\n請(qǐng)輸入新密碼\n");</p><p><b>  gets(s6);</b>

63、</p><p>  printf("\n請(qǐng)?jiān)诖溯斎胄旅艽a\n");</p><p><b>  gets(s5);</b></p><p>  if(!strcmp(s5,s6))</p><p>  { system("cls");</p><p>  

64、printf("新密碼為: %s\n",s5);</p><p>  strcpy(s2,s5);</p><p>  strcpy(stu[j].secret, s2);</p><p>  if((fp=fopen("用戶信息.txt","w"))==NULL)</p><p>

65、  { printf("\n保存失敗!"); </p><p><b>  exit(0); </b></p><p><b>  } </b></p><p><b>  else</b></p><p>  { for(i=0;i<N;i++)

66、</p><p>  fprintf(fp,"\t%s\t%s\n",stu[i].name,stu[i].secret); </p><p><b>  } </b></p><p>  fclose(fp); </p><p>  printf("新用戶信息已保存在用戶信息.txt中!\

67、n"); </p><p>  system("pause"); </p><p>  system("cls"); </p><p><b>  break;</b></p><p><b>  }</b></p><p>

68、<b>  else</b></p><p>  system("cls");</p><p>  printf("\n\n兩次輸入密碼不一樣,密碼修改失敗\n");</p><p><b>  break;</b></p><p><b>  }&

69、lt;/b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  printf(&

70、quot;原密碼輸入錯(cuò)誤\n");</p><p>  printf("請(qǐng)珍惜機(jī)會(huì),從新輸入。");</p><p>  system("pause");</p><p>  system("cls");</p><p><b>  }</b><

71、/p><p><b>  if(i==2)</b></p><p>  { exit(0); }</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p>

72、<p><b>  } </b></p><p>  void insert()</p><p>  { int i; </p><p><b>  FILE *fp;</b></p><p><b>  n++; </b></p>

73、<p>  printf("\n\t\t輸入新插入用戶信息\n"); </p><p>  printf("\n輸入新用戶名:"); </p><p>  scanf("%s",stu[n].name); </p><p>  fflush(stdin); //清空輸入緩沖區(qū),通常是為了確保不影響

74、后面的數(shù)據(jù)讀取 </p><p>  printf("\n輸入新用戶密碼:");</p><p>  scanf("%s",stu[n].secret);</p><p>  if((fp=fopen("用戶信息.txt","w"))==NULL)</p><p>

75、;  { printf("\n保存失敗!"); </p><p><b>  exit(0); </b></p><p><b>  } </b></p><p><b>  else</b></p><p>  { for(i=0;i<N;i++)

76、</p><p>  fprintf(fp,"\t%s\t%s\n",stu[i].name,stu[i].secret); </p><p><b>  } </b></p><p>  fclose(fp); </p><p>  printf("新用戶信息已保存在用戶信息.txt中!\

77、n"); </p><p>  system("pause"); </p><p>  system("cls");</p><p><b>  }</b></p><p>  void mainn() // 主函數(shù) </p><p>  { in

78、t v0,v1,i;</p><p><b>  char ck;</b></p><p>  system("color 1b");</p><p>  CreateUDN(NUM,16);</p><p><b>  do</b></p><p>  

79、{ ck=Menu();</p><p>  switch(ck)</p><p><b>  {</b></p><p><b>  case'1':</b></p><p>  system("cls");</p><p>  intr

80、oduce();</p><p>  printf("\n\n\t\t%-25s\n\n",G.vex[0].description);</p><p>  getchar();</p><p>  getchar();</p><p><b>  break;</b></p><

81、p><b>  case '2':</b></p><p><b>  show();</b></p><p>  getchar();</p><p>  getchar();</p><p><b>  break;</b></p>&l

82、t;p><b>  case '3':</b></p><p>  //PrintMGraph();</p><p>  for(i=1;i<NUM;i++)</p><p><b>  { </b></p><p>  printf("\t\t%c\t\t(%

83、2d)%-20s%c\t\t\t",1,i,G.vex[i].sight,1); // 輸出景點(diǎn)列表 </p><p><b>  }</b></p><p>  printf("\n\n\t\t\t\t請(qǐng)按回車鍵繼續(xù)...\n");</p><p>  getchar();</p><p>

84、;  getchar();</p><p><b>  break;</b></p><p><b>  case '4':</b></p><p><b>  search();</b></p><p><b>  break;</b>

85、;</p><p><b>  case '5':</b></p><p>  system("cls");</p><p>  for(i=1;i<NUM;i++)</p><p><b>  { </b></p><p>  pr

86、intf("\t\t%c\t\t(%2d)%-20s%c\t\t\t",1,i,G.vex[i].sight,1); // 輸出景點(diǎn)列表 </p><p><b>  }</b></p><p>  printf("\n\n\t\t\t請(qǐng)選擇起點(diǎn)景點(diǎn)(1~15):");</p><p>  scanf(&

87、quot;%d",&v0);</p><p>  printf("\t\t\t請(qǐng)選擇終點(diǎn)景點(diǎn)(1~15):");</p><p>  scanf("%d",&v1);</p><p>  ShortestPath(v0); // 計(jì)算兩個(gè)景點(diǎn)之間的最短路徑 </p><p> 

88、 output(v0,v1); // 輸出結(jié)果 </p><p>  printf("\n\n\t\t\t\t請(qǐng)按回車鍵繼續(xù)...\n");</p><p>  getchar();</p><p>  getchar();</p><p><b>  break;</b></p>&l

89、t;p><b>  }</b></p><p><b>  }</b></p><p>  while(ck!='6');</p><p>  system("cls");</p><p><b>  }</b></p>

90、<p>  void show()</p><p>  { printf("\t\t\t\t淮北師范大學(xué)平面圖\n\n\n\n");</p><p>  printf("\t\t\t\t\t\t 圖書館\n");</p><p>  printf("\t\t\t\t\t\t ┃ \n"

91、;);</p><p>  printf("\t\t\t\t\t\t ┃ \n");</p><p>  printf("\t\t\t\t\t\t ┃ \n");</p><p>  printf("\t 學(xué)生三食堂━新階━科學(xué)講堂━━行政樓━━━┫\n"); </p>&

92、lt;p>  printf("\t ┃\t\t\t\t ┃\t ┃\n"); </p><p>  printf("\t 校醫(yī)院━━━━━━━━━━━━━四園廣場(chǎng)━┻━━━━校大門\n"); </p><p>  printf("\t ┃\t\t\t\t ┃ \n"); </p&g

93、t;<p>  printf("\t ┃\t\t\t\t ┃ \n");</p><p>  printf("\t ┃\t\t\t\t ┃ \n");</p><p>  printf("\t ┃\t\t\t\t ┃ \n");</p><p>  p

94、rintf("\t ┃ ┏━綜合實(shí)驗(yàn)樓━━┓\t ┃\n");</p><p>  printf("\t ┃\t ┃\t\t ┃ ┃ \n");</p><p>  printf("\t 音樂樓━┫ \t 物電學(xué)院━┻━━主教學(xué)樓\n");</p>&l

95、t;p>  printf("\t ┃\t ┃\t\t ┃ \t ┃ \n");</p><p>  printf("\t ┃ ┗━生物樓━━━━┛\t\t ┃ \n");</p><p>  printf("\t ┃ ┃\t\t\t ┃ \n&qu

96、ot;);</p><p>  printf("\t ┃ ┃\t\t\t ┃ \n");</p><p>  printf("\t 文 科 樓━━━━━━━━━━━━逸夫?qū)嶒?yàn)樓\n\n");</p><p><b>  } </b></p>&l

97、t;p>  char Menu() // 主菜單 //</p><p>  { char c;</p><p><b>  int flag;</b></p><p>  system("cls");</p><p><b>  do</b></p><

98、;p>  { flag=1;</p><p><b>  pingmu();</b></p><p>  introduce(); </p><p>  printf("\t\t * 1.學(xué)校簡(jiǎn)介 ┃\n\n"); &l

99、t;/p><p>  printf("\t\t * 2.xxx校園平面簡(jiǎn)圖 ┃\n\n");</p><p>  printf("\t\t * 3.顯示場(chǎng)所的編號(hào) ┃\n\n"); </p><p>  printf("\t\t * 4.查看場(chǎng)所的具體信息 ┃\n\n"

100、); </p><p>  printf("\t\t * 5.計(jì)算路徑長(zhǎng)度及找出最短路徑┃\n\n"); </p><p>  printf("\t\t * 6.退出 ┃\n\n"); </p><

101、p>  printf("\t\t****************************************************\n");</p><p>  printf("\t\t\t\t請(qǐng)輸入您的選擇:");</p><p>  scanf("%c",&c);</p><p> 

102、 if(c=='1'||c=='2'||c=='3'||c=='4'||c=='5'||c=='6')</p><p><b>  flag=0;</b></p><p>  } while(flag);</p><p><b>  ret

103、urn c;</b></p><p><b>  }</b></p><p>  char SearchMenu() // 查詢子菜單 </p><p>  { char c;</p><p><b>  int flag;</b></p><p><b&

104、gt;  do</b></p><p>  { flag=1;</p><p>  system("cls");</p><p><b>  pingmu();</b></p><p>  introduce();</p><p>  printf("\

105、n\t\t*************************************\n");</p><p>  printf("\t\t * ┃\n"); </p><p>  printf("\t\t * 1、按照景點(diǎn)編號(hào)查詢 ┃\n"); </p>&

106、lt;p>  printf("\t\t * 2、按照景點(diǎn)名稱查詢 ┃\n"); </p><p>  printf("\t\t * 0、返回 ┃\n"); </p><p>  printf("\t\t * ┃\n");

107、 </p><p>  printf("\t\t *************************************\n");</p><p>  printf("\t\t\t請(qǐng)輸入您的選擇:");</p><p>  scanf("%c",&c);</p><p>

108、;  if(c=='1'||c=='2'||c=='0')</p><p><b>  flag=0;</b></p><p>  } while(flag);</p><p><b>  return c;</b></p><p><b>

109、;  }</b></p><p>  void search() // 查詢景點(diǎn)信息 </p><p>  { int num;</p><p><b>  int i;</b></p><p><b>  char c;</b></p><p>  char

110、name[20];</p><p><b>  do</b></p><p>  { system("cls");</p><p>  c=SearchMenu();</p><p>  switch (c)</p><p><b>  {</b><

111、;/p><p>  case '1': </p><p>  system("cls");</p><p>  introduce();</p><p>  for(i=1;i<NUM;i++)</p><p><b>  { </b></p>

112、<p>  printf("\t\t%c\t\t(%2d)%-20s%c\t\t\t",1,i,G.vex[i].sight,1); // 輸出景點(diǎn)列表 </p><p><b>  }</b></p><p>  printf("\n\n\t\t請(qǐng)輸入您要查找的景點(diǎn)編號(hào):");</p><p>

113、;  scanf("%d",&num);</p><p>  for(i=0;i<NUM;i++)</p><p><b>  {</b></p><p>  if(num==G.vex[i].number)</p><p><b>  {</b></p>

114、;<p>  printf("\n\n\t\t\t您要查找景點(diǎn)信息如下:");</p><p>  printf("\n\n\t\t\t%-25s\n\n",G.vex[i].description);</p><p>  printf("\n\t\t\t按任回車返回...");</p><p&g

115、t;  getchar();</p><p>  getchar();</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(i==NUM)//只要上面

116、FOR循環(huán)執(zhí)行完畢,則i就是NUM</p><p><b>  {</b></p><p>  printf("\n\n\t\t\t沒有找到!");</p><p>  printf("\n\n\t\t\t按回車鍵返回...");</p><p>  getchar();</

117、p><p>  getchar();</p><p><b>  } break;</b></p><p><b>  case '2':</b></p><p>  system("cls");</p><p>  introduce();&

118、lt;/p><p>  printf("\n\n\t\t請(qǐng)輸入您要查找的景點(diǎn)名稱:");</p><p>  scanf("%s",name);</p><p>  for(i=1;i<NUM;i++)</p><p><b>  {</b></p><p&g

119、t;  if(!strcmp(name,G.vex[i].sight))</p><p><b>  {</b></p><p>  printf("\n\n\t\t\t您要查找景點(diǎn)信息如下:");</p><p>  printf("\n\n\t\t\t%-25s\n\n",G.vex[i].descr

120、iption);</p><p>  printf("\n\t\t\t按回車鍵返回...");</p><p>  getchar();</p><p>  getchar();</p><p><b>  break;</b></p><p><b>  }<

121、/b></p><p><b>  }</b></p><p>  if(i==NUM)//只要上面FOR循環(huán)執(zhí)行完畢,則i就是NUM</p><p><b>  {</b></p><p>  printf("\n\n\t\t\t沒有找到!");</p>&

122、lt;p>  printf("\n\n\t\t\t按回車鍵返回...");</p><p>  getchar();</p><p>  getchar();</p><p><b>  } break;</b></p><p><b>  }</b></p>

123、<p>  }while(c!='0');</p><p>  getchar();</p><p><b>  }</b></p><p>  void CreateUDN(int v,int a) // 創(chuàng)建圖的函數(shù) </p><p>  { int i,j;</p><

124、;p>  G.vexnum=v; // 初始化結(jié)構(gòu)中的景點(diǎn)數(shù)和邊數(shù) </p><p>  G.arcnum=a;</p><p>  for(i=1;i<G.vexnum;++i) </p><p>  G.vex[i].number=i; // 初始化每一個(gè)景點(diǎn)的編號(hào) </p><p>  // 初始化每一個(gè)景點(diǎn)名及其景點(diǎn)描述

125、</p><p>  G.vex[0].sight="學(xué)校簡(jiǎn)介";</p><p>  G.vex[1].sight="校大門";</p><p>  G.vex[2].sight="逸夫?qū)嶒?yàn)樓";</p><p>  G.vex[3].sight="主教學(xué)樓";

126、</p><p>  G.vex[4].sight="圖書館";</p><p>  G.vex[5].sight="物電學(xué)院";</p><p>  G.vex[6].sight="四園廣場(chǎng)";</p><p>  G.vex[7].sight="行政樓";&l

127、t;/p><p>  G.vex[8].sight="文科大樓";</p><p>  G.vex[9].sight="生物樓";</p><p>  G.vex[10].sight="綜合實(shí)驗(yàn)樓";</p><p>  G.vex[11].sight="科學(xué)講堂";

128、</p><p>  G.vex[12].sight="音樂樓";</p><p>  G.vex[13].sight="校醫(yī)院";</p><p>  G.vex[14].sight="新階";</p><p>  G.vex[15].sight="學(xué)生三食堂"

129、;</p><p>  // 這里把所有的邊假定為32767,含義是這兩個(gè)景點(diǎn)之間是不可到達(dá) </p><p>  for(i=1;i<G.vexnum;++i)</p><p><b>  {</b></p><p>  for(j=1;j<G.vexnum;++j) </p><p&g

130、t;<b>  {</b></p><p>  G.arcs[i][j].adj=Max;</p><p>  G.arcs[i][j].info=NULL;</p><p><b>  }</b></p><p><b>  }</b></p><p>

131、;  //下邊是可直接到達(dá)的景點(diǎn)間的距離,由于兩個(gè)景點(diǎn)間距離是互相的,</p><p>  // 所以要對(duì)圖中對(duì)稱的邊同時(shí)賦值。</p><p>  G.arcs[1][4].adj=G.arcs[4][1].adj=1000;</p><p>  G.arcs[1][6].adj=G.arcs[6][1].adj=600; </p>

132、;<p>  G.arcs[2][3].adj=G.arcs[3][2].adj=400;</p><p>  G.arcs[2][8].adj=G.arcs[8][2].adj=1200;</p><p>  G.arcs[3][5].adj=G.arcs[5][3].adj=400;</p><p>  G.arcs[3][6].adj=G.arc

133、s[6][3].adj=900;</p><p>  G.arcs[4][6].adj=G.arcs[6][4].adj=700;</p><p>  G.arcs[4][7].adj=G.arcs[7][4].adj=700;</p><p>  G.arcs[5][6].adj=G.arcs[6][5].adj=800;</p><p>

134、  G.arcs[5][9].adj=G.arcs[9][5].adj=800; </p><p>  G.arcs[5][10].adj=G.arcs[10][5].adj=800;</p><p>  G.arcs[6][7].adj=G.arcs[7][6].adj=100;</p><p>  G.arcs[7][11].adj=G.arcs[11][

135、7].adj=200;</p><p>  G.arcs[8][9].adj=G.arcs[9][8].adj=200;</p><p>  G.arcs[8][12].adj=G.arcs[12][8].adj=400;</p><p>  G.arcs[9][10].adj=G.arcs[10][9].adj=700;</p><p> 

136、 G.arcs[9][12].adj=G.arcs[12][9].adj=500; </p><p>  G.arcs[11][14].adj=G.arcs[14][11].adj=100;</p><p>  G.arcs[12][13].adj=G.arcs[13][12].adj=600;</p><p>  G.arcs[13][15].adj=G

137、.arcs[15][13].adj=100;</p><p>  G.arcs[14][15].adj=G.arcs[15][14].adj=100;</p><p><b>  }</b></p><p>  void introduce() // 介紹函數(shù) </p><p><b>  { int i;&

138、lt;/b></p><p>  for(i=1;i<=NUM;i++)</p><p><b>  { </b></p><p>  G.vex[0].description=" ▲ 淮北師范大學(xué)位于國(guó)家能源基地、國(guó)家園林城市安徽省淮北市,\n\n\t\t是安徽具有較長(zhǎng)本科辦學(xué)歷史的一所普通高等師范院校.\n\n\t\

139、t國(guó)家歷史文化名城——淮北,校園依山流韻、芳林疊翠、風(fēng)景美麗。\n\n\t\t經(jīng)過半個(gè)多世紀(jì)的發(fā)展,學(xué)?,F(xiàn)已形成以教師教育為主要辦學(xué)特色\n\n\t\t教、文、管、理、經(jīng)等多學(xué)科協(xié)調(diào)發(fā)展的格局,是安徽省培養(yǎng)基礎(chǔ)教育\n\n\t\t師資和其他高級(jí)應(yīng)用型人才的重要基地.\n\n\t\t積極擴(kuò)大對(duì)外交流與合作,學(xué)術(shù)交流日趨頻繁\n\n\t\t下面幾點(diǎn)是淮北師范大學(xué)的辦學(xué)特色:\n\n\t\t辦學(xué)歷史較為悠久\n\n\t\t學(xué)科專業(yè)較為齊全\n

140、\n\t\t師資隊(duì)伍素質(zhì)優(yōu)良\n\n\t\t教學(xué)成果較為豐碩\n\n\t\t科研水平不斷提高\(yùn)n\n\t\t校園文化豐富活躍\n\n\t\t人才培養(yǎng)成效顯著\n\n\t\t合作交流日趨頻繁\n\n\t\t";</p><p>  G.vex[1].description="\t▲ 學(xué)校大門,對(duì)面是天象校區(qū)";</p><p>  G.vex[2].descri

141、ption="\t▲ 逸夫?qū)嶒?yàn)大樓,坐落在淮北師范大學(xué)南門的邵逸夫?qū)嶒?yàn)大樓,\n\t是一座嶄新的現(xiàn)代化實(shí)驗(yàn)大樓。\n\n\t\t";</p><p>  G.vex[3].description="\t▲ 四園廣場(chǎng)為學(xué)校舉行大型活動(dòng)的主要場(chǎng)所,位于行政大樓的下面,\n\t學(xué)生作品會(huì)展中心,學(xué)習(xí)活動(dòng)之地\n\n\t\t";</p><p>  G.ve

142、x[4].description="\t▲ 圖書館為同學(xué)們閱讀自習(xí)的不二之選,\n\t南樓設(shè)有自習(xí)室,北樓多為電子閱讀室\n\n\t\t";</p><p>  G.vex[5].description="\t▲ 文科大樓,分為文南和文北。文南主要為多媒體教室。\n\t文北則是大多數(shù)熱愛自習(xí)的同學(xué)的理想場(chǎng)所,那里學(xué)習(xí)氣氛濃厚。\n\n\t\t";</p>&l

143、t;p>  G.vex[6].description="\t▲ 科學(xué)講堂,簡(jiǎn)稱科講,半圓形狀的兩層建筑,全部配備有多媒體。\n\n\t\t";</p><p>  G.vex[7].description="\t▲ 行政樓,教育交流中心,基本位于學(xué)校心臟位置,內(nèi)部多為各科處室,會(huì)議室。\n\t指揮我校各項(xiàng)工作正常運(yùn)行,其作用可想而知啦!\n\n\t\t";</p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論