車票管理系統(tǒng)C語言課程設計報告_第1頁
車票管理系統(tǒng)C語言課程設計報告_第2頁
車票管理系統(tǒng)C語言課程設計報告_第3頁
車票管理系統(tǒng)C語言課程設計報告_第4頁
車票管理系統(tǒng)C語言課程設計報告_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 車票管理系統(tǒng)hubei university of automotive technologyc語言程序設計課程設計報告課設題目: 車票管理系統(tǒng) 專 業(yè): 自動化(汽車工業(yè)電氣自動化) 班 級: t1123-6 姓 名: 張科 成 績: 完成日期: 2012年6月18日2012年6月22日 指導教師: 胡寧亞 苗暹 目 錄1.課程設計目的22.需求分析22.1要求22.2任務描述22.3運行環(huán)境32.4開發(fā)工具33.總體設計33.1系統(tǒng)流設計33.2系統(tǒng)模塊設計44.詳細設計54.1數(shù)據(jù)結(jié)構設計54.2模塊接口設計64.3 以下是幾個主要模塊的流程圖:75.運行結(jié)果105.1主菜單界面:10

2、5.2信息錄入界面:105.3信息瀏覽界面:115.4 信息查詢界面:115.5信息修改界面:126.程序調(diào)試與測試126.1程序調(diào)試126.2程序測試127.問題與不足128.建議129.編程體會1210.程序源代碼:1211.參考文獻1312.用戶使用手冊131.課程設計目的1) 通過課程設計,加深對結(jié)構化程序設計思想的理解,能對系統(tǒng)功能進行分析,并設計合理的模塊化結(jié)構。2) 通過課程設計,進一步掌握c語言中重要的數(shù)據(jù)結(jié)構。掌握并熟練運用指針、鏈表、結(jié)構體、文件等數(shù)據(jù)結(jié)構。3) 通過課程設計,提高程序開發(fā)能力,能運用合理的控制流編寫清晰高效的程序。4) 通過課程設計,培養(yǎng)c語言知識運用和自

3、學能力,真正的把課堂上獲得的知識運用起來,培養(yǎng)自己對程序編寫的興趣,并能獨立設計和實現(xiàn)一個小型系統(tǒng)。5) 通過課程設計,加強了自己的程序分析能力。2.需求分析2.1要求1) 遵循軟件開發(fā)過程的基本規(guī)范;能靈活應用,初步具備運用c程序解決實際問題的能力。2) 運用結(jié)構化程序設計方法,按照課程設計題目要求,完成包括需求分析、數(shù)據(jù)結(jié)構設計、概要設計、詳細設計、編寫代碼、調(diào)試和測試c程序等過程。3) 學會利用數(shù)組、結(jié)構體、鏈表進行相關信息表示。4) 功能模塊劃分清晰,系統(tǒng)結(jié)構圖符合功能操作要求,且有詳盡的功能描述5) 各主要功能模塊有詳盡的流程圖及描述,用函數(shù)的形式實現(xiàn),且調(diào)用入口、功能、出口等關系正

4、確。6) 所設計的c程序較好的可讀性和可靠性;程序書寫風格規(guī)范,注釋清晰。7) 界面友好(良好的人機互交),凡需要輸入信息時,都有較詳盡的提示信息,并對輸入信息有較完善的值域分析。8) 程序經(jīng)上機調(diào)試通過,不應出現(xiàn)語法型、功能型錯誤,并獲得滿意的結(jié)果。9) 學會通過各功能性測試用例測試程序的能力,盡可能避免原則性錯誤的出現(xiàn)。10) 掌握編寫、調(diào)試和測試c語言程序的基本技巧,充分理解結(jié)構化程序設計的基本方法。11) c語言課程設計報告的內(nèi)容反應實際設計過程,且符合格式要求,無抄襲現(xiàn)象。2.2任務描述車票管理系統(tǒng)題目描述一車站每天有n個發(fā)車班次,每個班次都有一班次號(1、2、3n),固定的發(fā)車時間

