軟件工程課程設(shè)計城市公交查詢系統(tǒng)課程設(shè)計說明書_第1頁
軟件工程課程設(shè)計城市公交查詢系統(tǒng)課程設(shè)計說明書_第2頁
軟件工程課程設(shè)計城市公交查詢系統(tǒng)課程設(shè)計說明書_第3頁
軟件工程課程設(shè)計城市公交查詢系統(tǒng)課程設(shè)計說明書_第4頁
軟件工程課程設(shè)計城市公交查詢系統(tǒng)課程設(shè)計說明書_第5頁
已閱讀5頁,還剩83頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、長沙學(xué)院課程設(shè)計說明書長 沙 學(xué) 院課程設(shè)計說明書題目 城市公交查詢軟件系(部)數(shù)學(xué)與計算機(jī)科學(xué)專業(yè)(班級)軟件工程(2014級4班)姓名學(xué)號指導(dǎo)教師起止日期2015.12.192015.12.25課程設(shè)計任務(wù)書課程名稱:軟件工程課程設(shè)計設(shè)計題目:城市公交查詢軟件已知技術(shù)參數(shù)和設(shè)計要求:需求說明及要求題目一:銀行管理系統(tǒng)及atm前端的模擬設(shè)計銀行管理系統(tǒng)業(yè)務(wù)描述如下:銀行atm存取款系統(tǒng)能為用戶提供存款、取款、查詢、轉(zhuǎn)賬和修改密碼的功能。為了模擬真實的atm業(yè)務(wù)環(huán)境,本系統(tǒng)必須實現(xiàn)存款、取款、查詢、轉(zhuǎn)賬、修改密碼以及開戶的功能。用戶通過開戶業(yè)務(wù)在本系統(tǒng)開立銀行賬戶,之后可以通過該銀行賬戶登陸a

2、tm系統(tǒng),在系統(tǒng)中實現(xiàn)存款、取款、查詢賬戶信息、修改密碼的操作。本系統(tǒng)各個業(yè)務(wù)有如下注意點:(1) 登陸系統(tǒng)用戶登陸之前,必須在登陸界面輸入其銀行賬戶,通過其正確輸入的銀行賬戶登陸系統(tǒng)。(2) 開戶業(yè)務(wù) 要使用本系統(tǒng)必須首先執(zhí)行開戶業(yè)務(wù)開立新的銀行賬戶,并且將此新開的銀行存儲于文件當(dāng)中。同時,系統(tǒng)以身份證號碼作為開戶的充分條件,即一個身份證號碼只能開立一次銀行賬戶。(3) 存款業(yè)務(wù) 客戶登陸系統(tǒng)后,選擇存款業(yè)務(wù),即可以將輸入的存款金額存入相應(yīng)的賬戶。(4) 取款業(yè)務(wù)客戶登陸系統(tǒng)后,選擇取款業(yè)務(wù),即可以將輸入的取款金額從相應(yīng)的銀行賬戶取出,但是取款金額必須大于目前的賬戶余額。(5) 查詢業(yè)務(wù) 客

3、戶登陸系統(tǒng)后,可以選擇查詢業(yè)務(wù),查詢賬戶余額。(6) 轉(zhuǎn)賬業(yè)務(wù) 客戶登陸系統(tǒng)后,可以選擇轉(zhuǎn)賬業(yè)務(wù),進(jìn)行轉(zhuǎn)賬。注意的是轉(zhuǎn)賬的目的賬戶必須是本系統(tǒng)已經(jīng)存在的銀行賬戶。(7) 修改密碼客戶登陸系統(tǒng)后,可以選擇修改密碼業(yè)務(wù),進(jìn)行密碼修改。題目二:個人通信錄系統(tǒng)模擬設(shè)計個人通信錄系統(tǒng)模擬設(shè)計業(yè)務(wù)描述如下: 個人通信錄必須為用戶提供好友管理、系統(tǒng)管理和幫助三個部分。好友管理包括好友信息錄入、好友信息修改、好友信息刪除和好友信息查詢查詢的功能,在此基礎(chǔ)上可以設(shè)置好友分組;系統(tǒng)管理包括密碼修改、分組配置;幫助需要為用戶提供系統(tǒng)的操作幫助。本系統(tǒng)各個業(yè)務(wù)有如下注意點:(1)登陸系統(tǒng)用戶在登陸界面輸入用戶名和密碼

