freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言課程設(shè)計(jì)報(bào)告-車票管理系統(tǒng)實(shí)驗(yàn)報(bào)告(已修改)

2025-04-04 00:25 本頁面
 

【正文】 《車票管理系統(tǒng)》課程設(shè)計(jì)報(bào)告題目: 車票管理系統(tǒng) 專業(yè): 信息與計(jì)算科學(xué) 班級: 1002 學(xué)號: 姓名: 指導(dǎo)教師: 完成日期: 2011年12月23日一、課程設(shè)計(jì)目的本課程設(shè)計(jì)的目標(biāo)就是要達(dá)到理論與實(shí)際應(yīng)用相結(jié)合,提高學(xué)生組織數(shù)據(jù)及編寫大型程序的能力,并培養(yǎng)基本的、良好的程序設(shè)計(jì)技能以及合作能力。  設(shè)計(jì)中要求綜合運(yùn)用所學(xué)知識,上機(jī)解決一些與實(shí)際應(yīng)用結(jié)合緊密的、規(guī)模較大的問題,通過分析、設(shè)計(jì)、編碼、調(diào)試等各環(huán)節(jié)的訓(xùn)練,使學(xué)生深刻理解、牢固掌握數(shù)據(jù)結(jié)構(gòu)和算法設(shè)計(jì)技術(shù),掌握分析、解決實(shí)際問題的能力?! ⊥ㄟ^這次設(shè)計(jì),要在程序設(shè)計(jì)方法以及上機(jī)操作等基本技能和科學(xué)作風(fēng)方面受到比較系統(tǒng)和嚴(yán)格的訓(xùn)練。二、課程設(shè)計(jì)內(nèi)容::①按班次查詢;②按終點(diǎn)查詢; (1)售票成功(當(dāng)車票有剩余,且車未發(fā)出時(shí)) (2)班次不存在(3)票已售完(當(dāng)座位數(shù)小于等于已定票人數(shù))(4)車已發(fā)出退票成功(輸入的班次號存在且當(dāng)前時(shí)間比發(fā)車時(shí)間早)退票失?。ò啻尾淮嬖诨虍?dāng)前時(shí)間比發(fā)車時(shí)間晚)三、課程設(shè)計(jì)過程1.需求分析(1) 輸入的形式和輸入值的范圍;錄入的班次信息的輸入形式和輸入值的范圍:車次(類型:int) 發(fā)車時(shí)間小時(shí)(類型:int [0,24]) 發(fā)車時(shí)間分鐘(類型:int [0,60]) 起始站及終點(diǎn)站(類型:void wap(int k))行車時(shí)間(類型:float times(int k))額定票數(shù)(類型:number(int k))已定票人數(shù)(類型:nownumber(int k,int i))(2) 輸出的形式;printf(3) 程序所能達(dá)到的功能;①錄入詳細(xì)的班次信息(發(fā)車時(shí)間,起點(diǎn),終點(diǎn)站,行車時(shí)間,額定票數(shù),訂票人數(shù),是否已發(fā)車……);②瀏覽班次信息,可顯示出所有班次當(dāng)前狀總(如果當(dāng)前系統(tǒng)時(shí)間超過了某班次的發(fā)車時(shí)間,則顯示“此班已發(fā)出”的提示信息)。③查詢功能(分班次查詢和終點(diǎn)站查詢兩種);④訂票功能。(當(dāng)查詢出已定票人數(shù)小于額定載量且當(dāng)前系統(tǒng)時(shí)間久小于發(fā)車時(shí)間才能售票,自動更新已售票人數(shù))⑤退票功能;(輸入所退票的班次,當(dāng)本班車未發(fā)出時(shí)才能退票,自動更新已售票人數(shù))⑥臨時(shí)增加班次功能;2.概要設(shè)計(jì)進(jìn)入班次一覽進(jìn)入班次查詢進(jìn)入終點(diǎn)站查詢售票退票增加班次車票管理系統(tǒng)進(jìn)入車票查詢界面按b按班次查詢按c終點(diǎn)站查詢按提示操作繼續(xù)查找,按1返回主菜單3.詳細(xì)設(shè)計(jì)車票查詢依據(jù)提示操作進(jìn)入售票界面售票成功班次不存在票已售完車已發(fā)出根據(jù)提示繼續(xù)售票,返回主菜單按1售票4.調(diào)試分析  內(nèi)容包括:a.調(diào)試過程中遇到的問題是如何解決的以及對設(shè)計(jì)與實(shí)現(xiàn)的回顧討論和分析;,在發(fā)車時(shí)間上我們遇到了一些阻礙!我本來想通過算法來輸出發(fā)車時(shí)間,沒想到一次次的實(shí)驗(yàn)不行!于是我們將發(fā)車時(shí)間的分為小時(shí)段和分鐘段!使用case函數(shù)輸出.int hour(int k){ switch(k) { case 1: return 07。break。 case 2: return 10。break。 。。(省略一部分) case 27: return 19。break。 case 28: return 22。break。 /*d到羅源一天的發(fā)車時(shí)間小時(shí)段*/ }} /*開車時(shí)間段*/int minute(int k){ switch(k) { case 1: return 00。break。 case 2: return 00。break。 。。(省略一部分) case 27: return 30。break。 case 28: return 30。break。 /*d到羅源一天的發(fā)車時(shí)間分鐘段*/ }} /*開車時(shí)間段*/,我們一開始是使用字符串的輸出,這樣以便于按終點(diǎn)站查找時(shí)能進(jìn)行比較。但這種方法我們又沒有實(shí)現(xiàn)!于是我們干脆用void,使用簡便的方法,達(dá)到相同的目的.void wap(int k){ switch(k) { case 1: printf(閩清)。break。 case 2: printf(長樂)。break。 case 3: printf(連江)。break。 case 4: printf(永泰)。break。 case 5: printf(福清)。break。 case 6: printf(羅源)。break。 }} /*輸入終點(diǎn)站的函數(shù)*/ ,這源于要比較發(fā)車時(shí)間與當(dāng)前的時(shí)間,判斷這班車到底有沒有發(fā)車,和能不能訂票與退票,我們用了一個(gè)時(shí)間函數(shù),輸出了當(dāng)前的時(shí)間,但那邊有年月日,不好進(jìn)行提取和比較,于是我們采用輸出了時(shí)間,然后看著那個(gè)時(shí)間手動的提取。int shijian() { struct tm *ptr。 time_t lt。 lt =time(NULL)。 ptr=gmtime(amp。lt)。 printf(ctime(amp。lt))。 return 0。 } /*輸出當(dāng)前時(shí)間的函數(shù)*/在主函數(shù)中:printf(請輸入上述時(shí)間的時(shí)辰:)。 scanf(%d,amp。s)。 printf(請輸入上述時(shí)間的分鐘:)。 scanf(%d,amp。t)。、然后再將s和t帶入各個(gè)需要比較時(shí)間的函數(shù)中。,這是在保存已定票人數(shù)中,這需要更新已定票人數(shù)和判斷能否售票,我們一開始就將這部分留到了最后,一開始我們只寫了暫時(shí)售票人數(shù)為0,在文件的運(yùn)用上我們感覺比較困難,訓(xùn)練的比較少,也比較少這方面的知識!在這里我們碰到了比較大的困難,我們一開始建立了一個(gè)txt的文本文檔,準(zhǔn)備使用這個(gè)來儲存這些數(shù)據(jù),但后來我們覺得使用一個(gè)文檔比較復(fù)雜,容易出錯,于是我們使用比較麻煩,但是簡單的辦法,我建立了與班次一樣多的文檔,一個(gè)文檔保存一班車的數(shù)據(jù),這樣就不是那么復(fù)雜了。int nownumber(int k,int i){ int n=0。 char filename[10]。 switch(i) { case 1: strcpy(filename,)。break。 case 2: strcpy(filename,)。break。 。。 case 27: strcpy(filename,)。break。 case 28: strcpy(filename,)。break。 case 29: strcpy(filename,)。break。 } FILE *fp。 if((fp=fopen(filename,rt+))==NULL) { printf(cannot open file,strike any key exit!)。 exit(1)。 } fscanf(fp,%d,amp。n)。 n=n+k。 rewind(fp)。 fprintf(fp,%d,n)。 //將輸入數(shù)組里面的數(shù)據(jù)寫到文本里 fclose(fp)。 return n。} /*現(xiàn)在已定票人數(shù)*/ 其他都是一些小問題了,我們可以自己一邊調(diào)試一邊就能自己一會兒解決!b.算法的時(shí)空分析(包括基本操作和其他算法的時(shí)間復(fù)雜度和空間復(fù)雜度的分析)和改進(jìn)設(shè)想;我們車票管理系統(tǒng)使用的語言并不復(fù)雜,使用的都是比較常見的,低級的語言,高級的語言和難懂的語言比較少!這是我們小組自己的成果,做出來了,我們挺有成就感的。我們也使用了很多的while循環(huán)。在主函數(shù)中while(log) /*循環(huán)*/ { if(x==39。a39。) banci(s,t)。 /*調(diào)用班次的函數(shù),班次一覽的函數(shù)*/ if(x==39。b39。) chaxun1(s,t)。 /*按班次查詢的函數(shù)*/ if(x==39。c39。) chaxun2(s,t)。 /*按終點(diǎn)站查詢的函數(shù)*/ if(x==39。d39。) maipiao(s,t)。 /*買票的函數(shù)*/ if(x==39。e39。) tuipiao(s,t)。 /*退票的函數(shù)*/ if(x==39。f39。) zengban()。 /*增加班次*/ printf(\n)。 printf(返回主界面:請輸入1:\n)。 printf(退出:0\n)。 scanf(%d,amp。n)。 if(n==1) { system(cls)。 jiemian()。 scanf(%c,amp。x)。 } else if(n==0) break。 }這是在程序運(yùn)行與退出之間循環(huán)在買票函數(shù)中: if(number(k)=nownumber(0,i)amp。amp。log==1) { printf(請輸入你要定的票的數(shù)量m:\n)。 scanf(%d,amp。m)。 nownumber(m,i)。 while(number(k)nownumber(0,i)) { nownumber(m,i)。 printf(這班車已訂滿,請重新訂票:\n)。 printf(請輸入您需要購買票的班次i:\n)。 scanf(%d,i)。 n=i。 while(n0) { k++。 n=ntangci(k)。 } if(i=10) printf(%d
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1