5、,固定的路線(起始站、終點站),大致的行車時間,固定的額定載客量。如班次 發(fā)車時間 起點站 終點站 行車時間 額定載量 已定票人數(shù) 票價1 8:00 十堰 丹江 3 45 30 362 6:30 十堰 鄖縣 1 40 40 483 7:00 十堰 鄖西 4 40 20 474 10:00 十堰 竹山 3 40 2 27 試設計車票管理系統(tǒng),使之能提供以下功能:(1) 錄入班次信息(信息用文件保存),可不定時地增加班次數(shù)據(jù)(2) 瀏覽班次信息,可顯示出所有班次當前狀總(如果當前系統(tǒng)時間超過了某班次的發(fā)車時間,則顯示“此班已發(fā)出”的提示信息)。(3) 查詢路線:可按班次號查詢 ,可按終點站查詢(4

6、) 售票和退票功能a:當查詢出已定票人數(shù)小于額定載量且當前系統(tǒng)時間小于發(fā)車時間時才能售票,自動更新已售票人數(shù);b:退票時,輸入退票的班次,當本班車未發(fā)出時才能退票,自動更新已售票人數(shù);(5) 所有數(shù)據(jù)符合實際應用要求題目要求(1) 按分析、設計、編碼、調(diào)試和測試的軟件開發(fā)過程完成這個應用程序。(2) 班次信息應該包括:班次、發(fā)車時間、起點站、終點站、行車時間、額定載量、已定票人數(shù)等。(3) 為各項操作功能設計一個菜單。應用程序運行后,先顯示這個菜單,然后用戶通過菜單項選擇希望進行的操作項目。(4) 每個功能操作中,不應有原則性的錯誤出現(xiàn);(5) 對輸入值用測試用例測試,不應有錯誤出現(xiàn);(6)

7、界面應友好,操作應流暢。輸入要求應用程序運行后,在屏幕上顯示一個菜單。用戶可以根據(jù)需求,選定相應的操作項目。進入每個操作后,一般應有相應的子菜單,或有相應的提示信息,根據(jù)提示信息的要求,從鍵盤或文件輸入相應的信息。輸出要求(1) 應用程序運行后,要在屏幕上顯示一個菜單。(2) 要求用戶輸入數(shù)據(jù)時,要給出清晰、明確的的提示信息,包括輸入的數(shù)據(jù)內(nèi)容、格式及結(jié)束方式等。提示設計一個結(jié)構體類型和一維數(shù)組類型,用來存放班次信息。擴展功能將所有班次信息存儲在一個文件中,并實現(xiàn)文件讀寫的操作。2.3運行環(huán)境1) windowsxp/7系統(tǒng)2) vc+6.0編譯環(huán)境2.4開發(fā)工具c語言3.總體設計3.1系統(tǒng)流

8、設計本系統(tǒng)的功能模塊如圖1所示,主要有以下模塊按車次查詢按終點站查詢增加班次信息瀏覽班次信息題 目 信 息保 存退出系統(tǒng)錄入班次信息程序歡迎界面主菜單界面售票退票查詢班次信息返回主菜單3.2.系統(tǒng)模塊設計1) 課程名稱界面:主函數(shù)int main(),實現(xiàn)課程設計名稱以歡迎界面。2) 主菜單界面:構造函數(shù)void mainmenu(),實現(xiàn)系統(tǒng)主菜單的顯示。3) 系統(tǒng)時間顯示:構造系統(tǒng)時間函數(shù)int system_time()。實現(xiàn)系統(tǒng)時間的顯示以及和車開的時間比較式否以開車。4) 主菜單的選擇:構造主菜單選擇函數(shù) void chose(),實現(xiàn)主菜單的選擇。5) 班次信息的讀入:構造主菜單讀

9、入函數(shù)void load(void),實現(xiàn)文件信息的讀入。6) 增加班次函數(shù):構造增加班次函數(shù)void add(),實現(xiàn)班次的增加。7) 班次信息的瀏覽:構造主菜單瀏覽函數(shù) void show(),實現(xiàn)車票信息瀏覽界面的顯示。8) 班次的查詢:構造主菜單查詢函數(shù)void searsh(),實現(xiàn)車次的查詢界面的顯示,并通過對班次查詢函數(shù)void searsh1(),終點站瀏覽查詢函數(shù)void searsh2()的調(diào)用,實現(xiàn)相應的查詢。9) 按班次查詢:構造按車次查詢函數(shù)void searsh1(),實現(xiàn)按車次的查詢界面。10) 按終點站查詢:構造按終點站查詢函數(shù)void searsh2(),實現(xiàn)

