這是幫我同學(xué)寫的一個(gè)C++作業(yè),說(shuō)實(shí)話好久沒(méi)寫過(guò)C++都有些生疏了。但他們好像還沒(méi)學(xué)面向?qū)ο缶幊?,所以只能是?jiǎn)單的結(jié)構(gòu)體和輸入輸出的邏輯。
題目要求:
編寫一個(gè)航空訂票程序:
假設(shè)一等艙5個(gè)座位,編號(hào)為1~5,經(jīng)濟(jì)艙20個(gè)座位,編號(hào)為1~20
具體要求如下:
當(dāng)程序開(kāi)始時(shí),提示輸入乘客姓名,一個(gè)名字只能訂一個(gè)座位,如果該名字已經(jīng)訂過(guò)座位了,則提示該乘客座位已定及座位號(hào),否則提示輸入艙位類型;
當(dāng)輸入艙位類型后,如果該艙位已全部訂出,則提示此艙全部訂完,重新選擇艙位類型;否則顯示可以選擇的座位號(hào),注意已經(jīng)被訂出的座位號(hào)不能出現(xiàn),提示輸入座位號(hào);
艙位類型:只能輸入”F”或”E”,一等艙為F,經(jīng)濟(jì)艙為E,如果輸入其它字符則提示輸入無(wú)效。
座位號(hào):只能輸入前面列出可以選擇的座位號(hào),若輸入其它則提示輸入無(wú)效。
程序可以為多個(gè)乘客訂票,直到輸入名字為”.”;
最后程序按照艙位類型與座位號(hào)排序打印出所有訂票信息(座位號(hào)及對(duì)應(yīng)乘客姓名)
最終實(shí)現(xiàn)效果:
1、變量
不過(guò)既然提到了結(jié)構(gòu)體用來(lái)存儲(chǔ)票的信息(其實(shí)這就是面向?qū)ο笏枷氲脑缙冢?。?lián)系實(shí)際,一個(gè)結(jié)構(gòu)體代表一個(gè)事物,結(jié)構(gòu)體中的字段代表這個(gè)事物的屬性;這樣的話,我們可以提取出兩個(gè)結(jié)構(gòu)體:座位Seat和票Ticket,由于題目給定總共25個(gè)座位,意味著25張票,則將它們聲明成全局變量。
//座位,那么座位有3個(gè)基本屬性:座位類型(F/E),座位編號(hào),座位預(yù)定狀態(tài)(是否已經(jīng)被預(yù)定) struct Seat{ char type; int number; bool isReservation; }seats[25]; //票,票有兩個(gè)屬性,即票需要表明:誰(shuí)預(yù)定了哪個(gè)座位,第一個(gè)Seat就是我們前面定義的那個(gè)結(jié)構(gòu)體。 struct Ticket{ Seat seat; string passenger_name; }tickets[25];
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。