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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課設(shè)報告-資料下載頁

2025-08-24 11:39本頁面

【導(dǎo)讀】數(shù)據(jù)結(jié)構(gòu)課程設(shè)計實(shí)驗(yàn)報告。班級學(xué)號指導(dǎo)教師。設(shè)計時間2020年11月

  

【正文】 +i+1)。 infotkt_sur=amount。//該航線的余票量應(yīng)減掉該客戶的訂票量 printf(\n 祝您乘坐愉快! \n)。 } else //若滿員或余票額少于訂票額,詢問客戶是否需要進(jìn)行排隊等候 { printf( **************************************************************\n)。 printf(\n 提示:票已售完。您可以有以下選擇: \n)。 printf( \n)。 printf( \n)。 printf( \n)。 printf(請輸入選擇( 13): \n)。 do { scanf(%d,amp。choice)。 }while(choice1 || choice 3)。 if(choice == 1) { printf(\n 請輸入您的姓名(排隊訂票客戶) :)。 scanf(%s,name)。 infowait=appendqueue(infowait,name,amount)。//在排隊等候乘員名單域中添加客戶信息 printf(\n 注冊成功 !\n)。 } else { if(choice == 2) { strcpy(name,recordter_name)。 int j=0,k=0。 char c。 while(jMAXSIZE) { if(!strcmp(name,operateter_name) amp。amp。 operateair_num != recordair_num) { 26 printf(終點(diǎn)站名 \t 航班號 \t 飛機(jī)號 \t 飛行日期 \t 乘員定額 \t 余票量 \n)。 break。 } operate++。 j++。 } operate。 j。 while(jMAXSIZE) { if(!strcmp(name,operateter_name)) { if(operateair_num != recordair_num) { display(operate)。 k++。 } } operate++。 j++。 } if(k==0) { printf(sorry。沒有其他路線可供您選擇了,歡迎您以后再次訂購! )。 } else { printf(到達(dá)您想要去的目的地的其他航線情況如上表所示。\n 您想要改訂購其中的航線嗎? Y/N\n)。 c=getch()。 printf(%c,c)。 printf(\n)。 if(c==39。y39。||c==39。Y39。) { order()。 } else printf(\n 歡迎您以后再次訂購! \n)。 } } else 27 { printf(\n 歡迎您以后再次訂購! \n)。 } } } } (5)退票模塊 void return_tkt()//退票模塊 { struct airline *info。 qnode *t,*back,*f,*r。 int grade。 linklist *p1,*p2,*head。 char cusname[10]。 if(!(info=find())) return。//調(diào)用查詢函數(shù),根據(jù)客戶提供的航線進(jìn)行搜索 head=infoorder。 p1=head。 printf(請輸入你的姓名(退票客戶) :)。 scanf(%s,cusname)。 while(p1!=NULL) {//根據(jù)客戶提供的姓名到訂票客戶名單 域進(jìn)行查詢 if(!strcmp(cusname,p1name)) break。 p2=p1。p1=p1next。 } if(p1==NULL) { printf(對不起,你沒有訂過票 !\n)。return。}//若未找到,退出本模塊 else {//若信息查詢成功,刪除訂票客戶名單域中的信息 if(p1==head) head=p1next。 else p2next=p1next。 infotkt_sur+=p1ord_amt。 grade=p1grade。 printf(%s 成功退票! \n,p1name)。 free(p1)。 } infoorder=head。//重新將航線名單域指向訂票單鏈表的頭指針 28 f=(infowait).front。//f 指向排隊等候名單隊列的頭結(jié)點(diǎn) r=(infowait).rear。//r 指向排隊等候名單隊列的尾結(jié)點(diǎn) t=f。//t 為當(dāng)前滿點(diǎn)條件 的排隊候補(bǔ)名單域 while(t) { if(infotkt_sur=inforeq_amt) {//若滿足條件者為頭結(jié)點(diǎn) int i。 info=tnext。 printf(%s 訂票成功! \n,tname)。 for(i=0。itreq_amt。i++)//輸出座位號 printf(%s 的座位號是 :%d\n,tname,(infotkt_sur)i)。 infotkt_sur=treq_amt。 infoorder=insertlink(infoorder,treq_amt,tname,grade)。// 插入到訂票客戶名單鏈表中 free(t)。 break。 } back=t。 t=tnext。 if((infotkt_sur)=(treq_amt)amp。amp。t!=NULL)//若滿足條件者不為頭結(jié)點(diǎn) { int i。 backnext=tnext。 printf(%s 訂票成功! \n,tname)。 for(i=0。itreq_amt。i++)//輸出座位號 printf(%s39。s seat number is:%d\n,tname,(infotkt_sur)i)。 infotkt_sur=treq_amt。 infoorder=insertlink(infoorder,treq_amt,tname,grade)。// 插入到訂票客戶名單鏈表中 free(t)。 break。 } if(f==r) break。 } } (6) 根據(jù)剩余票數(shù)排序 void sort_tkt() {//按剩余票數(shù)排序 int j。 struct airline t,*info,*p,*q。 p=info=air。 29 for(p=info。(p+1)tkt_sur。p++) for(q=p+1。qtkt_sur。q++) { if(ptkt_surqtkt_sur) { t=*p。 *p=*q。 *q=t。 } } printf(終點(diǎn)站名 \t 航班號 \t 飛機(jī)號 \t 飛行日期 \t 乘員定額 \t 余票量 \n)。 for(j=0。jMAXSIZE。j++) { display(info)。 info++。 } } (7) 增加訂票乘員名單域的客戶信息 linklist *insertlink(linklist *head,int amount,char name[],int grade)//增加訂票乘員名單域的客戶信息 { linklist *p1,*new1。 p1=head。 new1=(linklist *)malloc(sizeof(linklist))。 if(!new1) {printf(\nOut of memory!!\n)。return NULL。} strcpy(new1name,name)。 new1ord_amt=amount。 new1grade=grade。 new1next=NULL。 if(head==NULL)//若原無訂票客戶信息 { head=new1。 new1next=NULL。 } else head=new1。 new1next=p1。 return head。 } (8) 打印每條航線的基本信息 void display(struct airline *info)//打印每條航線的基本信息 { printf(%8s\t%3s\t%s\t%4s\t\t%3d\t%10d\n,infoter_name,infoair_num,i 30 nfoplane_num,infodate,infotkt_amt,infotkt_sur)。 } 四、 調(diào)試分析 本程序 進(jìn)行了劃分模塊化,主要分為查詢,訂票,退票三大模塊,思路清晰明了,可以方便地進(jìn)行調(diào)試程序,出了錯誤也能及時尋找到原因。 在本程序中,比較復(fù)雜的一處是訂票模塊。在訂票時,如果出現(xiàn)該航班已經(jīng)滿員或者客戶所定票的總數(shù)大于剩余票數(shù),此時顧客可能會希望知道其他到達(dá)該目的地的航班有哪些。這樣如果有合適的選擇,客戶就可以選擇其他來滿足自己的出行要求。所以我增加了這部分的功能。根據(jù)客戶在訂票時提供的航班號找到對應(yīng)的終點(diǎn)站,然后系統(tǒng)在航班表中查找有沒有其他到達(dá)此終點(diǎn)站的航班。如果沒有就告訴客戶沒有其他選擇了。如果有,就將其他的航班信息打印出來,由顧客根據(jù)他的實(shí)際情況來選擇合適的航班,再進(jìn)行一次訂票業(yè)務(wù)。 本程序的數(shù)據(jù)結(jié)構(gòu)設(shè)計也比較合理,利用隊 列先進(jìn)先出的性質(zhì),將排隊等候的顧客用對列連起來。這樣在有多余的票時,系統(tǒng)就可以根據(jù)先后吮吸將票賣給最先等待的顧客。 五、 用戶手冊 本程序的操作環(huán)境是 windows 下的 。 功能菜單在主頁面: 客戶通過輸入 17 來選擇不同的功能。 31 六、 測試結(jié)果 客戶可以通過輸入功能號來選擇不同的功能。 瀏覽航線信息: 查詢航線: 32 進(jìn)行訂票: 33 34 退票業(yè)務(wù): 35 實(shí)驗(yàn)三 模擬旅館管理系統(tǒng)的一個功能 ——床位的分配 與回收 一、 需求分析 問題描述 某旅館有 n 個等級的房間,第 I 等級有 ai 個房間,每個等級有 bi 個床位( 1≤ i≤ n)。試模擬旅館管理系統(tǒng)中床位分配和回收的功能,設(shè)計能為單個旅客分配床位,在其離店便回收床位(供下次分配)的算法。 基本要求 (1) 輸入數(shù)據(jù) 分配時,輸入旅客姓名、年齡、性別、到達(dá)日期和所需房間等級。 回收時,輸入房間等級、房間號和床位號。 (2) 輸出數(shù)據(jù) 分配成功時打印旅客姓名、年齡、到達(dá)日期、房間等級、房間號碼和床位號碼。 分配不成功時,如所有等級均無床位,則打印“客滿”信息;如旅客需要的等級均無空床位,則打印“是否愿意更換等級 ?”的詢問信息。若旅客愿意更換,則重新輸入有關(guān)信息,再進(jìn)行分配,否則分配工作結(jié)束。 (3) 結(jié)賬管理 在旅客離開時計算房費(fèi),并打印賬單,賬單格式自行設(shè)計,要求信息齊全、清晰。 (4) 對旅客信息和房間信息以及收費(fèi)標(biāo)準(zhǔn)采用文件的形式存儲也可以在程序中初始化。 二、 概要設(shè)計 程序設(shè)計組成框圖 36
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1