10、按終點站的查詢界面。11) 售票:構造主菜單售票函數(shù)void buy_system(),實現(xiàn)買票的界面。12) 退票:構造主菜單退票函數(shù)void back_ticket(),實現(xiàn)退票的界面13) 時間比較:構造時間比較函數(shù)int canpan(),實現(xiàn)時間比較功能,判斷車是否開出。14) 儲存當前班次信息:構造儲存函數(shù)void save(),實現(xiàn)自動更新班次信息功能。4.詳細設計4.1數(shù)據(jù)結(jié)構設計根據(jù)系統(tǒng)要求,系統(tǒng)中需要保存的數(shù)據(jù)信息,其結(jié)構如下:數(shù)據(jù)項名稱數(shù)據(jù)項系統(tǒng)表示數(shù)據(jù)類型數(shù)據(jù)長度備注車次numberint2發(fā)車時間小時hourint2發(fā)車時間分鐘minuteint2起始站點origin

11、_station20char20終點站last_station20char20持續(xù)時間last_timefloat4車次最大人數(shù)max_numberint22已售車票sold_ticketint2車票價格piaojiaint2為了能實現(xiàn)程序的操作性和修改性,采用鏈表的結(jié)構保存車次信息,在車次的基本信息時,創(chuàng)建一個車票的節(jié)點,將其插入到鏈表中,示意圖如下。 車次信息1車次信息2通訊錄信息1221車次信息3車次信息4為此,先聲明一個類型為struct ticket的結(jié)構體,其成員為車次的基本信息。然后通過對指針、鏈表、文件等數(shù)據(jù)結(jié)構的操作,實現(xiàn)對車次基本信息的錄入,瀏覽,存盤,等一系列操作。其中,

12、結(jié)構體定義如下:struct ticket /定義記錄車票信息的結(jié)構體 int number; /定義車次 int hour; /記錄發(fā)車時間包含小時 int minute; /分鐘 char origin_station20; /起始站名稱數(shù)組char last_station20; /終點站名稱數(shù)組float last_time; /持續(xù)時間int max_number; /車次最大運載量int sold_ticket; /已售車票 int piaojia ; /車票的價格struct ticket *next; 4.2模塊接口設計1) 所有函數(shù)模塊聲明如下:/*函數(shù)聲明*/ int sy

13、stem_time(); /系統(tǒng)時間函數(shù)void mainmenu(); /主菜單函數(shù)void chose(); /主菜單選擇函數(shù)void load(void); /主菜單讀入函數(shù)void add(); /增加班次函數(shù)void show(); /主菜單瀏覽函數(shù)void searsh(); /主菜單查詢函數(shù)void searsh1(); /按車次查詢函數(shù)void searsh2(); /查詢函數(shù)void buy_system(); /主菜單售票函數(shù)void back_ticket(); /主菜單退票函數(shù)int canpan(); /時間比較函數(shù)void save(); /儲存函數(shù)void tim

14、u(); /題目函數(shù)2) 并定義九個全局變量:int s;int flag = 1; int syshour; int sysminute; char filename50;struct ticket *head=null,*p1,*p2,*p33) 主要模塊的實現(xiàn)系統(tǒng)以主函數(shù)int main()為入,進入系統(tǒng)歡迎界面。然后調(diào)用void mainmenu()函數(shù),進入主菜單界面。系統(tǒng)接收用戶輸入的選擇,調(diào)用相應的函數(shù),進入到下一級菜單進行相關工作。:1如果用戶選擇選擇1,則調(diào)用錄入班次函數(shù)void load(void)錄入班次信息。2如果用戶選擇選擇2,則調(diào)用增加班次函數(shù)void add()增

15、加班次信息。3如果用戶選擇選擇3,則調(diào)用瀏覽班次函數(shù)void show()瀏覽班次信息。4如果用戶選擇4,則條用查詢函數(shù)void searsh()進入查詢界面菜單。系統(tǒng)接收用戶輸入的選擇,調(diào)用相應的函數(shù),進入到下一級菜單進行相關工作。:1如果用戶選擇1,則調(diào)用按班次查詢函數(shù)void searsh1()進行班次查詢。 2如果用戶選擇2,則調(diào)用按終點站查詢函數(shù)void searsh2()進行班次查詢。3如果用戶選擇3,則返回主菜單界面。5如果用戶選擇5,則調(diào)用售票void buy_system()進行買票功能。6如果用戶選擇6,則調(diào)用退票void back_ticket()函數(shù)進行退票功能。7如果

