![公交路線管理系統(tǒng)C語(yǔ)言課程設(shè)計(jì)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-4/20/63aa0b00-b6a6-4344-82fc-a21721e2f152/63aa0b00-b6a6-4344-82fc-a21721e2f1521.gif)
![公交路線管理系統(tǒng)C語(yǔ)言課程設(shè)計(jì)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-4/20/63aa0b00-b6a6-4344-82fc-a21721e2f152/63aa0b00-b6a6-4344-82fc-a21721e2f1522.gif)
![公交路線管理系統(tǒng)C語(yǔ)言課程設(shè)計(jì)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-4/20/63aa0b00-b6a6-4344-82fc-a21721e2f152/63aa0b00-b6a6-4344-82fc-a21721e2f1523.gif)
![公交路線管理系統(tǒng)C語(yǔ)言課程設(shè)計(jì)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-4/20/63aa0b00-b6a6-4344-82fc-a21721e2f152/63aa0b00-b6a6-4344-82fc-a21721e2f1524.gif)
![公交路線管理系統(tǒng)C語(yǔ)言課程設(shè)計(jì)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-4/20/63aa0b00-b6a6-4344-82fc-a21721e2f152/63aa0b00-b6a6-4344-82fc-a21721e2f1525.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、計(jì)算機(jī)科學(xué)與技術(shù)系課程設(shè)計(jì)任務(wù)書20122013學(xué)年第一學(xué)期課程c語(yǔ)言課程設(shè)計(jì)課程設(shè)計(jì)名稱公交路線管理系統(tǒng)學(xué)生姓名學(xué)號(hào)專業(yè)班級(jí)指導(dǎo)教師20131年8月一、需求分析本系統(tǒng)主要功能是實(shí)現(xiàn)對(duì)公交路線的管理和維護(hù)。我們都知道,每個(gè)城市都會(huì)有公交路線的改動(dòng),如果使用這個(gè)系統(tǒng),就可以及時(shí)的對(duì)路線信息進(jìn)行修改和保存,是非常方便的,而且該系統(tǒng)使用起來(lái)也很方便。用戶只需根據(jù)顯示的提示信息進(jìn)行選擇和輸入就可以實(shí)現(xiàn)你要求的功能。該系統(tǒng)具有添加,查詢,刪除,修改和顯示所有記錄的功能。用戶可以根據(jù)實(shí)際情況進(jìn)行相應(yīng)的功能選擇。其具體功能簡(jiǎn)單描述如下:(1)保存:即將信息存入指定文件中。當(dāng)用戶對(duì)原始數(shù)據(jù)進(jìn)行相關(guān)的改動(dòng)(主要
2、是對(duì)路線信息進(jìn)行增加、刪除、修改)之后,用戶可以根據(jù)自己的選擇判斷是否要保存到文件中,這樣就實(shí)現(xiàn)了信息的記錄功能,以方便用戶隨時(shí)進(jìn)行查看。(2)添加:即添加一條新的公交路線或者是某一條路線上的站點(diǎn)。每次可以添加一條路線信息,若用戶想添加多條路線信息的話可以重復(fù)執(zhí)行該功能,同樣的,添加站點(diǎn)的話也是每一次添加一個(gè)站點(diǎn),若用戶想添加多條路線信息的話也只需要重復(fù)執(zhí)行該功能即可。這樣,就實(shí)現(xiàn)了對(duì)公交路線的添加信息管理。(3)查詢:即能夠查找出你要的公交路線信息和總共有多少站。簡(jiǎn)單地說(shuō),就是用戶先選擇你要查詢的公交路線號(hào),在輸入起點(diǎn)站和終點(diǎn)站名稱,然后系統(tǒng)就會(huì)自動(dòng)顯示出起點(diǎn)站和終點(diǎn)站之間共有多少站點(diǎn),以及
3、起點(diǎn)站和終點(diǎn)站之間所有站點(diǎn)的序號(hào)和名稱,從而使用戶一目了然的知道站點(diǎn)信息,而不需要像看地圖那樣一個(gè)站點(diǎn)一個(gè)站點(diǎn)的用肉眼進(jìn)行查找,這就為用戶節(jié)省了很多時(shí)間。(4)刪除:即能刪除掉一條你所不需要的公交路線信息和某一條路線上的站點(diǎn)。若要?jiǎng)h除路線時(shí)只需要輸入你要?jiǎng)h除的公交路線號(hào)即可,若要?jiǎng)h除站點(diǎn)也只需輸入你要?jiǎng)h除的站點(diǎn)序號(hào),不需要輸入該站點(diǎn)名稱。(5)修改:即能修改一條你需要該的路線信息。修改內(nèi)容包括:修改該條公交路線號(hào)、修改站點(diǎn)名稱(輸入新的信息時(shí)該條路線的站點(diǎn)長(zhǎng)度不能改變,若要改變站點(diǎn)長(zhǎng)促可以選擇增加和刪除功能,即可實(shí)現(xiàn))。(6)顯示路線信息:即將路線信息顯示到屏幕中,供用戶查看。該功能比較簡(jiǎn)單,
4、在這里不具體說(shuō)明。二、算法設(shè)計(jì)1、設(shè)計(jì)思想:本系統(tǒng)的設(shè)計(jì)流程簡(jiǎn)單比較簡(jiǎn)單,原始數(shù)據(jù)全部都保存在文件中,用戶就不必自己一個(gè)一個(gè)的輸入信息。程序執(zhí)行時(shí)從文件中讀出,文件的讀取操作在下文中我會(huì)詳細(xì)說(shuō)明,這里就不做具體說(shuō)明了。創(chuàng)建動(dòng)態(tài)鏈表和結(jié)構(gòu)體數(shù)組對(duì)路線信息進(jìn)行存儲(chǔ),因?yàn)槭褂面湵頃r(shí)對(duì)程序的插入、刪除會(huì)比較方便,那么插入和刪除就相當(dāng)于對(duì)鏈表節(jié)點(diǎn)的刪除和插入。寫無(wú)返回值的主函數(shù)voidmain()對(duì)系統(tǒng)的功能進(jìn)行顯示,每次用戶選擇某一功能時(shí)都可以看到路線的大致信息,以便于用戶更準(zhǔn)確的選擇功能。其中利用switch條件分支語(yǔ)句進(jìn)行子函數(shù)功能的選擇和調(diào)用。并且使用while循環(huán)語(yǔ)句進(jìn)行多次循環(huán)執(zhí)行,就可以實(shí)
5、現(xiàn)對(duì)信息的多次刪除、增加、修改,知道達(dá)到用戶滿意時(shí)由用戶自己選擇退出系統(tǒng)。通同時(shí)使用了清屏函數(shù),對(duì)上一次程序運(yùn)行的結(jié)果清楚只顯示本次運(yùn)行的相關(guān)信息,這樣的話就做到了界面的友好化,簡(jiǎn)單明了,不冗雜,更方便觀看。當(dāng)用戶對(duì)信息進(jìn)行有關(guān)的改動(dòng)之后,用戶根據(jù)自己的選擇是否保存入文件中,就可以保存他所要的信息了。其主要流程圖如下:2、設(shè)計(jì)表示:下面我將對(duì)各個(gè)子模塊的功能進(jìn)行詳細(xì)的介紹和描述:模塊一:頭文件,定義結(jié)構(gòu)體,結(jié)構(gòu)體中還嵌套了一個(gè)結(jié)構(gòu)體,定義結(jié)構(gòu)體成員,同時(shí)定義指向該類型的指針head,其對(duì)整個(gè)程序都有效。模塊二:菜單顯示。顯示該系統(tǒng)所能完成的功能,一目了然。根據(jù)用戶的需求自由選擇功能實(shí)現(xiàn)。模塊三
6、:從文件中讀取信息。該功能以子函數(shù)的形式給出,因?yàn)槠浞祷刂凳莌ead,而head是指向結(jié)構(gòu)體的指針,所以該函數(shù)屬于指針函數(shù)。執(zhí)行此程序時(shí)首先定義文件指針FILE*fp,在打開(kāi)此文件時(shí),文本文檔里應(yīng)該有用戶需要的數(shù)據(jù),從而才能從文件中正確讀取出來(lái),若文件打開(kāi)不成功則會(huì)顯示“不能打開(kāi)此文件!”。創(chuàng)建動(dòng)態(tài)鏈表來(lái)存儲(chǔ)從文件中讀出來(lái)的數(shù)據(jù),每讀取一組數(shù)據(jù)后文件指針后移,這是系統(tǒng)約定俗成的,不需要用戶去考慮的,知道文件結(jié)束時(shí)停止讀取。讀取結(jié)束后必須要關(guān)閉文件,即fclose(fp),這樣就完成了從文件中讀取信息的功能。模塊四:顯示路線信息。該功能以子函數(shù)的形式給出,無(wú)返回值。定義指向定義過(guò)的結(jié)構(gòu)體類型的指
7、針p,并讓p指向head,當(dāng)p為非空時(shí)輸出結(jié)構(gòu)體成員信息,在這里需要說(shuō)明的是,在輸出站點(diǎn)信息時(shí),當(dāng)最后一個(gè)站點(diǎn)名是end時(shí),停止輸出,因此end是作為站點(diǎn)信息輸出的結(jié)束標(biāo)志,同時(shí)p指針指向鏈表的下一個(gè)節(jié)點(diǎn),再次讀取一組數(shù)據(jù)。模塊五:增加線路信息。該函數(shù)的返回的是鏈表的頭指針head,因此是一個(gè)指針函數(shù)。該函數(shù)不僅可以增加一條路線信息,也可以增加某一條路線上的站點(diǎn)信息。用戶根據(jù)自己的需要進(jìn)行選擇。本系統(tǒng)添加一條公交路線時(shí),是在鏈表的尾部添加的,因?yàn)槲铱紤]到公交線路號(hào)一般沒(méi)什么順序可言,所以就簡(jiǎn)單的添加在了鏈表的末節(jié)點(diǎn)。定義BL*p=head,*q。重新建立一個(gè)新的節(jié)點(diǎn)來(lái)存儲(chǔ)你添加的那條線路信息,
8、判斷p是否為空,若不為空的話,q指向p,p指針位置后移一個(gè)節(jié)點(diǎn),直到p為空。然后q->next指向新建立的節(jié)點(diǎn),新節(jié)點(diǎn)的下一結(jié)點(diǎn)賦值為空,從而完成了增加路線信息的功能。如果是添加路線站點(diǎn),先確定要在哪條路線上添加,所以要先找到該條路線,并用指針指向該節(jié)點(diǎn),然后找該站點(diǎn)將要插入的位置,找到后,將其后面的站點(diǎn)依次后移,把那個(gè)空的位置空間騰出來(lái),用來(lái)置放添加的節(jié)點(diǎn)的信息,這樣就實(shí)現(xiàn)了對(duì)站點(diǎn)的添加。模塊六:刪除線路信息。該函數(shù)返回的是頭指針head,所以該函數(shù)是一個(gè)指針函數(shù),也是作為子函數(shù)的形式出現(xiàn)??梢詣h除整條路線,也可以刪除線路上的某一個(gè)站點(diǎn),刪除一整條路線時(shí),就相當(dāng)于刪除鏈表中的某一個(gè)節(jié)點(diǎn)
9、,先確定你要?jiǎng)h除的線路號(hào),找到后,只需要將其前一個(gè)節(jié)點(diǎn)指向其后一個(gè)節(jié)點(diǎn),所以刪除時(shí)還需要考慮到刪除的是首節(jié)點(diǎn)還是末節(jié)點(diǎn)還是中間節(jié)點(diǎn),若刪除首節(jié)點(diǎn)只需將head指向head的下一個(gè)節(jié)點(diǎn),若刪除末節(jié)點(diǎn),將倒數(shù)第二個(gè)節(jié)點(diǎn)之后賦值為空即可,因此對(duì)線路的刪除還是相對(duì)比較簡(jiǎn)單的,但是要求我們對(duì)鏈表的相關(guān)操作熟練掌握。刪除站點(diǎn)時(shí),先確定你要?jiǎng)h除的是哪條路線上的站點(diǎn),找到后一個(gè)指針會(huì)指向該節(jié)點(diǎn),再確定你要?jiǎng)h除的站序號(hào),確定后將其后一個(gè)站名稱移到當(dāng)前刪除節(jié)點(diǎn)的位置,就可以將該站名覆蓋,從而實(shí)現(xiàn)站點(diǎn)的刪除。模塊七:修改線路信息。同上分析,該子函數(shù)也是一個(gè)指針函數(shù),修改時(shí),先確定你要修改哪條路線,指針指向該節(jié)點(diǎn),在
10、重新輸入新的信息即可,新輸入的信息會(huì)覆蓋原有節(jié)點(diǎn)信息,所以可以實(shí)現(xiàn)對(duì)線路進(jìn)行修改,但是修改時(shí)需要注意的是,修改時(shí)新輸入的站點(diǎn)數(shù)目不能改變。模塊八:查詢路線信息。該子函數(shù)是一個(gè)無(wú)返回值的函數(shù)。使用時(shí)先輸入你要找的路線號(hào),再輸入你要經(jīng)歷的起點(diǎn)站和終點(diǎn)站,程序就會(huì)為你顯示出起點(diǎn)站和終點(diǎn)站之間共有多少站,并且輸出起點(diǎn)站和終點(diǎn)站之間所有站序號(hào)和站點(diǎn)名稱。模塊九:將信息保存到文件中。當(dāng)用戶對(duì)原始路線信息進(jìn)行改動(dòng)之后,或許要將修改過(guò)后的信息保存起來(lái),此時(shí)用戶就可以自己選擇是否要將信息保存起來(lái),保存的位置是本系統(tǒng)實(shí)現(xiàn)設(shè)定好的,保存之后的信息在D盤根目錄下,也方便用戶的查看。模塊十:主函數(shù)。構(gòu)建無(wú)返回值的主函數(shù)
11、,主函數(shù)用來(lái)實(shí)現(xiàn)對(duì)子模塊的調(diào)用功能,用while循環(huán)語(yǔ)句來(lái)控制循環(huán)次數(shù),用戶可以根據(jù)自己的需求選擇任何時(shí)候退出系統(tǒng)。對(duì)子模塊的調(diào)用主要使用switch開(kāi)關(guān)控制語(yǔ)句,根據(jù)選擇實(shí)現(xiàn)用戶要求的功能。3、實(shí)現(xiàn)注釋:本系統(tǒng)對(duì)于菜單顯示表上的功能基本上都能實(shí)現(xiàn),但是不是很完善,很多地方我還沒(méi)有考慮到,或許是考慮的不夠周全,但是有些不足的地方,是我的能力所不能達(dá)到的,還望老師體諒,不過(guò)等以后學(xué)過(guò)新的知識(shí)用新的方法或許就能將系統(tǒng)做進(jìn)一步的改進(jìn)。4、算法設(shè)計(jì)中一些新的想法:我覺(jué)得本系統(tǒng)很不完善,很多功能雖然能實(shí)現(xiàn),但是實(shí)現(xiàn)的不夠完美,很多細(xì)節(jié)我都沒(méi)有考慮到,比如查詢路線時(shí),不能大致故略出起點(diǎn)站和終點(diǎn)站需要的時(shí)間
12、;修改路線信息時(shí),重新輸入該條路線的信息時(shí),路線上站點(diǎn)的個(gè)數(shù)不能改變,要改變的話還得選擇增加或刪除功能;還有就是用戶將改動(dòng)過(guò)后的信息保存到文件中后,以后該文件中的數(shù)據(jù)用戶如果要使用的話,不能從文件中讀取顯示到屏幕上。這些都是我的系統(tǒng)一些不完善的地方,希望以后有能力的時(shí)候,能進(jìn)一步對(duì)系統(tǒng)進(jìn)行修改和完善。三、用戶手冊(cè)用戶在適用本系統(tǒng)時(shí),我在這里有幾點(diǎn)說(shuō)明要解釋一下。以便用戶更好的使用本系統(tǒng)。(1)路線號(hào)整形數(shù)據(jù),站序號(hào)是整形數(shù)據(jù),站名時(shí)字符串。(2)輸入路線信息時(shí),站的序號(hào)是有次序的,從1開(kāi)始依次往后增加。如果你要結(jié)束站點(diǎn)的輸入,只需要在最后一個(gè)站點(diǎn)后在輸入下一個(gè)站的序號(hào),但是本站的站名一定要是e
13、nd,用來(lái)表示站點(diǎn)錄入結(jié)束的結(jié)束標(biāo)志。(3)保存信息的文本文檔,一點(diǎn)要放入G盤根目錄下,因?yàn)槲以趯懕境绦驎r(shí)就規(guī)定了將文本文檔置于G盤根目錄下,所以以后用戶查看數(shù)據(jù)信息時(shí)可以從G盤根目錄下查找。四、調(diào)試及測(cè)試本程序的運(yùn)行結(jié)果如下所示:(1)(2)(3) (4)(5)五、課程小結(jié)通過(guò)這次實(shí)訓(xùn),增加了我學(xué)習(xí)軟件技術(shù)的興趣,雖然還不明確軟件技術(shù)包含的具體內(nèi)容,但從C語(yǔ)言這門課程開(kāi)始,已發(fā)現(xiàn)程序設(shè)計(jì)的樂(lè)趣,在學(xué)習(xí)C語(yǔ)言的過(guò)程中也學(xué)到了許多計(jì)算機(jī)應(yīng)用基礎(chǔ)知識(shí),對(duì)計(jì)算機(jī)的機(jī)體也有了一個(gè)大體的了解。這次實(shí)訓(xùn)是老師給了題目,經(jīng)過(guò)自己的努力,實(shí)現(xiàn)要求。先做簡(jiǎn)單的輸出,一步步的再做其它要求,在實(shí)際操作過(guò)程中犯的一些
14、錯(cuò)誤還會(huì)有意外的收獲,感覺(jué)實(shí)訓(xùn)很有意思。在具體操作中對(duì)這學(xué)期所學(xué)的C語(yǔ)言的理論知識(shí)得到鞏固,達(dá)到實(shí)訓(xùn)的基本目的,也發(fā)現(xiàn)自己的不足之出,在以后的上機(jī)中應(yīng)更加注意,同時(shí)體會(huì)到C語(yǔ)言具有的語(yǔ)句簡(jiǎn)潔,使用靈活,執(zhí)行效率高等特點(diǎn)。發(fā)現(xiàn)上機(jī)實(shí)訓(xùn)的重要作用,特別是對(duì)數(shù)組和循環(huán)有了深刻的理解。通過(guò)實(shí)際操作,學(xué)會(huì)C語(yǔ)言程序編程的基本步驟、基本方法,開(kāi)發(fā)了自己的邏輯思維能力,培養(yǎng)了分析問(wèn)題、解決問(wèn)題的能力。深刻體會(huì)到“沒(méi)有做不到的,只有想不到的”,“團(tuán)結(jié)就是力量”,“實(shí)踐是檢驗(yàn)真理的標(biāo)準(zhǔn)”的寓意。在此希望以后應(yīng)多進(jìn)行這樣的實(shí)訓(xùn)I,加長(zhǎng)設(shè)問(wèn),培養(yǎng)我們獨(dú)立思考問(wèn)題的能力,提高實(shí)際操作水平。六、參考資料1、譚浩強(qiáng)編著,
15、C程序設(shè)計(jì)1991年7月2、裘宗燕著,從問(wèn)題到程序科學(xué)出版社,北京大學(xué)出版社,1999年4月。3、劉瑞挺主編,計(jì)算機(jī)二級(jí)教程,南開(kāi)大學(xué)出版社,1996年10月。4、陳朔鷹等編著,C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)教程,兵器工業(yè)出版社,1994年9月5、姜仲秋等主編,C語(yǔ)言程序設(shè)計(jì),南京大學(xué)出版社,1998年1月。6、C程序設(shè)計(jì)(第二版),譚浩強(qiáng)編,清華大學(xué)出版社,1999年12月。本書以初學(xué)者為讀者對(duì)象,要求的起點(diǎn)低,詳細(xì)而透徹地講述了C語(yǔ)言各個(gè)語(yǔ)句的語(yǔ)法規(guī)則,通過(guò)典型的簡(jiǎn)單的例題,引領(lǐng)初學(xué)者進(jìn)入C語(yǔ)言的世界。7、C語(yǔ)言程序設(shè)計(jì)題解與上機(jī)指導(dǎo),譚浩強(qiáng)編,清華大學(xué)出版社,2000年11月。與教材配套的上機(jī)指導(dǎo)。
16、附錄:1、源程序清單:#include”"#include”"#include""#include""structstationintnum;charname20;stop50;/*公交站*/typedefstructbuslineintbusnum;structstationstop50;structbusline*next;BL;BL*head;/*菜單*/voidMenu()printf("printf("printf("printf("i*n”).歡迎進(jìn)入公交信息管理系統(tǒng)*n"
17、);i*n”).I*");printf("*n");printf("*0.退出系統(tǒng)*n");printf("*n");printf("*1.顯示公交車線路信息printf("*n");printf("*2.增加公交車線路信息printf("*n");printf("*3.刪除公交車線路信息printf("*n");printf("*4.修改公交車線路信息printf("*n");printf("*
18、5.查詢公交車線路信息printf("*n");printf("*6.保存公交車線路信息printf("*n");/*函數(shù)功能:刪除*/*n");*n");*n");*n");*n");*n");BL*Delete()BL*q,*p=head;intkey,r,j=1,x,choise,k;charch5="end"printf("您是要?jiǎng)h除公交路線還是線路站點(diǎn):n");printf("1-刪除公交路線2-刪除站點(diǎn)n");pr
19、intf("你的選擇:");scanf("%d”,&choise);switch(choise)case1:printf("請(qǐng)輸入你要?jiǎng)h除的公交路線號(hào)");scanf("%d”,&key);while(key!=p->busnum&&p!=NULL)q=p;p=p->next;if(p->busnum=key)if(p=head)head=p->next;elseq->next=p->next;)elseprintf("沒(méi)有找到你要?jiǎng)h除的公交路線!"
20、;);returnhead;case2:printf("選擇線路:");scanf("%d”,&key);while(key!=p->busnum&&p!=NULL)q=p;p=p->next;)printf("輸入你要?jiǎng)h除的站點(diǎn)序號(hào):");scanf("%d",&x);for(j=1;j<=x;j+)if(x=p->stopj.num)break;j+;)r=j;for(k=r;strcmp(p->,ch)!=0;k+)strcpy(p-&g
21、t;,p->stopk+1.name);strcpy(p->,p->);returnhead;)BL*Correct()BL*p=head,*q;intkey,j=1;charch5="end"printf("選擇你要修改的路線號(hào):");scanf("%d",&key);while(p!=NULL)if(p->busnum=key)break;q=p;p=p->next;printf("重新輸入該條路線信息(包括路線號(hào)、站序
22、號(hào)、站名稱,各個(gè)站的站數(shù)不變):n");scanf("%d",&p->busnum);do(scanf("%d%s",&(p->stopj.num),p->);j+;while(strcmp(p->,ch)!=0);returnhead;/*函數(shù)功能:添加路線*/BL*Add()BL*p=head,*q,*t;charnme20;intj,choise,k,r,key,x,c;charch5="end"printf("您要添加公交路
23、線還是公交站點(diǎn)n");puts("1-添加公交路線2-添加公交站點(diǎn)n");printf("請(qǐng)選擇:");scanf("%d”,&choise);switch(choise)case1:j=1;t=(BL*)malloc(sizeof(BL);printf("輸入你要添加的公交路線信息:n");scanf("%d",&(t->busnum);doscanf("%d%s",&(t->stopj.num),t->);j+
24、;while(strcmp(t->,ch)!=0);while(p!=NULL)q=p;p=p->next;q->next=t;t->next=NULL;returnhead;case2:j=1;printf("選擇你要添加站點(diǎn)的公交路線:");scanf("%d",&key);while(p!=NULL)q=p;if(p->busnum=key)break;p=p->next;printf("輸入你要添加的站序號(hào)及站名稱:");scanf("%d"
25、;,&x);scanf("%s",nme);while(strcmp(p->,ch)!=0)if(x=(p->stopj.num)r=j;break;j+;r=j;c=j;while(strcmp(p->,ch)!=0)c+;for(k=c;k>=r;k-)strcpy(p->stopk+1.name,p->);strcpy(p->,nme);returnhead;/*函數(shù)功能:查找路線*/voidSearch()BL*p=head,*q;int
26、key,j=1,c,d;charstr120,str220,ch5="end"printf("輸入公交車號(hào):");scanf("%d",&key);printf("n輸入起始站和終點(diǎn)站名稱:");scanf("%s%s",str1,str2);while(p!=NULL)if(p->busnum=key)break;q=p;p=p->next;)while(strcmp(p->,ch)!=0)if(strcmp(p->,st
27、r1)=0)c=j;if(strcmp(p->,str2)=0)d=j;j+;)printf("起始站和終點(diǎn)站之間共有cfcn",d-c-1);printf("各個(gè)站的序號(hào)及名稱為:n");for(j=c;j<=d;j+)printf("%d%st”,p->stopj.num,p->);printf("n");)/*函數(shù)功能:保存數(shù)據(jù)*/Save()FILE*fp;BL*t;intj;charch5="end"t=head;fp=fopen(
28、"保存的數(shù)據(jù).txt","w+");if(fp=NULL)printf("Filecannotopen!n");exit(0);while(t!=NULL)fprintf(fp,"%dt",t->busnum);j=1;dofprintf(fp,"%d%s-",t->stopj.num,t->);j+;while(strcmp(t->,ch)!=0);fprintf(fp,"n");t=t->next;)f
29、close(fp);)/*函數(shù)功能:讀取數(shù)據(jù)*/BL*Creat()BL*p,*q;intj=1;charch5="end"FILE*fp;fp=fopen("","r+");if(fp=NULL)printf("不能打開(kāi)此文件!");exit(0);p=(BL*)malloc(sizeof(BL);head=p;q=p;fscanf(fp,"%d",&(p->busnum);dofscanf(fp,"%d%s",&(p->stopj.num),p->);j+;while(strcmp(p->,ch)=1);while(!feof(fp)j=1;p=(BL*)malloc(sizeof(BL);q->next=p;q=p;fscanf(fp,"%d",&(p->busnum);
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- LY/T 2005-2024國(guó)家級(jí)森林公園總體規(guī)劃規(guī)范
- 蘇人版道德與法治九年級(jí)上冊(cè)7.1《一般違法與犯罪》聽(tīng)課評(píng)課記錄
- 浙教版數(shù)學(xué)七年級(jí)上冊(cè)《6.3 線段的大小比較》聽(tīng)評(píng)課記錄1
- 瑜伽健康活動(dòng)贊助合同(2篇)
- 生態(tài)修復(fù)工程招標(biāo)合同(2篇)
- 甲方因乙方責(zé)任解除合同范本(2篇)
- 2022年新課標(biāo)八年級(jí)上冊(cè)歷史第19課七七事變與全民族抗戰(zhàn)聽(tīng)課評(píng)課記錄
- 人教版地理七年級(jí)下冊(cè)《8.4澳大利亞》聽(tīng)課評(píng)課記錄
- 浙教版數(shù)學(xué)七年級(jí)下冊(cè)《2.4 二元一次方程組的簡(jiǎn)單應(yīng)用》聽(tīng)評(píng)課記錄2
- 人教版數(shù)學(xué)八年級(jí)下冊(cè)《19.3 課題學(xué)習(xí)-選擇方案》聽(tīng)評(píng)課記錄
- 七上 U2 過(guò)關(guān)單 (答案版)
- 五年級(jí)上冊(cè)小數(shù)遞等式計(jì)算200道及答案
- 超高大截面框架柱成型質(zhì)量控制
- GB 9706.1-2020醫(yī)用電氣設(shè)備第1部分:基本安全和基本性能的通用要求
- 森林法講解課件
- 口腔頜面外科:第十六章-功能性外科與計(jì)算機(jī)輔助外科課件
- 信用證審核課件
- 植物工廠,設(shè)計(jì)方案(精華)
- 原發(fā)性膽汁性肝硬化(PBC)課件
- 貸款新人電銷話術(shù)表
- 音箱可靠性測(cè)試規(guī)范
評(píng)論
0/150
提交評(píng)論