4、,校驗正確后可以登陸系統(tǒng)。(2)好友管理業(yè)務(wù)新增的好友信息保存至文件,之后對好友信息的管理都是對文件中的好友信息進(jìn)行處理,并且可以將好友信息進(jìn)行分組。(3)系統(tǒng)管理可以在密碼修改中修改本用戶的密碼;可以在此功能中配置系統(tǒng)需要的分組名,并且將分組名保存到文件中。(4)幫助幫助業(yè)務(wù)需要為用戶提供系統(tǒng)的操作幫助。各階段具體要求:1、需求分析階段熟悉系統(tǒng)業(yè)務(wù),從業(yè)務(wù)中抽取出系統(tǒng)的需求,形成完善的需求說明書。2、系統(tǒng)設(shè)計階段根據(jù)需求,進(jìn)行程序設(shè)計,包括定義系統(tǒng)的界面、定義系統(tǒng)數(shù)據(jù)的存儲方式等,形成完善的設(shè)計說明書。3、編碼實現(xiàn)階段(1)完成代碼編寫 (2)要求代碼編寫規(guī)范4、系統(tǒng)測試階段(1)完成功能調(diào)

5、試(2)要求完成必要的測試工作5、交付實施階段(1)提交可正常執(zhí)行的系統(tǒng)(2)提交系統(tǒng)需求說明書、設(shè)計說明書、程序代碼(3)撰寫課程設(shè)計報告書(4)要求規(guī)范地書寫文檔設(shè)計工作量:(1)軟件設(shè)計:完成問題陳述中所提到的所有需求功能。(2)論文:要求撰寫不少于3000個文字的文檔,詳細(xì)說明各階段具體要求。工作計劃:理論課結(jié)束后兩周進(jìn)行課程設(shè)計,軟件開發(fā)如下,一周完成。其中,兩教學(xué)課時用于題目分析與介紹。其他教學(xué)可是用于程序設(shè)計。1)選定題目2)需求分析3)系統(tǒng)設(shè)計4)編碼實現(xiàn)5)系統(tǒng)測試6)交付實施計劃時間指導(dǎo)老師學(xué)生18周魏 歌14軟件1班18周卓 琳14軟件2班18周潘 怡14軟件3班18周何

6、海江14軟件4班18周鐘旭14軟件5班18周楊鳳年14軟件6班(因為班級較多,各班開始和結(jié)束時間根據(jù)試驗室安排情況靈活確定,以正式課表為準(zhǔn))注意事項n 提交文檔 長沙學(xué)院課程設(shè)計任務(wù)書(每學(xué)生1份) 長沙學(xué)院課程設(shè)計論文(每學(xué)生1份) 長沙學(xué)院課程設(shè)計鑒定表(每學(xué)生1份)指導(dǎo)教師簽名: 日期: 教研室主任簽名: 日期:系主任簽名: 日期:長沙學(xué)院課程設(shè)計鑒定表姓名 胡輝衡學(xué)號 b20140304401專業(yè)軟件工程班級14級4班設(shè)計題目城市公交查詢軟件指導(dǎo)教師鐘 旭指導(dǎo)教師意見:評定等級: 教師簽名: 日期: 答辯小組意見:評定等級:答辯小組長簽名:日期:教研室意見:教研室主任簽名: 日期: 系