16、用戶選擇7,則調(diào)用題目void timu()函數(shù)顯示題目信息。8如果用戶選擇8,則調(diào)用保存函數(shù)void save()函數(shù)保存對當前班次信息到文件中。7如果用戶選擇0,則返回主菜單。4.3 以下是幾個主要模塊的流程圖:1) 主菜單函數(shù):否調(diào)用對應選項函數(shù)進入下一級菜單退出系統(tǒng)是打印主菜單接收用戶選項是否合法是否為0否是圖1 主函數(shù)流程圖2) 查詢班次函數(shù):打印查詢子菜單接收用戶選項是否合法是否為0否是是否是否為1按班次查詢按終點站查詢是否為2回主菜單圖2查詢班次流程圖3) 退票函數(shù):需要退的車票否是否存在是確認退訂 否是回主菜單退訂失敗退訂成功圖4 信息修改流程圖 圖3訂票流程圖5.運行結(jié)果5.

17、1歡迎系統(tǒng)界面圖45.2主菜單界面圖55.3瀏覽班次界面圖65.4查詢菜單界面6.程序調(diào)試與測試6.1程序調(diào)試1歡迎系統(tǒng)界面圖1主菜單界面按任意鍵,進入主菜單界面。2主菜單界面:圖2 信息錄入界面等待用戶選擇,進入相應的功能界面。3錄入班次界面: 圖3 錄入班次信息成功圖4錄入班次信息失敗 4增加班次信息圖5增加班次信息成功5 瀏覽班次界面圖6顯示當前所有班次信息5查詢班次界面圖7 等待用戶選擇,進入相應的查詢方案。圖8按班次查詢結(jié)果圖9 按終點站查詢結(jié)果6售票界面圖10車已開出。無法售票圖11票以賣完,無法買票圖12買票成功圖13更新當前剩余車票7退票界面圖14退票成功圖15退票失敗圖16退

18、票成功后更新當前剩余票數(shù)6.2程序測試(1) 各模塊測試用例數(shù)據(jù)的確定班次 發(fā)車時間 起點站 終點站 行車時間 額定載量 已定票人數(shù) 票價1 8:00 十堰 丹江 3.0 45 30 452 6:30 十堰 鄖縣 1.0 40 40 563 7:00 十堰 鄖西 4.0 40 20 674 23:00 十堰 竹山 3.0 40 40 465 8:00 十堰 孝感 3.0 45 30 456 6:30 十堰 襄樊 1.0 40 40 567 7:00 十堰 鄂州 4.0 40 20 678 23:0 十堰 漢川 3.0 40 40 469 23:30 丹江 仙桃 5.0 45 16 42測試結(jié)果

19、(2) 測試中出現(xiàn)的問題的原因和分析由于給定的數(shù)據(jù)有特定的格式。測試數(shù)據(jù)只能是按照程序編的格式寫入,否者就會讀入錯誤。無法正常顯示,不能隨便讀入一個測試文件。程序的讀入有點局限性。7.問題與不足(1) 總體上這個程序還是很嚴密,一些的小bug也防止,不會出現(xiàn)程序突然死機的情況。但是測試文件具有局限性,只能用給定的測試文件測試,不能隨便自己編一個文件測試,否者就會顯示錯誤,要按照程序的格式編寫文件,才能正確讀入,其他情況基本正常,總體上這個程序比較完美。8.建議就我個人而言,我認為本次課程設計的題目選擇還是比較公平的,但是時間安排還是有點欠缺的,到學期最后一些考試集中到一起了,時間比較少,天氣也

20、比較熱,課程設計應該提前很早就開始準備的。讓學生有個心理準備和這個意識,讓大家對課程設計更加重視,這個輔導由于人數(shù)太多,也不能全部都輔導到,只能大家有選擇性的問一些問題,老師只能簡單為你解答,主要是還是要靠自己的。老師是只是個輔導作用。9.編程體會本次c語言訓練,讓我們獨立完成一個小系統(tǒng),我從頭到尾努力獨立完成,一方面對c語言有了更好的認識,對c語言語法上面的知識有了一個應用性的復習,同時對文件和鏈表操作有了更好的學習,另一方面我對編程的一些良好習慣也有了認識,編程上的細節(jié)處理也有了了解,總之這次訓練讓我學到很多,這次課程設計讓我學到很多知識,讓我對c語言又有了個全新的認識,這方面的知識有增加

