




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、太湖學院c#程序設計課程設計題目:公交路線查詢機 電學院計算機科學與技術專業學 號:學生姓名:班 級:計科84成 績:2012年 1月 需求分析:隨著現代社會的發展,交通也越來越發達,人們也開始不斷的外出旅游,不管是市內還是市外對一個準確明了的交通路線需求越來越大,以前我們只能通過電話咨詢、看地圖、向路人打聽來了解訊息,這不僅浪費精力財力時間,而且極為不方便。在這樣一個需求下,我們所設計的公交路線查詢系統就產生了很大的價值,它能很方便的查詢到公交路線,準確的告訴你從a到b該怎么去才最為快捷!這也是我們設計這個系統的初衷!1.功能需求首先我們系統最基本要滿足顧客的需求就是公交路線的查詢。但是我們
2、清楚的知道,死的列表將造成許多不便,因為路線會隨著城市建設而變化,所以我們的路線是可以實時的去更新的,這樣就牽扯到再數據庫中的更新、刪除功能,附帶通過報表清楚的顯示出來修改后的內容。觸發器功能實現公交路線中的一些數值計算,比如幾站路等。我們所要實現的就是站點查詢、換車查詢、線路查詢。2.數據需求數據庫中包含管理者的賬戶密碼。公交路線數據(包括起始站到終點站的其間所有站點)。3.性能需求客戶需要的是一個快捷準確的查詢系統,包括一次轉車到達以及二次轉車到達,不能有任何差錯。所以關于線路查詢的c#程序語句要考慮周全不能有任何差池。數據庫中數據也需要其準確性。概要設計:設計思想: 隨著公路規模的不斷擴
3、大,公交數量的急劇增加,有關公交管理的各種信息量也在不斷成倍增長。面對龐大的信息量,就需要有公交信息管理系統來提公交房管理工作的效率。通過這樣的系統,我們可以做到信息的規范管理和快速查詢,從而減少了管理方面的工作量。目前,我國各省市的公交查詢工作還未實現數字化。整個過程既浪費能源又浪費資源。最后導致浪費時間,無法按時到達目的地。因此,開發一個能夠對最新的公交線路進行查詢的信息平臺就顯得尤其重要。所開發的系統將在一定程度上能夠克服以上的種種缺點,實現各項工作在線完成,為乘客提供一個完全公開、開放、完善的管理平臺,放便了乘客的出行,大大節省了乘客的寶貴時間。通過這樣的系統,我們可以做到信息的規范管
4、理和快速查詢,實現了公交信息管理的系統化、規范化和自動化,這樣不僅減少了管理工作量,還提高了查詢效率,降低了查詢成本。實現模塊:1. 選擇模塊:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;namespace bus public partial class form3 : form public form3() initial
5、izecomponent(); private void button1_click(object sender, eventargs e) if (radiobutton1.checked) form1 f=new form1(); f.show(); this.hide(); if(radiobutton2.checked) form2 f = new form2(); f.show(); this.hide(); private void button2_click(object sender, eventargs e) application.exit(); private void
6、radiobutton1_checkedchanged(object sender, eventargs e) 2. 查詢模塊:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;using system.io;namespace bus public partial class form1 : form public form1()
7、 initializecomponent(); public int n = 0; private void button1_click(object sender, eventargs e) string bus = new string10; filestream fs = new filestream(c:documents and settingsadministrator桌面busesbusmyfile.txt, filemode.open, fileaccess.read); streamreader sr = new streamreader(fs); for (int i =
8、0; i bus.length; i+) busi = sr.readline(); if (busi = null) n+; sr.close(); fs.close(); if (+n = bus.length) messagebox.show(文件內容為空,請按讀入文件按鈕!); else string path = ; if (textbox1.text = & textbox2.text = ) messagebox.show(起始站臺和目的站臺不能為空!); else if (textbox1.text = ) messagebox.show(起始站臺不能為空!); else if
9、 (textbox2.text = ) messagebox.show(目的站臺不能為空!); for (int i = 0; i 0 & aa.indexof(textbox2.text) 0) string b = aa.split(,); path += b0; if (path != ) textbox3.text = path; else textbox3.text = 沒有這路公交車,請選擇查詢2,查詢交通路線!; public string ret(string a, string b) string ret = ; string a1 = a.split(,); string
10、b1 = b.split(,); for (int i =0; i a1.length;i+ ) for (int j = 0; j b1.length; j+) if (a1i = b1j) if (ret =) ret = a1i; else ret += , + a1i; return ret; private void button3_click(object sender, eventargs e) string bus = new string10; filestream fs = new filestream(c:documents and settingsadministrat
11、or桌面busesbusmyfile.txt, filemode.open, fileaccess.read); streamreader sr = new streamreader(fs); for (int i = 0; i bus.length; i+) busi = sr.readline(); sr.close(); fs.close(); string path = ; if (textbox1.text = & textbox2.text = ) messagebox.show(起始站臺和目的站臺不能為空!); else if (textbox1.text = ) message
12、box.show(起始站臺不能為空!); else if (textbox2.text = ) messagebox.show(目的站臺不能為空!); for (int i = 0; i = 0) for (int j = 0; j = 0) for (int s = 0; s bus.length; s+) string cc = buss; if (i != j & j != s & s != i) if (ret(aa, cc) != & ret(cc, bb) != ) path += aa.substring(0, 4) + 到 + ret(aa, cc) + 轉 + cc.subs
13、tring(0, 4) + 到 + ret(cc, bb) + 轉 + bb.substring(0, 4) + 到 + textbox2.text; if (path != ) textbox3.text = path; else textbox3.text = 轉兩次車不能到達,請選擇打的!; private void button2_click(object sender, eventargs e) string bus = new string10; filestream fs = new filestream(c:documents and settingsadministrator
14、桌面busesbusmyfile.txt, filemode.open, fileaccess.read); streamreader sr = new streamreader(fs); for (int i = 0; i bus.length; i+) busi = sr.readline(); sr.close(); fs.close(); string path = ; if (textbox1.text = & textbox2.text = ) messagebox.show(起始站臺和目的站臺不能為空!); else if (textbox1.text = ) messagebo
15、x.show(起始站臺不能為空!); else if (textbox2.text = ) messagebox.show(目的站臺不能為空!); for (int i=0; i = 0) for (int j = 0; j = 0) if (ret(aa, bb) != ) path += aa.substring(0, 4) + 到 + ret(aa, bb) + 轉 + bb.substring(0, 4) + 到 + textbox2.text; if (path != ) textbox3.text = path; else textbox3.text = 轉一次車不能到達,請選擇查
16、詢2,查詢交通路線!; private void button4_click(object sender, eventargs e) filestream fs = new filestream(c:documents and settingsadministrator桌面busesbusmyfile.txt, filemode.open, fileaccess.readwrite); streamwriter sw = new streamwriter(fs); string bus = new string10; bus0 = #001,火車站,吉祥橋,勝利門,五愛北路,梁溪大橋,運河飯店
17、,開源大橋,蠡橋,北橋,稻香新村,中橋,景亭苑,震澤新村,旺山路,蠡湖大橋,蠡湖公園,蠡湖廣場,蠡園,寶界橋,寶界村,黿頭渚; bus1 = #002,梅園公交總站,梅園,開原寺,大渲,公益路,榮巷,張巷,第九人民醫院,上里東,河埒口; bus2 = #003,梓旺新村,東方名苑,東北塘,錦旺苑,夏氏物流,東風橋木材市場,金龍紙品,向陽,廣豐,丁村; bus3 = #004,胡埭停車場,胡埭路,錢胡路,張舍,劉塘村,文良路,歷村,洋溪橋,江南皮件廠; bus4 = #005,無錫動物園,西山,東山,江原醫院,無錫藝校,開源寺,梅園,梅園公交總站; bus5 = #006,錢橋,楊樹岸,惠錢路,
18、惠泉花園,石門路,嚴家鵬,烈士陵園,鳳翔南路,惠暢里,惠山,龍光路,威孚公司,五愛廣場,西門,復興路; bus6 = #007,錫山醫院,錫滬路,市人力資源,長慶路,東林書院,檢察院,三鳳橋,二院,朝陽廣場,文化宮,體育公園,健康橋,梁溪大橋; bus7 = #008,火車站,勝利門,商業大廈,八百伴,解放東路,風雷新村,金海里,敘康里,; bus8 = #009,河埒口,四院,青山灣,青山支路,錫惠公園,吟苑公園,五愛廣場,五愛北路,勝利門,吉祥橋,火車站; bus9 = #010,中橋,景亭苑,震澤新村,旺山路,蠡湖大橋,蠡湖公園,蠡湖廣場,蠡園,寶界橋,寶界村,黿頭渚; for (int
19、 i = 0; i bus.length; i+) sw.writeline(busi); sw.close(); fs.close(); private void button5_click(object sender, eventargs e) form3 f = new form3(); f.show(); this.hide(); private void button6_click(object sender, eventargs e) application.exit(); 3. 修改模塊:using system;using system.collections.generic;
20、using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;using system.io;namespace bus public partial class form2 : form public form2() initializecomponent(); private void button1_click(object sender, eventargs e) string bus = new string10; file
21、stream fs = new filestream(c:documents and settingsadministrator桌面busesbusmyfile.txt, filemode.open, fileaccess.read); streamreader sr = new streamreader(fs); for (int i = 0; i bus.length; i+) busi = sr.readline(); sr.close(); fs.close(); for (int i = 0; i bus.length; i+) string aa = busi; string a1
22、 =aa.split(,); if ( a10= textbox1.text) textbox3.text = busi; break; else messagebox.show(輸入的線路不正確!); break; private void button2_click(object sender, eventargs e) form3 f = new form3(); f.show(); this.hide(); private void button3_click(object sender, eventargs e) application.exit(); private void bu
23、tton4_click(object sender, eventargs e) string bus = new string10; filestream fs = new filestream(c:documents and settingsadministrator桌面busesbusmyfile.txt, filemode.open, fileaccess.read); streamreader sr = new streamreader(fs); for (int i = 0; i bus.length; i+) busi = sr.readline(); sr.close(); fs
24、.close(); for (int i = 0; i bus.length; i+) string aa = busi; string a1 = aa.split(,); if (textbox1.text = a10) busi = textbox3.text; filestream fst = new filestream(c:documents and settingsadministrator桌面busesbusmyfile.txt, filemode.create, fileaccess.readwrite); streamwriter sw = new streamwriter(
25、fst); for (int i = 0; i bus.length; i+) sw.writeline(busi); sw.close(); fst.close(); 詳細設計:(1)設計說明:當打開軟件時首先選擇所需功能,代碼如下:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;namespace bus public par
26、tial class form3 : form public form3() initializecomponent(); private void button1_click(object sender, eventargs e) if (radiobutton1.checked) form1 f=new form1(); f.show(); this.hide(); if(radiobutton2.checked) form2 f = new form2(); f.show(); this.hide(); private void button2_click(object sender,
27、eventargs e) application.exit(); private void radiobutton1_checkedchanged(object sender, eventargs e) 當選擇查詢時,首先寫入文件,然后分別有轉一次車查詢和轉兩次車查詢,代碼如下:using system;using system.collections.generic;using system.componentmodel;using system.data;using system.drawing;using system.text;using system.windows.forms;us
28、ing system.io;namespace bus public partial class form1 : form public form1() initializecomponent(); public int n = 0; private void button1_click(object sender, eventargs e) string bus = new string10; filestream fs = new filestream(c:documents and settingsadministrator桌面busesbusmyfile.txt, filemode.open, fileaccess.read); streamreader sr = new streamreader(fs); for (int i = 0; i bus.length; i+) busi = sr.readline(); if (busi = null) n+; sr.close(); fs.close(); if (+n = bus.length) messagebox.show(文件內容為空,請按讀入文件按鈕!); else string path = ; if (textbox1.text = & textbox2.text
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年環境檢測與評估技能考試題及答案
- 導游業務試題及答案電大
- 時鐘測試題目大全圖片及答案
- float面試題及答案
- 三體名著試題及答案
- 焊接加工考試題及答案
- 2025年歷史文化與博物館管理考試試題及答案
- 借款咨詢服務協議書
- 機電工程決策支持試題及答案
- 軟件設計師考試學習策略分享試題及答案
- 干部履歷表填寫范本(中共中央組織部1999年)
- 勞動教育視角下高職院校學生工匠精神培育研究
- 最簡單封陽臺安全免責協議書
- SH/T 3533-2024 石油化工給水排水管道工程施工及驗收規范(正式版)
- 用友人力資源管理HR解決方案樣本
- 北京市西城區三帆中學2023-2024學年七年級下學期期中數學試題(無答案)
- 藥物殘留溶劑分析報告書
- 腫瘤醫院推廣方案
- 動物出血性肺炎預防與治療
- 公路工程安全風險辨識與防控手冊
- 研究生開題報告評審表
評論
0/150
提交評論