7、(部)意見:系主任簽名:日期:說明課程設(shè)計成績分“優(yōu)秀”、“良好”、“及格”、“不及格”四類;摘 要隨著我國城市公交系統(tǒng)發(fā)展和逐漸完善,市民的出行得到了極大的方便,但同時巨大的公交線路網(wǎng)讓人們的選擇也困難起來,本城市公交系統(tǒng)就是在此背景下進(jìn)行設(shè)計的。本系統(tǒng)以用戶為中心,界面簡潔,結(jié)構(gòu)簡單,功能較為完善,可以滿足市民出行的正常需要。系統(tǒng)分為兩個部分,一是內(nèi)部人員使用的管理員部分,這個部分的用來進(jìn)行管理,包括站點管理,線路管理,城市管理和功能測試。二是一般用戶使用的查詢部分,這個部分的用來進(jìn)行查詢,包括站點查詢,線路查詢,站站查詢,切換城市,修改密碼。 關(guān)鍵詞: 城市公交查詢系統(tǒng)目 錄摘 要i第1

8、章 設(shè)計內(nèi)容與要求11.1課程名稱11.2設(shè)計要求1第2章 需求分析42.1功能模塊42.2設(shè)計環(huán)境6第3章 概要設(shè)計83.1功能結(jié)構(gòu)83.2系統(tǒng)流程圖11第4章 詳細(xì)設(shè)計204.1登陸注冊模塊204.2 站點管理模塊224.3 線路管理模塊244.4城市管理模塊324.5 公交查詢模塊34第5章 測試495.1 登陸注冊模塊測試495.2 站點管理模塊測試505.3 線路管理模塊測試525.4 城市管理模塊測試535.5 公交查詢模塊測試55總 結(jié)58參考文獻(xiàn)58附 錄 源代碼58第1章 設(shè)計內(nèi)容與要求1.1課程名稱:軟件工程基礎(chǔ)實訓(xùn)ii設(shè)計題目:城市公交查詢軟件1.2設(shè)計要求 各階段具體要

9、求:1、需求分析階段(1)寫出需求分析(做什么) (2)要求問題分析和功能定義準(zhǔn)確2、系統(tǒng)設(shè)計階段(1)根據(jù)問題描述,設(shè)計系統(tǒng)的結(jié)構(gòu)(3)完成數(shù)據(jù)結(jié)構(gòu)中各個函數(shù)的定義(4)用戶界面的設(shè)計(5)要求數(shù)據(jù)結(jié)構(gòu)定義合理,類層次結(jié)構(gòu)清晰3、編碼實現(xiàn)階段(1)完成代碼編寫 (2)要求代碼編寫規(guī)范4、系統(tǒng)測試階段(1)完成功能調(diào)試(2)要求完成必要的測試工作5、交付實施階段(1)提交可正常執(zhí)行的系統(tǒng)(2)提交系統(tǒng)需求說明書、設(shè)計說明書、程序代碼(3)撰寫實訓(xùn)報告書(4)要求規(guī)范地書寫文檔第2章 需求分析2.1功能模塊1.主要功能模塊:(1)用戶管理用戶管理模塊為用戶提供用戶信息管理的功能,包括用戶注冊、用

10、戶登陸、用戶信息修改、用戶密碼修改、用戶注銷等功能。用戶注冊:用戶可以利用此功能完成注冊,用戶在界面輸入注冊信息,回車后,軟件將注冊信息保存到用戶信息數(shù)據(jù)文件中。用戶登陸:用戶可以利用此功能完成登陸,用戶在界面輸入登陸信息,回車后,軟件驗證登錄信息,登陸成功后,軟件進(jìn)入主功能選擇界面。用戶信息修改:用戶可以利用此功能完成用戶信息修改。用戶密碼修改:用戶可以利用此功能完成密碼修改。用戶注銷:用戶可以利用此功能完成用戶信息注銷,某用戶注銷后,便不能再次登錄。(2)線路管理線路管理模塊為用戶提供公交線路數(shù)據(jù)的管理和維護(hù),包括線路添加、線路修改、線路刪除等功能。線路添加:用戶可以利用此功能增加一條線路