21、了不少,現(xiàn)在我的個人c語言水平有很大的提高,我覺得任何成果都是通過自己的努力得來的,對自己也是一個考驗和鍛煉。10.程序源代碼:#include #include #include #include #include #include /*鏈表操作所用結(jié)構體指針*/struct ticket *head=null,*p1,*p2,*p3; /*定義結(jié)構體指針head 為頭指針p1 為輸入數(shù)據(jù)緩存空間指針p2 為尾指針*/struct ticket /定義記錄車票信息的結(jié)構體 int number; /定義車次 int hour; /記錄發(fā)車時間包含小時 int minute; /分鐘 char

22、 origin_station20; /起始站名稱數(shù)組char last_station20; /終點站名稱數(shù)組float last_time; /持續(xù)時間int max_number; /車次最大運載量int sold_ticket; /已售車票 int piaojia ; /車票的價格struct ticket *next;/*函數(shù)聲明*/ int system_time(); /系統(tǒng)時間函數(shù)void mainmenu(); /主菜單函數(shù)void chose(); /主菜單選擇函數(shù)void load(void); /主菜單讀入函數(shù)void add(); /增加班次函數(shù)void show()

23、; /主菜單瀏覽函數(shù)void searsh(); /主菜單查詢函數(shù)void searsh1(); /按車次查詢函數(shù)void searsh2(); /查詢函數(shù)void buy_system(); /主菜單售票函數(shù)void back_ticket(); /主菜單退票函數(shù)int canpan(); /時間比較函數(shù)void save(); /儲存函數(shù)void timu(); /題目函數(shù)/*定義全局變量*/int s;int flag = 1; int syshour; /記錄系統(tǒng)時間小時 int sysminute; /記錄系統(tǒng)時間分鐘 char filename50; /文件名數(shù)組 /*主函數(shù)*/

24、int main() printf(tttt*歡迎使用車票管理系統(tǒng)*tttn); system(pause); while(1) mainmenu(); chose(); return 0;/*主菜單*/void mainmenu() system(cls); printf( 當前時間:); system_time(); printf(t*主菜單*n); printf(t* 1.錄入班次信息 *n); printf(t* 2.增加班次信息 *n); printf(t* 3.瀏覽班次信息 *n); printf(t* 4.查詢班次信息 *n); printf(t* 5.售票 *n); print

25、f(t* 6.退票 *n); printf(t* 7.題目信息 *n); printf(t* 8.保存 *n); printf(t* 0.退出系統(tǒng) *n); printf(t*n);/*系統(tǒng)時間函數(shù)*/int system_time() systemtime sys; getlocaltime( &sys ); /調(diào)用系統(tǒng)時間 printf( %4d /%02d/%02d %02d:%02d:%02d 星期%1dn, sys.wyear, sys.wmonth, sys.wday, sys.whour, sys.wminute, sys.wsecond, sys.wdayofweek); sy

26、shour=sys.whour; sysminute=sys.wminute; return 0;/*主菜單選擇函數(shù)*/ void chose() int n; printf( 請輸入您想做的操作(0)8: ); doscanf(%d,&n); if(n8)printf(ttt您的輸入錯誤請從新輸入(整數(shù)08):);rewind(stdin);while(n8);switch(n)case 1:load(); system(cls); /每次進入主菜單清空 mainmenu(); break; case 2:add();break; case 3:show();break; case 4:se

