

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 高級(jí)語(yǔ)言程序設(shè)計(jì)</b></p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 題目: 飛機(jī)訂票系統(tǒng)程序設(shè)計(jì) </p><p> 專 業(yè) : </p><p> 班 級(jí) :
2、</p><p> 學(xué) 號(hào) : </p><p> 姓 名 : </p><p><b> 指導(dǎo)教師 : </b></p><p><b> 日 期: </b></p><p> 1、程序基本功能要求</p><p>
3、; 本程序首先輸入用戶名、密碼進(jìn)入系統(tǒng);從菜單中選擇可以輸入機(jī)票信息對(duì)機(jī)票信息進(jìn)行瀏覽、修改、查詢、退訂票等功能并可以通過(guò)其內(nèi)部各類方</p><p> 式或菜單內(nèi)選項(xiàng)了解航班更細(xì)的信息。</p><p> (1)航班信息用文件保存,因而要提供文件的輸入輸出操作。 </p><p> (2)航班信息的錄入,其中包括了航班信息中的航班號(hào)、起始站、終點(diǎn)站、預(yù)售機(jī)
4、票數(shù) 、已售機(jī)票數(shù)。 </p><p> (3)航班信息瀏覽功能且提供顯示操作。</p><p> (4)可以查詢航線,查詢方式有按航班號(hào)查詢、按起點(diǎn)站查詢、按終點(diǎn)站查詢按航線查詢、按飛行時(shí)間查詢五種,可從各個(gè)方面進(jìn)行查詢,方便快捷。</p><p> (5)承辦訂票和退票業(yè)務(wù),可顯示剩余票數(shù)和已買(mǎi)票數(shù)。當(dāng)票數(shù)被訂或被退時(shí)票數(shù)會(huì)隨之變化,統(tǒng)計(jì)較為
5、靈活。</p><p> (6)提供鍵盤(pán)式選擇菜單以實(shí)現(xiàn)功能選擇。</p><p><b> 2、總體設(shè)計(jì).</b></p><p> 編寫(xiě)一個(gè)飛機(jī)訂票系統(tǒng)的程序使該系統(tǒng)能夠?qū)崿F(xiàn)對(duì)航班信息的錄入、瀏覽、修改、查詢以及訂票、退票的功能。根據(jù)課程設(shè)計(jì)要求和本組人員的增補(bǔ),首先要通過(guò)一個(gè)用戶登錄界面進(jìn)入系統(tǒng),其次要制作一個(gè)主菜單顯示出各個(gè)操作
6、的提示可供用戶選擇進(jìn)而一步步地深入操作。根據(jù)主菜單的內(nèi)容再進(jìn)一步編制具體操作的函數(shù),各個(gè)功能均用專門(mén)編制的函數(shù)來(lái)完成。因?yàn)轱w機(jī)訂票系統(tǒng)含有各航班的各項(xiàng)信息如航班號(hào)、航線、飛行時(shí)間、機(jī)票數(shù)目等必要信息所以就決定用剛學(xué)不久的結(jié)構(gòu)體數(shù)組來(lái)存放航班的各項(xiàng)信息,這就是看到題目后的最初的思路。</p><p> 在整個(gè)程序中,含有多種類型的頭文件,包括了標(biāo)準(zhǔn)輸入、輸出頭文件、字符串函數(shù)處理頭文件、動(dòng)態(tài)存儲(chǔ)與釋放函數(shù)頭文
7、件;在結(jié)構(gòu)體數(shù)組中也對(duì)不同類型的數(shù)組進(jìn)行不同的定義,例如: int flightno、int totalticket、char start[10]等;在各類信息的顯示操作中,本系統(tǒng)在執(zhí)行瀏覽、查詢和退訂票是充分利用函數(shù)的調(diào)用,利用switch()語(yǔ)句進(jìn)行,簡(jiǎn)便實(shí)用;在此系統(tǒng)中,函數(shù)相互嵌套,形成了一個(gè)完整的系統(tǒng)。</p><p> 本次設(shè)計(jì)需要編制初始化、建立數(shù)據(jù)文件、數(shù)據(jù)文件保存、增加航班信息、訂票、退票業(yè)務(wù)
8、等內(nèi)容。首先需要設(shè)立一個(gè)初始化函數(shù)來(lái)得到航班信息。具體設(shè)計(jì)是第一次運(yùn)行程序時(shí)自動(dòng)生成保存航班信息的文件,并輸入初始航班信息,待第二次開(kāi)始就可以直接讀取該文件獲得已有的航班信息并可直接使用。運(yùn)用了access函數(shù)判斷文件是否存在。系統(tǒng)初始化后,沒(méi)有尋找到數(shù)據(jù)文件則進(jìn)行新建數(shù)據(jù)文件。此函數(shù)的作用就是進(jìn)行新建文件數(shù)據(jù)的錄入,運(yùn)用到了文件指針的定義FILE *fp文件的打開(kāi)fopen和關(guān)閉fclose、成塊讀寫(xiě)函數(shù)中的fwrite運(yùn)用for
9、循環(huán)進(jìn)行各組數(shù)據(jù)的輸入,用m++記錄下輸入的航班數(shù)量并運(yùn)用if語(yǔ)句判斷是否輸入下一條航班信息,若不繼續(xù)則返回主界面。系統(tǒng)初始化之后若原始數(shù)據(jù)文件存在則進(jìn)行文件內(nèi)航班信息的讀取以供接下來(lái)程序中的各個(gè)函數(shù)來(lái)使用。在該函數(shù)中同樣運(yùn)用到了文件指針FILE *fp、文件的打開(kāi)fopen和關(guān)閉fclose、成塊讀寫(xiě)函數(shù)中的fread、文件結(jié)束檢測(cè)函數(shù)feof同時(shí)配合while語(yǔ)句控制文件的讀取,m++記錄下讀取到的航班數(shù)量等。因?yàn)樵陲w機(jī)訂票系
10、統(tǒng)中涉及到飛機(jī)的訂票和退票業(yè)務(wù)還有按航班</p><p> 只做稍稍修改就行退票成功是用.。</p><p> 將航班的剩余票數(shù)加上去以顯示即時(shí)航班信息。</p><p><b> 模塊分工:</b></p><p> 進(jìn)入系統(tǒng)菜單 、輸出航班信息、訂票信息由劉妍負(fù)責(zé)</p><p>
11、輸入航班信息、保存航班信息、讀取航班信息由龔媛負(fù)責(zé)</p><p> 查詢航班信息、退票信息、修改信息部分由郭勇艷負(fù)責(zé)</p><p><b> 3、詳細(xì)設(shè)計(jì)</b></p><p> 系統(tǒng)程序結(jié)構(gòu)(流程圖)</p><p><b> 錄入信息系統(tǒng)流程圖</b></p><
12、;p> 航班信息瀏覽函數(shù):[流程圖]顯示信息</p><p> 查詢模塊:[流程圖]</p><p><b> ..</b></p><p> 4、程序運(yùn)行結(jié)果(截圖)</p><p> 登陸系統(tǒng)時(shí)需輸入用戶信息</p><p><b> 圖1</b><
13、;/p><p> 進(jìn)入系統(tǒng)后出現(xiàn)菜單供選擇,選擇需要進(jìn)入的窗口</p><p><b> 圖2</b></p><p><b> 航班信息的錄入</b></p><p><b> 圖3</b></p><p><b> 瀏覽航班信息<
14、;/b></p><p><b> 圖4</b></p><p><b> 航班信息的修改</b></p><p><b> 圖5</b></p><p><b> 查詢菜單</b></p><p><b>
15、 圖6</b></p><p> 通過(guò)航班號(hào)和時(shí)間進(jìn)行查詢</p><p><b> 圖7</b></p><p><b> 系統(tǒng)訂票</b></p><p><b> 圖8</b></p><p><b> 退票系統(tǒng)&
16、lt;/b></p><p><b> 圖9</b></p><p><b> 退出系統(tǒng)</b></p><p><b> 圖10</b></p><p> 5、源程序代碼(代碼中注明每段代碼的完成人)</p><p> /*用戶名:di
17、anke 密碼:12345*/</p><p> #include<stdio.h> //標(biāo)準(zhǔn)輸入、輸出頭文件</p><p> #include<string.h> //包含字符串函數(shù)處理頭文件</p><p> #include<stdlib.h> //包含
18、動(dòng)態(tài)存儲(chǔ)與釋放函數(shù)頭文件</p><p> #include<conio.h> //包含字符串的輸入、輸出頭文件</p><p> #define N 10000 </p><p> struct flight //定義結(jié)構(gòu)體數(shù)組</p><p><b> {&l
19、t;/b></p><p> int flightno;</p><p> char start[10];</p><p> char end[10];</p><p> char day[10];</p><p> int totalticket;</p><p> int
20、sellticket;</p><p><b> }</b></p><p><b> s[N];</b></p><p><b> int i;</b></p><p><b> int m=0;</b></p><p>
21、 #define PRINT "%-d%14s%13s%12s%12d%16d\n",s[i].flightno,s[i].start,s[i].end,s[i].day,s[i].totalticket,s[i].sellticket //定義輸出格式</p><p> void menu(); //進(jìn)入系統(tǒng)菜單</p><p>
22、; void print(); //輸出航班信息 </p><p> void booking(); //訂票信息</p><p> void input(); //輸入航班信息</p><p> void save(); /
23、/保存航班信息 </p><p> void read(); //讀取航班信息</p><p> void search(); //查詢航班信息</p><p> void back(); //退票信息 </p>
24、;<p> void correct(); //修改信息</p><p> void menu() </p><p><b> {</b></p><p><b> int j;</b></p><p> printf("
25、 歡迎進(jìn)入飛機(jī)訂票管理系統(tǒng)!\n"); </p><p> printf("======================================================================\n");</p><p><b> do</b></p><p>
26、;<b> {</b></p><p> printf(" 1.錄入航班信息 \n");</p><p> printf(" 2.瀏覽航班信息 \n");</p><p&g
27、t; printf(" 3.修改航班信息 \n");</p><p> printf(" 4.查詢航班信息 \n");</p><p> printf(" 5.
28、訂票信息 \n");</p><p> printf(" 6.退票信息 \n");</p><p> printf(" 0.退出航班信息管理系統(tǒng) \n");</p>&l
29、t;p> printf("======================================================================\n");</p><p> printf("請(qǐng)?jiān)?-6中選擇以回車(chē)鍵結(jié)束:\n");</p><p> scanf("%d",&j);</
30、p><p><b> switch(j)</b></p><p><b> {</b></p><p> case 1: input(); //調(diào)用輸入模塊</p><p><b> break;</b></p><p>
31、case 2:print(); //調(diào)用打印模塊</p><p><b> break;</b></p><p> case 3:correct(); //調(diào)用修改模塊</p><p><b> break;</b></p><p> case
32、 4:search(); //調(diào)用查詢模塊</p><p><b> break;</b></p><p> case 5:booking(); //調(diào)用訂票模塊</p><p><b> break;</b></p><p> case 6:b
33、ack(); //調(diào)用退票模塊</p><p><b> break;</b></p><p><b> case 0:;</b></p><p><b> break;</b></p><p><b> }</b>&l
34、t;/p><p> }while(j!=0); //判斷結(jié)束</p><p> printf("謝謝使用,再見(jiàn)!\n");</p><p> } //主函數(shù)結(jié)束</p><p> void main()
35、 //打印主函數(shù)程序信息</p><p><b> {</b></p><p> int i,k,part1,part2;</p><p> char name[10]="dianke",password[10]={"\0"};</p>
36、<p> char person[10], c[10]="12345";</p><p> printf ("\t\t ********** 歡迎進(jìn)入飛機(jī)訂票管理系統(tǒng)!**********\n\n"); //打印提示信息</p><p> printf ("\t\t ~本系統(tǒng)由 、 、 編寫(xiě)
37、完成~ \n\n");</p><p> printf ("\t\t ~(*^__^*)~ \n\n");</p><p> printf ("\t\t\t 用 戶 登 錄\n\n");</p><p> for(k=0;k!=3;)
38、 //打開(kāi)文件并判斷</p><p><b> {</b></p><p> printf("\t\t\t\t 用戶名:"); //打印用戶名</p><p>
39、 gets(person);</p><p> part1=strcmp(person,name);</p><p> printf("\t\t\t\t 密碼:"); //打印密碼</p><p> for(i=0;i<5;i++) <
40、/p><p><b> { </b></p><p> c[i]=getch(); </p><p> printf("*"); </p><p><b> } </b></p><p><b> gets(c);
41、</b></p><p> part2=strcmp(c,password);</p><p> if(part1==0 && part2==0)</p><p><b> {</b></p><p> printf("\t\t\t\t 登陸成功!\n\n");
42、</p><p><b> menu();</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {&
43、lt;/b></p><p> printf ("\t\t\t 用戶名或密碼錯(cuò)誤!\n\n");</p><p> printf ("\t\t\t 請(qǐng)注意:您還剩%d次機(jī)會(huì)!\n\n",2-k);</p><p><b> k++;</b></p><p
44、><b> }</b></p><p><b> }</b></p><p><b> if (k=3)</b></p><p> printf ("對(duì)不起,由于您輸入的用戶名或密碼3次有誤,已被強(qiáng)制退出。\n");</p><p><b
45、> }</b></p><p> void input() //打印模塊程序</p><p><b> {</b></p><p><b> int y;</b></p><p> pri
46、ntf("請(qǐng)依次輸入航班信息:\n"); //打印提示信息</p><p> printf("完成輸入信息請(qǐng)鍵入w以回車(chē)鍵結(jié)束\n"); </p><p> printf("-----------------------------------------------------------
47、---------------\n");</p><p> for(i=0;i<N;i++)</p><p><b> {</b></p><p> printf("請(qǐng)輸入航班號(hào):\n"); </p><p> scanf("%d",&s[i].f
48、lightno); //讀取航班號(hào)</p><p> printf("請(qǐng)輸入起始站:\n");</p><p> scanf("%s",s[i].start); //讀取起始站</p><p> printf("請(qǐng)輸入終點(diǎn)站:\n");<
49、;/p><p> scanf("%s",s[i].end); //讀取終點(diǎn)站</p><p> printf("請(qǐng)輸入時(shí)間:\n");</p><p> scanf("%s",s[i].day); //讀取時(shí)間</p>
50、<p> printf("請(qǐng)輸入預(yù)售票總數(shù):\n");</p><p> scanf("%d",&s[i].totalticket); //讀取預(yù)售票數(shù) </p><p> printf("請(qǐng)輸入已售票總數(shù):\n",m);</p><p> scanf(&
51、quot;%d",&s[i].sellticket); //讀取已售票總數(shù)</p><p><b> m++; </b></p><p> printf("第%d個(gè)信息已經(jīng)輸完是否繼續(xù)?按任意數(shù)字鍵繼續(xù),按0結(jié)束",m);</p><p> scanf("%d",&
52、amp;y);</p><p><b> if(y==0)</b></p><p><b> {</b></p><p> save(); //將結(jié)構(gòu)體信息存盤(pán)</p><p> print();
53、 //輸出輸入的航班信息</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void
54、save() //保存模塊程序</p><p><b> {</b></p><p> FILE *fp,*fp1; //定義文件指針</p><p> if((fp=fopen("
55、;chen.dat","wb"))==NULL) //打開(kāi)文件并判斷是否出錯(cuò) </p><p><b> {</b></p><p> printf("創(chuàng)建文件失敗!\n\n"); //打印出錯(cuò)提示</p><p> getchar();</p&g
56、t;<p><b> return;</b></p><p><b> }</b></p><p> if((fp1=fopen("hao.dat","wb"))==NULL) //打開(kāi)文件并判斷是否出錯(cuò) </p><p><b> {<
57、/b></p><p> printf("創(chuàng)建文件失敗!\n\n"); //打印出錯(cuò)提示</p><p> getchar();</p><p><b> return;</b></p><p><b> }</b></p>
58、<p> for(i=0;i<m;i++)</p><p> if(fwrite(&s[i],sizeof(struct flight),1,fp)==0) //向文件寫(xiě)入數(shù)據(jù),并判斷是否出錯(cuò)</p><p> printf("向文件輸入數(shù)據(jù)失敗!\n\n");</p><p> fprintf(fp1,&qu
59、ot;%d",m);</p><p> fclose(fp); //關(guān)閉文件</p><p> fclose(fp1); //關(guān)閉文件</p><p><b> }</b></p
60、><p> void read() //從文件讀取信息模塊</p><p><b> {</b></p><p> FILE *fp,*fp1; //定義文件指針</p><p&g
61、t; if((fp=fopen("chen.dat","rb"))==NULL) //打開(kāi)文件,并判斷是否出錯(cuò)</p><p><b> {</b></p><p> printf("出錯(cuò),請(qǐng)檢查文件是否存在,按任意鍵返回住菜單");//打印出錯(cuò)提示</p><p> get
62、char();</p><p><b> }</b></p><p> if((fp1=fopen("hao.dat","rb"))==NULL) //打開(kāi)文件并判斷是否出錯(cuò) </p><p><b> {</b></p><p> printf
63、("創(chuàng)建文件失敗!\n\n"); //打印出錯(cuò)提示</p><p> getchar();</p><p><b> return;</b></p><p><b> }</b></p><p> fscanf(fp1,"%d&q
64、uot;,&m);</p><p> fclose(fp1); //關(guān)閉文件</p><p> for(i=0;i<m;i++) </p><p><b> { </b></p><p> fread(&s[i],
65、sizeof(flight),1,fp); //從文件中讀取信息</p><p><b> }</b></p><p> fclose(fp); //關(guān)閉文件</p><p><b> }</b></p>&l
66、t;p> void print() //打印模塊</p><p><b> {</b></p><p> char w[10];</p><p> read();
67、 //調(diào)用讀取文件函數(shù)</p><p> printf("航班號(hào) 起始站 終點(diǎn)站 時(shí)間 預(yù)售票總數(shù) 已售票總數(shù)\n");</p><p> for(i=0;i<m;i++)</p><p><b> {</b></p><p>
68、 printf(PRINT); //打印信息</p><p><b> }</b></p><p> printf("請(qǐng)按任意鍵回車(chē)鍵結(jié)束返回上層菜單以:\n");</p><p> scanf("%s",w);</p>
69、;<p><b> }</b></p><p> void search() //查詢模塊</p><p><b> {</b></p><p> char startname[10];</p>&l
70、t;p> char endname[10];</p><p> char day[10];</p><p> char p[10];</p><p><b> int n,no;</b></p><p><b> do</b></p><p><b>
71、; {</b></p><p> printf("請(qǐng)選擇查詢方式:\n"); //打印查詢方式菜單</p><p> printf("1.按航班號(hào)查詢\n");</p><p> printf("2.按起點(diǎn)站查詢\n");</p><p&g
72、t; printf("3.按終點(diǎn)站查詢\n");</p><p> printf("4.按航線查詢\n");</p><p> printf("5.按飛行時(shí)間查詢\n");</p><p> printf("0.返回\n");</p><p> prin
73、tf("請(qǐng)?jiān)?-5中選擇:\n");</p><p> printf("按其他鍵以回車(chē)鍵結(jié)束返回主菜單:\n");</p><p> scanf("%d",&n); //讀取查找方式</p><p><b> if(n==
74、0)</b></p><p><b> break;</b></p><p><b> switch(n)</b></p><p><b> {</b></p><p><b> case 1:</b></p><p
75、> printf("請(qǐng)輸入航班號(hào):\n");</p><p> scanf("%d",&no); //航班號(hào)</p><p><b> break;</b></p><p><b> case 2:</b>&l
76、t;/p><p> printf("請(qǐng)輸入起點(diǎn)站名稱:\n");</p><p> scanf("%s",&startname);</p><p><b> break;</b></p><p><b> case 3:</b></p>
77、<p> printf("請(qǐng)輸入終點(diǎn)站名稱:\n");</p><p> scanf("%s",endname); //讀取終點(diǎn)站</p><p><b> break;</b></p><p><b> case 4:</b&
78、gt;</p><p> printf("請(qǐng)輸入起始站名稱:\n");</p><p> scanf("%s",startname); //讀取起始站</p><p> printf("請(qǐng)輸入終點(diǎn)站名稱:\n");</p><p> sca
79、nf("%s",endname); //終點(diǎn)站</p><p><b> break; </b></p><p><b> case 5:</b></p><p> printf("請(qǐng)輸入飛行時(shí)間:\n");</p>&l
80、t;p> scanf("%s",&day);</p><p><b> break;</b></p><p><b> }</b></p><p> read(); //調(diào)用讀取函數(shù)</p>
81、<p> for(i=0;i<m;i++)</p><p><b> {</b></p><p> if(strcmp(s[i].end,startname)==0||strcmp(s[i].end,endname)==0)//按終點(diǎn)站起始站判斷輸出條件</p><p><b> {</b><
82、;/p><p> printf("\n查詢航班信息成功!\n");</p><p> printf("航班號(hào) 起始站 終點(diǎn)站 時(shí)間 預(yù)售票總數(shù) 已售票總數(shù)\n");</p><p> printf(PRINT);
83、 //打印信息</p><p><b> break;</b></p><p><b> }</b></p><p> if(s[i].flightno==no) //按航班號(hào)判斷輸出條件</p><p><b> { </b></
84、p><p> printf("\n查詢航班信息成功!\n");</p><p> printf("航班號(hào) 起始站 終點(diǎn)站 時(shí)間 預(yù)售票總數(shù) 已售票總數(shù)\n");</p><p> printf(PRINT);
85、 //打印信息</p><p><b> break;</b></p><p><b> } </b></p><p> if(strcmp(s[i].day,day)==0)</p><p><b> {</b></p><p> pri
86、ntf("\n查詢航班信息成功!");</p><p> printf("\n航班號(hào) 起始站 終點(diǎn)站 時(shí)間 剩余機(jī)票數(shù) 預(yù)售機(jī)票數(shù)\n");</p><p> printf(PRINT);//打印信息</p><p><b> break;
87、</b></p><p><b> }</b></p><p><b> }</b></p><p> no=0; //將航班號(hào)賦值為0</p><p> printf("沒(méi)有您需要的信息
88、或查找完畢:\n\n"</p><p> "是否繼續(xù)查找?請(qǐng)鍵入yes或no以回車(chē)鍵結(jié)束\n");</p><p> scanf("%s",p);</p><p> }while(strcmp(p,"yes")==0); //判斷結(jié)束<
89、/p><p><b> }</b></p><p> void booking() //訂票模塊</p><p><b> {</b></p><p><b> int n;</b><
90、;/p><p> char f[10];</p><p><b> do</b></p><p><b> {</b></p><p> search(); //調(diào)用查詢模塊</p><p> p
91、rintf("請(qǐng)輸入您要訂的機(jī)票數(shù)以回車(chē)鍵結(jié)束:\n");</p><p> scanf("%d",&n); //讀取所訂機(jī)票數(shù)</p><p><b> if(n<0)</b></p><p><b> {</
92、b></p><p> printf("請(qǐng)輸入有效的機(jī)票數(shù)!\n"); //判斷機(jī)票數(shù)是否出錯(cuò)</p><p><b> break;</b></p><p><b> }</b></p><p> if(s[i].totalticket!=0&&a
93、mp;s[i].totalticket>=n) //判斷是否出錯(cuò)</p><p><b> {</b></p><p> s[i].totalticket=s[i].totalticket-n;</p><p> s[i].sellticket=s[i].sellticket+n;</p><p> sa
94、ve(); //調(diào)用保存函數(shù)</p><p> printf("訂票成功!\n\n");</p><p><b> break;</b></p><p><b> }</b></p><p> if(s
95、[i].totalticket<n) //判斷是否出錯(cuò)</p><p><b> {</b></p><p> printf("請(qǐng)輸入有效的機(jī)票數(shù):\n");</p><p><b> break; </b></p><p&
96、gt;<b> }</b></p><p> printf("是否繼續(xù)? 請(qǐng)輸入yes或no以回車(chē)鍵結(jié)束:\n"); //判斷是否繼續(xù)訂票</p><p> scanf("%s",f);</p><p> }while(!strcmp(f,"yes"));
97、 //判斷結(jié)束</p><p><b> }</b></p><p> void back() //退票模塊</p><p><b> {</b></p><p>
98、<b> int n;</b></p><p> char f[10];</p><p><b> do</b></p><p><b> { </b></p><p> search(); /
99、/調(diào)用查詢模塊</p><p> printf("請(qǐng)輸入您要退的機(jī)票數(shù)目:\n");</p><p> scanf("%d",&n); //輸入所退票數(shù)</p><p> if(n<0)
100、 //判斷票數(shù)是否有效</p><p> printf("請(qǐng)輸入有效的機(jī)票數(shù)!\n");</p><p> s[i].totalticket=s[i].totalticket+n;</p><p> s[i].sellticket=s[i].sellticket-n;</p><p> save();
101、 //調(diào)用保存模塊</p><p> printf("退票成功!\n\n");</p><p> printf("是否繼續(xù)? 請(qǐng)鍵入yes或no以回車(chē)鍵結(jié)束:\n\n");//判斷是否繼續(xù)退票</p><p> scanf("%s&quo
102、t;,f);</p><p> }while(!strcmp(f,"yes")); //判斷并跳出循環(huán)</p><p> getchar();</p><p><b> }</b></p><p> void correct()
103、 //修改模塊</p><p><b> {</b></p><p> struct cor //定義結(jié)構(gòu)體 </p><p><b> { </b></p>
104、<p><b> int no;</b></p><p> char startname[10];</p><p> char endname[10];</p><p> char day[10];</p><p> int totalticket;</p><p> i
105、nt sellticket;</p><p><b> }x[1];</b></p><p> char j[10];</p><p><b> int n;</b></p><p><b> {</b></p><p> read();
106、 //調(diào)用讀取模塊</p><p><b> do</b></p><p><b> {</b></p><p> printf( "請(qǐng)選擇修改方式:\n");</p><p> printf( &q
107、uot;*1,按航班號(hào)修改:\n");</p><p> printf( "*2,按航線修改: \n");</p><p> printf("請(qǐng)?jiān)?---2中修改以回車(chē)鍵結(jié)束:\n");</p><p> scanf("%d",&n);
108、 //讀取修改方式</p><p><b> switch(n)</b></p><p><b> {</b></p><p> case 1:printf("請(qǐng)輸入航班號(hào):\n");</p><p> scanf("%d",&x[0].
109、no); //讀取航班號(hào)</p><p><b> break;</b></p><p> case 2:printf("請(qǐng)輸入起始站:\n");</p><p> scanf("%s",x[0].startname); //讀取起始站&l
110、t;/p><p> printf("請(qǐng)輸入終點(diǎn)站:\n");</p><p> scanf("%s",x[0].endname); //讀取終點(diǎn)站</p><p><b> break;</b></p><p><b> }</b&g
111、t;</p><p> for(i=0;i<m;i++)</p><p><b> { </b></p><p> if(strcmp(s[i].end,x[0].startname)==0&&strcmp(s[i].end,x[0].endname)==0) //判斷輸出條件</p><
112、;p><b> {</b></p><p> printf("航班號(hào) 起始站 終點(diǎn)站 時(shí)間 預(yù)售票總數(shù) 已售票總數(shù)\n");</p><p> printf(PRINT);</p><p><b> break;</b></
113、p><p><b> }</b></p><p> if(s[i].flightno==x[0].no) //判斷輸出條件</p><p><b> { </b></p><p> printf("航班號(hào) 起始站 終點(diǎn)站 時(shí)間
114、 預(yù)售票總數(shù) 已售票總數(shù)\n");</p><p> printf(PRINT);</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p
115、> x[0].no=0; //將結(jié)構(gòu)體中的號(hào)為零</p><p> printf("請(qǐng)輸入新航班號(hào)、起始站、終點(diǎn)站、時(shí)間(星期幾)、預(yù)售票總數(shù)、已售票總數(shù):\n");</p><p> scanf("%d%s%s%s%d%d",&x[0].no,x[0].startname,x[
116、0].endname,x[0].day,&x[0].totalticket,&x[0].sellticket); //定義輸入格式</p><p> s[i].flightno=x[0].no; //替換航班號(hào)</p><p> strcpy(s[i].start,x[0].startname); /
117、/替換其始站</p><p> strcpy(s[i].end,x[0].endname); //替換終點(diǎn)站</p><p> strcpy(s[i].day,x[0].day); //替換時(shí)間</p><p> s[i].totalticket=x[0].totalticket; /
118、/替換預(yù)售票總數(shù)</p><p> s[i].sellticket=x[0].sellticket; //替換已售票總數(shù)</p><p> save(); //調(diào)用保存模塊</p><p> printf("是否繼續(xù)?請(qǐng)鍵入yes或no以回車(chē)鍵結(jié)束:\n\n"
119、;);</p><p> scanf("%s",j);</p><p> }while(strcmp(j,"yes")==0); //判斷結(jié)束</p><p><b> }</b></p><p><b> }</
120、b></p><p><b> 6、個(gè)人體會(huì)</b></p><p> 歷經(jīng)整整一個(gè)星期的課程設(shè)計(jì)終于結(jié)束了,在這一個(gè)星期內(nèi),我們小組三個(gè)同學(xué)從最開(kāi)始的空白到現(xiàn)在的程序運(yùn)行成功。整個(gè)過(guò)程中,我領(lǐng)會(huì)了很多,也學(xué)到了很多,我了解到自己哪些知識(shí)點(diǎn)掌握的比較好,哪些知識(shí)點(diǎn)運(yùn)用的還不夠熟練。通過(guò)這次課程設(shè)計(jì)使我明白了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的
121、,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才是真正的知識(shí),才能提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程遇到了各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固,通過(guò)這次課程設(shè)計(jì),把以前所學(xué)過(guò)的大部分知識(shí)重新溫故,鞏固了所學(xué)的知識(shí)。</p><p> 整個(gè)過(guò)程中,我們對(duì)程序輸入、瀏覽、功能排版、菜單顯示等各個(gè)功能進(jìn)行了編寫(xiě),用了很多
122、方法找可用的資料 ,將找到的資料進(jìn)行整合嵌套。由于對(duì)程序的不熟悉和知識(shí)的局限性,剛開(kāi)始將各功能整合時(shí)錯(cuò)誤百出,各種修改最后也運(yùn)行不了,當(dāng)時(shí)的心情十分沉悶,總會(huì)想到要放棄,經(jīng)過(guò)同學(xué)的鼓勵(lì)和幫助,最終我們小組的程序終于運(yùn)行成功。</p><p> 此次程序能運(yùn)行成功的很大原因是小組同學(xué)的合作,大家分工合作,效率很快,準(zhǔn)確率也很高。所以我覺(jué)得此次程序設(shè)計(jì)很成功,在能力、知識(shí)、復(fù)習(xí)等各個(gè)方面都有涉及,收獲頗豐。<
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)—飛機(jī)訂票系統(tǒng)
- 面向?qū)ο蟪绦蛟O(shè)計(jì)課程設(shè)計(jì)--火車(chē)訂票系統(tǒng)
- 《c++程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告--訂票系統(tǒng)
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)報(bào)告
- c語(yǔ)言課程設(shè)計(jì)——飛機(jī)訂票系統(tǒng)
- c課程設(shè)計(jì)報(bào)告飛機(jī)訂票系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)---飛機(jī)訂票系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)--飛機(jī)訂票系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)——飛機(jī)訂票系統(tǒng)
- c語(yǔ)言飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)——飛機(jī)訂票系統(tǒng)
- 飛機(jī)訂票系統(tǒng)c語(yǔ)言課程設(shè)計(jì)
- 軟件課程設(shè)計(jì)--c語(yǔ)言程序之飛機(jī)票訂票系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告--飛機(jī)訂票系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---飛機(jī)訂票系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)報(bào)告飛機(jī)訂票系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---飛機(jī)訂票系統(tǒng)
評(píng)論
0/150
提交評(píng)論