11、。線路修改:用戶可以利用此功能修改一條線路。線路刪除:用戶可以利用此功能刪除一條線路。(3)站點管理站點管理模塊為用戶提供公交站點數(shù)據(jù)的管理和維護(hù),包括站點添加、站點修改、站點刪除等功能。站點添加:用戶可以利用此功能增加一個站點。站點修改:用戶可以利用此功能修改一個站點。站點刪除:用戶可以利用此功能刪除一個站點。(4)公交查詢公交查詢模塊為用戶提供公交信息查詢的功能,包括站點查詢、線路查詢、站站查詢、最短距離查詢、最少換乘查詢等功能。站點查詢:用戶可以利用此功能查看某個站點所??康墓痪€路。線路查詢:用戶可以利用此功能查看某條線路所路經(jīng)的公交站點。站站查詢:用戶可以利用此功能查詢出發(fā)地和目的地

12、之間的所有公交乘車方案。最短距離查詢:用戶可以利用此功能查詢出發(fā)地和目的地之間最短距離的公交乘車方案。最少換乘查詢:用戶可以利用此功能查詢出發(fā)地和目的地之間最少換乘的公交乘車方案。 2.2設(shè)計環(huán)境 ide:dev c+ 5.11編譯器:g+ 4.9.2操作系統(tǒng): windows 7 (64位)第3章 概要設(shè)計3.1功能結(jié)構(gòu)3.2系統(tǒng)流程圖第4章 詳細(xì)設(shè)計4.1 登錄注冊模塊圖4.1-1 注冊4.2 站點管理模塊圖4.2-1 增加站點圖4.2-2 刪除站點圖4.2-3 修改站點4.3 線路管理模塊圖4.3-1 增加路線圖4.3-2 刪除線路圖4.3-3 修改線路4.4 公交查詢模塊圖4.5-1

13、站點查詢 圖4.5-2線路查詢圖4.5-3線路選擇第5章 測試5.1 登錄注冊模塊測試5.2 站點管理模塊測試5.3 線路管理模塊測試5.4 城市管理模塊測試5.5 公交查詢模塊測試總 結(jié)本次課程設(shè)計對編程能力的要求很高,需要很多的軟件工程的思想,在寫的過程中也卡住過,但經(jīng)過老師的指導(dǎo)都得到了很好的解決。在這次的實訓(xùn)中,我的編程能力有的飛躍性的提升。代碼的本身也出現(xiàn)了一些bug但經(jīng)過測試大部分都背找出并修復(fù)。在整個代碼編寫過程也學(xué)會了很多編程技巧,一是數(shù)據(jù)表的設(shè)計,我的系統(tǒng)之所以能夠?qū)懙妮^為順利很大的原因就是數(shù)據(jù)表的設(shè)計,將公交站點,公交線路,站點和線路的關(guān)系分別存放在三個文件中,這種設(shè)計能是

14、整個程序的數(shù)據(jù)和邏輯更加清晰,設(shè)計好的數(shù)據(jù)表能節(jié)省很多的時間并使算法也變得簡單。二是設(shè)計模式,不管功能多繁雜,結(jié)構(gòu)多復(fù)雜,只要有良好的函數(shù)封裝,用到合適的設(shè)計模式,都能迎刃而解。通過本次實訓(xùn),我的系統(tǒng)架構(gòu)能力也有了一定的提升。同時要感謝老師的指導(dǎo)和解惑。參考文獻(xiàn)1 嚴(yán)蔚敏 吳偉民著.數(shù)據(jù)結(jié)構(gòu)(c語言版). 北京:清華大學(xué)出版社,2015.2 杜紅燕 劉華富著.c語言程序設(shè)計教程.復(fù)旦大學(xué)出版社,2014.附 錄 源代碼/*-城市公交查詢系統(tǒng)-*作者:胡輝衡 *學(xué)校:長沙學(xué)院 *功能:實現(xiàn)城市公交查詢的基本功能 *實現(xiàn)技術(shù):c語言及數(shù)據(jù)結(jié)構(gòu) *指導(dǎo)老師:鐘旭 *完成時間 :2015年12月21日

15、 -*/ #include #include#include #include#includestruct user/記錄賬號信息 int identity;/用戶身份,值等于false時為普通用戶,否則為管理員int userid;/用戶編號char loginname40;/用戶登錄名char loginpassword20;/登錄密碼 struct user *next;/指向下一個用戶信息的指針,便于建立鏈表 ;struct city/記錄城市信息 int cityid;/城市編號 char cityname20;/城市名 struct city *next;/指向下一個城市信息的指針