27、arsh();break; case 5:buy_system();break; case 6:back_ticket();break; case 7:timu();break; case 8:save();break; case 0:exit(0); /調(diào)用系統(tǒng)函數(shù)退出程序/*主菜單讀入函數(shù)*/void load(void) /載入文件 char n; /定義變量記錄輸入字符 file *fp; biaoji : printf(請輸入文件名或者文件路徑名:); /標記當前位置 scanf(%s,filename); getchar(); printf(您確定您輸入的文件路徑是否正確(y/n)

28、:); /確定文件輸入正確 scanf(%c,&n); if(n=y) if(fp=fopen(filename,r)=null) /判斷文件的存在,是否可讀 printf(文件%s不可讀,請確認文件%s存在或者文件路徑正確.nn,filename,filename); system(pause);/暫停顯示文件狀態(tài) return; head=p1=(struct ticket *)malloc(sizeof(struct ticket);/*開辟一個新單元*/p1-next =null;while(!feof(fp)fscanf(fp,%03d, &p1-number);fscanf(fp,

29、 %d%02d, &p1-hour, &p1-minute);fscanf(fp, %s%s, p1-origin_station,p1-last_station);fscanf(fp, %f%2d%2d%2d, &p1-last_time, &p1-max_number, &p1-sold_ticket,&p1-piaojia);if(p1-numbernext =p2;p3=p1;p1=p2;p1-next =null;free(p2);p3-next=null; fclose(fp); /關閉文件printf(n);printf(文件錄入成功ttt); system(pause); el

30、se goto biaoji; /當文件名輸入錯誤時,選擇n可返回標記處重新輸入/增加班次信息void add()int n=0,m,i;p1=head;if(head=null) /空數(shù)據(jù)庫插入在第一個位置getchar();printf(t車次信息數(shù)據(jù)庫為空,只能插入第一個位置,按任意鍵將繼續(xù)。:n);getchar();printf(請按班次 發(fā)車時間 起點 終點行車時間(小時) 額定載量已訂票人數(shù) 票價(請輸入0)的形式輸入1條車次記錄(提示班次不與已存在班次相同):n);head=(struct ticket *)malloc(sizeof(struct ticket);/*開辟一個

31、新單元*/head-next=null; doscanf(%d%d%2d%s%s%f%d%d%d,&head-number,&head-hour,&head-minute,head-origin_station,head-last_station,&head-last_time,&head-max_number,&head-sold_ticket,&head-piaojia);if(head-numbernumberhourhour24)|(head-minuteminute60)|(head-max_numbersold_ticketnumbernumberhourhour24)|(head

32、-minuteminute60)|(head-max_numbersold_ticketnumber, head-hour, head-minute, head-origin_station, head-last_station, head-last_time, head-max_number, head-sold_ticket,head-piaojia); printf(ttt1項信息成功輸入完畢!n);system(pause);return;/*數(shù)據(jù)庫不為空時,分插入第一個位置,中間位置,最后一個位置三種情況*/don+;p1=p1-next; while(p1!=0);printf(t

33、車次信息數(shù)據(jù)庫中共有%d條記錄,請輸入插入的位置n(n=1&n=%d):n,n,n+1);doscanf(%d,&m);if(mn+1) printf(ttt輸入范圍有誤,請重新輸入希望插入的正確位置(n=1&n=%d):n,n+1); rewind(stdin);while(mn+1);if(m=1) /*插入在數(shù)據(jù)庫的第一個位置*/p1=head;getchar();printf(請按班次 發(fā)車時間 起點 終點行車時間(小時) 額定載量 已訂票人數(shù) 票價(請輸入0)的形式輸入1條車次記錄(提示班次不與已存在班次相同):n);head=(struct ticket *)malloc(size

34、of(struct ticket);/*開辟一個新單元*/ doscanf(%d%d%2d%s%s%f%d%d%d,&head-number,&head-hour,&head-minute,head-origin_station,head-last_station,&head-last_time,&head-max_number,&head-sold_ticket,&head-piaojia);if(head-numbernumberhourhour24)|(head-minuteminute60)|(head-max_numbersold_ticketnumbernumberhourhour

35、24)|(head-minuteminute60)|(head-max_numbersold_ticketnumber, head-hour, head-minute, head-origin_station, head-last_station, head-last_time, head-max_number, head-sold_ticket,head-piaojia);head-next =p1;printf(ttt1項信息成功輸入完畢!n);system(pause);return;if(m=n+1)/*插入在數(shù)據(jù)庫的最后一個位置*/p1=head;while( p1-next!=nu

36、ll)p1=p1-next;printf(請按班次 發(fā)車時間 起點 終點行車時間(小時) 額定載量已訂票人數(shù) 票價(請輸入0)的形式輸入1條車次記錄(提示班次不與已存在班次相同):n);p2=(struct ticket *)malloc(sizeof(struct ticket);/*開辟一個新單元*/ doscanf(%d%d%2d%s%s%f%d%d%d,&p2-number,&p2-hour,&p2-minute,p2-origin_station,p2-last_station,&p2-last_time,&p2-max_number,&p2-sold_ticket,&p2-piao

37、jia);if(p2-numbernumberhourhour24)|(p2-minuteminute60)|(p2-max_numbersold_ticketnumbernumberhourhour24)|(p2-minuteminute60)|(p2-max_numbersold_ticketnumber, p2-hour, p2-minute, p2-origin_station, p2-last_station, p2-last_time, p2-max_number, p2-sold_ticket,p2-piaojia);p2-next=null;p1-next =p2;printf(tt1項信息成功輸入完畢!n);system(pause);return;/*插入在數(shù)據(jù)庫的中間第n個位置*/p1=head;for(i=1;inext;prin

溫馨提示

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

評論

0/150

提交評論