16、,便于建立鏈表 ;struct station /記錄車站信息 int stationid;/車站編號char stationname20;/車站名稱int cityid;/所屬城市編號 struct station *next;/指向下一個站點信息的指針,便于建立鏈表 ;struct road /記錄公交線路信息 int roadid;/公交線路編號char roadname20;/公交線路名稱int cityid;/所屬城市編號struct road *next;/指向下一個公交線路信息的指針,便于建立鏈表 ;struct relation/記錄車站與公交線路之間的關(guān)系和站與站之間的信息

17、int stationid;/車站編號 int roadid;/公交線路編號int sep;/車站在此公交線路的序號int distance;/在此公交線路下這個車站到下一站的距離(單位:km) int time; /在此公交線路下這個車站到下一站所需要的時間(單位:min)int cityid;/所屬城市編號struct relation *next;/指向下一個站點與線路映射信息的指針,便于建立鏈表 ;int g_cityid = 0;/記錄當(dāng)前城市編號的全局變量 int maininterface();/主界面 struct user *login();/登錄函數(shù) struct user

18、 *register();/注冊函數(shù) struct user*findpassword();/找回密碼 void initialize();/初始化 int userinterface(struct user* p);/用戶界面int admininterface(struct user* p);/管理員界面 struct user*logout(struct user* p);/注銷函數(shù) void linemanage();/線路管理函數(shù) void sitemanage();/站點管理函數(shù) void linequery();/線路查詢函數(shù) void sitequery();/站點查詢函數(shù) v

19、oid sitetositequery();/站站查詢函數(shù) struct user*changepassword(struct user* p);/修改密碼函數(shù) void inputpw(char *password,int len); /密碼掩蓋函數(shù) void changecity();/切換城市 void addcity();/增加城市 void siteadd();/站點增加函數(shù) void sitechange();/站點修改函數(shù)void sitedelete();/站點刪除函數(shù)void sitedeletedeal(int stationid); /站點刪除處理函數(shù)void linea

20、dd();/線路增加函數(shù) void linechange();/線路修改函數(shù)void linedelete();/線路刪除函數(shù)void lineinsertsite(int roadid);/插入站點形成公交線路 void linedeletesite(int roadid);/刪除公交線路上所有的站點 void lineshow(int roadid);/顯示公交線路上所有的公交站點 void siteshow(int stationid);/顯示經(jīng)過公交站點所有的公交線路 void showallway(int start,int end);/顯示從起點到終點兩次換乘及以下的所有乘車方式

21、void graphfound();/將當(dāng)前城市所有的公交線路和站點構(gòu)成一張圖void showroadname(int roadid);/根據(jù)線路編號顯示公交線路名 void showstationname(int stationid);/根據(jù)站點編號顯示公交站點名 int main()struct user *p;int option;initialize();while(1)system(cls);option = maininterface();switch(option)case 49:p = login();break;case 50:p = register();break;ca

22、se 51:p = findpassword();break;default:exit(-1);/printf(a);if(p = null)continue;else/printf(tt你的身份:);if(p-identity)while(p)/避免函數(shù)調(diào)用函數(shù)導(dǎo)致內(nèi)存爆炸 b:option = admininterface(p);switch(option)case 49:linemanage();break;case 50:sitemanage();break;case 51:changecity();break;case 52:addcity();break;case 53:goto

23、a;/*userinterface(p)*/;break;case 54:p = logout(p);break;default:exit(-1);elsewhile(p)/避免函數(shù)調(diào)用函數(shù)導(dǎo)致內(nèi)存爆炸a:option = userinterface(p);switch(option)case 49:linequery();break;case 50:sitequery();break;case 51:sitetositequery();break;case 52:changecity();break;case 53:p = changepassword(p);break;case 54:if

24、(p-identity)goto b;elsep = logout(p);break;default:exit(-1);/system(pause);return 0;void siteadd()system(cls);printf(-站點增加界面-);file *fp;int i = 1;bool mark = false;int stationid,cityid;int stationidmark = 0;/記錄新建公交站點的編號(應(yīng)大于所有已有的公交站點) char stationname20;struct station *head,*p,*q;head = (struct stati

25、on*)malloc(sizeof(struct station);head-next = null;fp = fopen(station.txt,r);if(fp)while(!feof(fp)/產(chǎn)生鏈表 p = (struct station*)malloc(sizeof(struct station);p-next = null;fscanf(fp, %d %s %d,&p-stationid,p-stationname,&p-cityid);if(p-stationid stationidmark)stationidmark = p-stationid;p-next = head-ne

26、xt;head-next = p;/printf( %d %s %d,stationid,stationname,cityid);/*if(cityid = g_cityid)p-cityid = cityid;p-stationid = stationid;strcpy(p-stationname,stationname);p-next = head-next;head-next = p;*/p = head-next;printf(nn本城市已有的公交站點:n);/將本城市已有的公交站點全部顯示出來 while(p != null)/printf(a);if(p-cityid = g_ci

27、tyid)printf(%st,p-stationname);if(i%5 = 0)printf(n);i+; p = p-next; /*if(p = null)printf(nn本城市暫時還沒有添加任何公交站點!n);elseprintf(nn本城市已有的公交站點:n);while(p != null)/printf(a);printf(t%s,p-stationname);if(i%5 = 0)printf(n);i+;p = p-next; */printf(nnn請輸入你想要增加的公交站點名(輸入0表示返回):);/對輸入的公交站名做正確性驗證 while(1)fflush(stdi

28、n);gets(stationname);if(!strcmp(stationname,0)/把輸入0作為模塊出口 break;p = head-next;mark = false;while(p != null)if(!strcmp(p-stationname,stationname) & p-cityid = g_cityid)mark = true;/表示公交站點已存在,不需要再添加 break;p = p-next;if(mark)printf(此公交站點已存在!請重新輸入公交站點名(輸入0表示返回):);else if(strlen(stationname) 20 | strlen(

29、stationname) next = null;stationidmark+; p-stationid = stationidmark;p-cityid = g_cityid;strcpy(p-stationname,stationname);p-next = head-next;head-next = p;fclose(fp);fp = fopen(station.txt,w);if(fp)p = head-next;while(p != null)/更新公交站點文件信息 /printf(b);fprintf(fp, %d %s %d,p-stationid,p-stationname,p

30、-cityid);head-next = head-next-next;free(p);/釋放鏈表結(jié)點,節(jié)省內(nèi)存 p = head-next;free(head);fclose(fp);elseprintf(文件city打開失?。?;system(pause);return;elseprintf(nnnnntt文件station.txt打開失??!nnn);system(pause);return;/system(pause); void sitechange()system(cls);printf(-站點修改界面-);file *fp;int i = 1;bool mark = false;i

31、nt stationid,cityid;char stationname20;struct station *head,*p,*q;head = (struct station*)malloc(sizeof(struct station);head-next = null;fp = fopen(station.txt,r);if(fp)while(!feof(fp)/產(chǎn)生鏈表 p = (struct station*)malloc(sizeof(struct station);p-next = null;fscanf(fp, %d %s %d,&p-stationid,p-stationnam

32、e,&p-cityid);p-next = head-next;head-next = p;p = head-next;printf(nn本城市已有的公交站點:n);/將本城市已有的公交站點全部顯示出來 while(p != null)/printf(a);if(p-cityid = g_cityid)printf(%st,p-stationname);if(i%5 = 0)printf(n);i+; p = p-next; printf(nnn請輸入你想要修改的公交站點名(輸入0表示返回):);/對輸入的公交站名做正確性驗證 while(1)fflush(stdin);gets(statio

33、nname);if(!strcmp(stationname,0)/把輸入0作為模塊出口 break;p = head-next;mark = false;while(p != null)if(!strcmp(p-stationname,stationname) & p-cityid = g_cityid)mark = true;/表示公交站點已存在,可以修改 break;p = p-next;if(mark)break; else if(strlen(stationname) 20 | strlen(stationname) 20 | strlen(stationname) stationna

34、me,stationname);fclose(fp);fp = fopen(station.txt,w);if(fp)p = head-next;while(p != null)/更新公交站點文件信息 /printf(b);fprintf(fp, %d %s %d,p-stationid,p-stationname,p-cityid);head-next = head-next-next;free(p);/釋放鏈表結(jié)點,節(jié)省內(nèi)存 p = head-next;free(head);fclose(fp);elseprintf(文件city打開失敗!);system(pause);return;el

35、seprintf(nnnnntt文件station.txt打開失?。nn);system(pause);return;/system(pause);void sitedeletedeal(int stationid) /站點刪除處理函數(shù)/printf(n所有經(jīng)過該站點的公交線路都將跳過該站點!n);/printf(%dn,stationid);file *fp,*fp2;int sep;struct relation *head,*p,*q;struct road *head2,*p2,*q2;fp = fopen(relation.txt,r);if(fp)head = (struct r

36、elation*)malloc(sizeof(struct relation);head-next = null;head2 = (struct road*)malloc(sizeof(struct road);head2-next = null;while(!feof(fp)p = (struct relation*)malloc(sizeof(struct relation);p-next = null;fscanf(fp, %d %d %d %d %d %d,&p-stationid,&p-roadid,&p-sep,&p-distance,&p-time,&p-cityid);if(p

37、-stationid = stationid)p2 = (struct road*)malloc(sizeof(struct road);p2-next = null;p2-roadid = p-roadid;printf( %d ,p-roadid);strcpy(p2-roadname,);p2-next = head2-next;head2-next = p2;p-next = head-next;head-next = p;fclose(fp);p2 = head2-next;while(p2 != null)p = head-next;while(p != null)if(p-roa

38、did = p2-roadid & p-stationid = stationid)sep = p-sep;/printf( %d n,sep);break;p = p-next;p = head-next;while(p != null)if(p-roadid = p2-roadid & p-sep sep)/printf(%d,p-sep);p-sep-;p = p-next;p2 = p2-next;q = head;p = head-next;while(p != null)if(p-stationid = stationid)q-next = q-next-next;free(p);

39、p = q;q = p;p = p-next; fp2 = fopen(relation.txt,w);if(fp2)p = head-next;while(p != null)fprintf(fp, %d %d %d %d %d %d,p-stationid,p-roadid,p-sep,p-distance,p-time,p-cityid);p = p-next;fclose(fp2);elseprintf(nnnnntt文件station.txt打開失??!nnn);system(pause);return;p = head-next;while(p != null)head-next =

40、 head-next-next;free(p);p = head-next;free(head);p2 = head2-next;while(p2 != null)head2-next = head2-next-next;free(p2);p2 = head2-next;free(head2);elseprintf(nnnnntt文件station.txt打開失?。nn);system(pause);return;/system(pause);void sitedelete()system(cls);printf(-站點刪除界面-);file *fp;int i = 1;char option;bool mark = false;int stationid,cityid;char stationname20;struct station *head,*p,*q;head = (struct station*)malloc(sizeof(struct station);head-next = null;fp = fopen(station.txt,r);if(fp)while(!feof(fp)/產(chǎn)生鏈表 p = (struct station*)malloc(sizeof(struct station);p-next = null;fscanf(fp, %d %s %d,&

溫馨提示

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

評論

0/150

提交評論