欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++實(shí)現(xiàn)旅館住宿管理系統(tǒng)

 更新時(shí)間:2022年05月27日 16:23:39   作者:萬事勝意  
這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)旅館住宿管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C++實(shí)現(xiàn)旅館住宿管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

一、課程設(shè)計(jì)要實(shí)現(xiàn)的目的

1.預(yù)定房間:輸入顧客的姓名和身份證號(hào)碼,然后有單人間/天/100元、雙人間/天/200元、標(biāo)準(zhǔn)間/天/300元 三種房間類型可以選擇。最后=輸入預(yù)定天數(shù),從而系統(tǒng)計(jì)算出房費(fèi)與預(yù)定的房間號(hào)。
2.入住功能:分該顧客已訂和未訂房間的兩種情況。對(duì)于已經(jīng)預(yù)定的顧客,通過輸入姓名與身份證號(hào)碼從而入住預(yù)定的房間;對(duì)于沒有預(yù)定的顧客,執(zhí)行入住功能,過程與預(yù)定房間類似。
3.退房功能:輸入要退房的顧客姓名與身份證號(hào)碼來查找該顧客,然后輸入該顧客實(shí)際所住的天數(shù),計(jì)算出實(shí)際應(yīng)付的房費(fèi)與多支付或少支付的費(fèi)用。
4.查詢功能:分為房間信息查詢與顧客了信息查詢兩種查詢方式。
   房間信息查詢可以顯示出空房間、已預(yù)定房間和已入住房間的房間號(hào)和房間數(shù)量。
   顧客信息查詢分為按姓名或按身份證號(hào)查找。兩種方式都是查詢出該顧客的預(yù)付費(fèi)用和房間信息。
5.退出功能:退出系統(tǒng)。

二、總體設(shè)計(jì)

一個(gè)旅館管理系統(tǒng),必然涉及到房間對(duì)象,顧客對(duì)象等實(shí)體。這個(gè)系統(tǒng)初始化了60個(gè)房間,其中房間分三個(gè)等級(jí),每個(gè)等級(jí)的價(jià)格不一樣,可以通過房間編號(hào)得到房間的等級(jí)。然后就是房間的分配問題,當(dāng)有顧客要求預(yù)定或入住時(shí),系統(tǒng)能夠根據(jù)用戶要求入住的等級(jí)到相應(yīng)等級(jí)的房間中去查找一個(gè)還沒有預(yù)定的房間和一個(gè)沒有入住的空閑房間。
當(dāng)啟動(dòng)程序后,從Main函數(shù)開始運(yùn)行,程序首先調(diào)用initial_room函數(shù)初始化60個(gè)房間的信息,包括房間編號(hào),房間等級(jí),房間價(jià)格,房間狀態(tài)。其中房間編號(hào)和房間等級(jí)有直接聯(lián)系,只要知道了房間編號(hào)就可以通過計(jì)算得到該房間的等級(jí),房間狀態(tài)初始化時(shí)都等于0,表示該房間既沒有被預(yù)定,也沒有被入住,為空房間。然后調(diào)用welcome函數(shù),考慮到作為一個(gè)賓館管理系統(tǒng)的安全性,在本函數(shù)中要求只有通過輸入了正確的用戶名和密碼才能操作系統(tǒng)。此處賬號(hào)密碼都是123。當(dāng)通過登陸認(rèn)證后,就進(jìn)入賓館管理系統(tǒng)了,在這里,系統(tǒng)給操作者顯示一個(gè)操作菜單:1.預(yù)定  2.入住  3.退房  4.查詢  5.退出,選擇不同的數(shù)字時(shí)就實(shí)現(xiàn)不同的功能。

三、詳細(xì)設(shè)計(jì)過程

1. 預(yù)定:作為一個(gè)旅館管理系統(tǒng),顧客可以提前進(jìn)行房間的預(yù)定,操作者能根據(jù)用戶的需求查詢到適合顧客的房間。在這個(gè)系統(tǒng)中,這個(gè)功能是在Book_Room函數(shù)中實(shí)現(xiàn)的。首先,構(gòu)造一個(gè)顧客對(duì)象,輸入顧客的信息,然后設(shè)置該顧客預(yù)定客房的天數(shù),設(shè)置顧客預(yù)定客房類型,根據(jù)用戶需要的客放標(biāo)準(zhǔn)到相應(yīng)的類型客房去查找一個(gè)一個(gè)既沒有被預(yù)定也沒有入住的房間,然后把該房間對(duì)象結(jié)構(gòu)體的狀態(tài)修改為已預(yù)定狀態(tài),同時(shí)將顧客對(duì)象的預(yù)定房間號(hào)屬性和住房費(fèi)用計(jì)算出來并顯示到界面上,最后將住房顧客數(shù)加1。

2. 入?。哼@個(gè)功能是在go_in函數(shù)中實(shí)現(xiàn)的,程序首先判斷顧客是否訂房了,如果預(yù)定了房間,則要求輸入顧客姓名和身份證號(hào)碼,然后在所有的顧客中去查找此姓名和身份證號(hào)碼的顧客,如果匹配了就取得其房間號(hào),然后根據(jù)房間號(hào)計(jì)算出該房間的類型,再根據(jù)該顧客要求預(yù)定住房的天數(shù)和該房間類型的價(jià)格計(jì)算出該顧客要繳納的費(fèi)用,同時(shí)顯示到界面上,這時(shí)操作者對(duì)顧客進(jìn)行收費(fèi),同時(shí)將該住房的狀態(tài)修改為已入住狀態(tài)(State=2);如果顧客沒有先預(yù)定房間,在這里可以實(shí)現(xiàn)先查找空房再入住的功能,同預(yù)定房間功能一樣,先建立一個(gè)顧客對(duì)象,然后設(shè)置入住天數(shù),選擇住房類型,根據(jù)房間類型查詢到一個(gè)空房,同時(shí)修改該房間的狀態(tài)為已入住狀態(tài),計(jì)算房費(fèi)直接執(zhí)行收費(fèi),同時(shí)將顧客數(shù)加1。

3. 退房:此函數(shù)是再go_out函數(shù)中實(shí)現(xiàn)的。首先,輸入要退房的顧客的姓名和身份證號(hào)碼,再輸入該顧客的實(shí)際住的天數(shù),系統(tǒng)計(jì)算出顧客的費(fèi)用。用switch函數(shù)根據(jù)房間等級(jí)和所住天數(shù)來判斷是要給顧客退費(fèi)用還是顧客需要補(bǔ)交費(fèi)用。

4. 查詢:此功能在inquire函數(shù)中實(shí)現(xiàn)。信息查詢分為房間信息查詢和顧客信息查詢。對(duì)顧客信息查詢,有兩種方式:按姓名查詢;按身份證號(hào)查詢。?通過查詢可以得知每個(gè)房間的信息和每個(gè)顧客的房間信息與預(yù)付費(fèi)用。

四、課設(shè)實(shí)現(xiàn)

1.登陸

//登陸
void function::welcome() {
?? ?system("color 3E");
?? ?char name[4],pass[7];
?? ?cout<<"請(qǐng)輸入用戶名和密碼:"<<endl;
?? ?cin>>name;
?? ?cin>>pass;
?? ?while((strcmp(name,"123")!=0)||(strcmp(pass,"123")!=0)) {
?? ??? ?cout<<"用戶名或密碼輸入有誤,請(qǐng)重新輸入!"<<endl;
?? ??? ?cin>>name;
?? ??? ?cin>>pass;
?? ?}
?? ?cout<<endl;
?? ?cout<<endl;
?? ?cout<<" ? ? ? ? ? ? ? ? ? ? ---------------------------"<<endl;
?? ?cout<<" ? ? ? ? ? ? ? ? ? ? ?歡迎使用旅館住宿管理系統(tǒng)!"<<endl;
?? ?cout<<" ? ? ? ? ? ? ? ? ? ? ---------------------------"<<endl;
?? ?cout<<endl;
?? ?system("pause");
?? ?system("cls");
}

2.初始化房間

//初始化
void function::initial_room() {
?? ?int j;
?? ?int k=101;
?? ?for(j=0; j<20; j++) {
?? ??? ?room[j].number=k++;
?? ??? ?room[j].rad=1;
?? ??? ?room[j].price=100;
?? ??? ?room[j].state=0;
?? ?}
?? ?k=201;
?? ?for(j=20; j<40; j++) {
?? ??? ?room[j].number=k++;
?? ??? ?room[j].rad=2;
?? ??? ?room[j].price=200;
?? ??? ?room[j].state=0;
?? ?}
?? ?k=301;
?? ?for(j=40; j<60; j++) {
?? ??? ?room[j].number=k++;
?? ??? ?room[j].rad=3;
?? ??? ?room[j].price=300;
?? ??? ?room[j].state=0;
?? ?}
}
int main() {
?? ?char choice='1';
?? ?function m;
?? ?m.initial_room();?? ?//初始化60個(gè)房間
?? ?m.welcome();?? ?
?? ??? ??? ?//驗(yàn)證
?? ?while(choice=='1') {
?? ??? ?m.menu();//功能
?? ??? ?cout<<endl;
?? ??? ?cout<<"1. 繼續(xù)使用 ? 2. 退出 "<<endl;
?? ??? ?cin>>choice;
?? ??? ?cout<<endl;
?? ?}
}

3.訂房

//訂房
void function::book_room() {
?? ?customer[i]=new Customer;
?? ?int room_kind,day;
?? ?cout<<"請(qǐng)您選擇預(yù)定房間類型:\n";
?? ?cout<<"1.單人間/天/100元\n2.雙人間/天/200元\n3.標(biāo)準(zhǔn)間/天/300元"<<endl;
?? ?cin>>room_kind;
?? ?cout<<"請(qǐng)輸入預(yù)定天數(shù)"<<endl;
?? ?cin>>day;
?? ?customer[i]->set_day(day);
?? ?switch(room_kind) {
?? ??? ??? ?int n;
?? ??? ?case 1:
?? ??? ??? ?cout<<"住房費(fèi)用總共為: "<<day*100<<"元"<<endl;
?? ??? ??? ?for(n=0; n<20; n++) {?? ??? ??? ??? ??? ??? ??? ??? ?//從第一個(gè)級(jí)別的房間中查找一個(gè)空閑的房間
?? ??? ??? ??? ?if(room[n].state==0) {?? ??? ??? ??? ??? ??? ??? ?//state=0表示該住房沒有被預(yù)定的
?? ??? ??? ??? ??? ?cout<<"預(yù)定成功 ? 房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ?room[n].state=1;
?? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?break;
?? ??? ?case 2:
?? ??? ??? ?cout<<"住房費(fèi)用總共為: "<<day*200<<" 元"<<endl;
?? ??? ??? ?for(n=20; n<40; n++) {
?? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ?cout<<"預(yù)定成功 ? 房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ?room[n].state=1;
?? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?break;
?? ??? ?case 3: {
?? ??? ??? ?cout<<"住房費(fèi)用總共為: "<<day*300<<" 元"<<endl;
?? ??? ??? ?for(n=40; n<60; n++) {
?? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ?cout<<"預(yù)訂成功 ? 房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ?room[n].state=1;
?? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?break;
?? ??? ?}
?? ??? ?default:
?? ??? ??? ?cout<<"選擇有誤"<<endl;
?? ??? ??? ?break;
?? ?}
?? ?i++; ?//住房的顧客數(shù)加1
}

4.入住

//入住
void function::go_in() {
?? ?char name1[10],id1[19];
?? ?int q,prepaid;
?? ?cout<<"該顧客是否已訂房 (1. 已訂 ? 2. 沒訂) "<<endl;
?? ?cin>>q;
?? ?if(q==1) {
?? ??? ?cout<<"請(qǐng)輸入顧客的姓名:"<<endl;
?? ??? ?cin>>name1;
?? ??? ?cout<<"請(qǐng)輸入顧客的身份證號(hào)碼:"<<endl;
?? ??? ?cin>>id1;
?? ??? ?//i:顧客人數(shù)
?? ??? ?for(int j=0; j<=i; j++) {
?? ??? ??? ?if((strcmp(customer[j]->get_name(),name1)==0)&&(strcmp(customer[j]->get_ID(),id1)==0)) {
?? ??? ??? ??? ?int num=customer[j]->get_room_number();
?? ??? ??? ??? ?cout<<"顧客"<<name1<<"入住 ?房間號(hào)碼為: "<<num<<endl;
?? ??? ??? ??? ?switch(num/100) {
?? ??? ??? ??? ??? ?case 6:
?? ??? ??? ??? ??? ??? ?prepaid=customer[j]->get_day()*100;
?? ??? ??? ??? ??? ??? ?customer[j]->set_prepaid(prepaid);
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ??? ??? ?room[num%100-1].state=2; ? ? ? ? ? ? ? ? ?//修改房間狀態(tài)為入住狀態(tài)
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?case 7:
?? ??? ??? ??? ??? ??? ?prepaid=customer[j]->get_day()*200;
?? ??? ??? ??? ??? ??? ?customer[j]->set_prepaid(prepaid);
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ??? ??? ?room[19+num%100].state=2;
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?case 8:
?? ??? ??? ??? ??? ??? ?prepaid=customer[j]->get_day()*300;
?? ??? ??? ??? ??? ??? ?customer[j]->set_prepaid(prepaid);
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ??? ??? ?room[39+num%100].state=2;
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ?} else {
?? ??? ?customer[i]=new Customer;
?? ??? ?int roomkind;
?? ??? ?int day;
?? ??? ?cout<<"請(qǐng)輸入要預(yù)定的天數(shù):"<<endl;
?? ??? ?cout<<"1.單人間/天/100元\n2.雙人間/天/200元\n3.標(biāo)準(zhǔn)間/天/300元"<<endl;
?? ??? ?cin>>roomkind;
?? ??? ?cout<<"請(qǐng)輸入住宿天數(shù):"<<endl;
?? ??? ?cin>>day;
?? ??? ?customer[i]->set_day(day);
?? ??? ?switch(roomkind) {
?? ??? ??? ??? ?int n;
?? ??? ??? ?case 1:
?? ??? ??? ??? ?prepaid=day*100;
?? ??? ??? ??? ?customer[i]->set_prepaid(prepaid);
?? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ?for(n=0; n<20; n++) {
?? ??? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ??? ?cout<<"入住房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ??? ?room[n].state=2;
?? ??? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ??? ?case 2:
?? ??? ??? ??? ?prepaid=day*200;
?? ??? ??? ??? ?customer[i]->set_prepaid(prepaid);
?? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ?for(n=20; n<40; n++) {
?? ??? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ??? ?cout<<"入住房間號(hào)為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ??? ?room[n].state=2;
?? ??? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ??? ?case 3:
?? ??? ??? ??? ?prepaid=day*300;
?? ??? ??? ??? ?customer[i]->set_prepaid(prepaid);
?? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ?for(n=40; n<60; n++) {
?? ??? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ??? ?cout<<"入住房間號(hào)為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ??? ?room[n].state=2;
?? ??? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ?}
?? ??? ?i++;
?? ?}
}

5.退房

//退房
void function::go_out() {
?? ?char name2[10],id2[19];
?? ?int room_number;
?? ?int day;//多或少天數(shù)
?? ?cout<<"請(qǐng)輸入要退房的顧客姓名和身份證號(hào)碼:"<<endl;
?? ?cin>>name2;
?? ?cin>>id2;
?? ?cout<<"請(qǐng)輸入該顧客實(shí)際所住天數(shù):"<<endl;
?? ?int day2;
?? ?cin>>day2;
?? ?int j;
?? ?for(j=0; j<i; j++) {
?? ??? ?if((strcmp(customer[j]->get_name(),name2)==0)&&(strcmp(customer[j]->get_ID(),id2)==0)) {
?? ??? ??? ?room_number=customer[j]->get_room_number();
?? ??? ??? ?int w;
?? ??? ??? ?w=room_number/100;
?? ??? ??? ?int day1;
?? ??? ??? ?day1=customer[j]->get_day();
?? ??? ??? ?day=day1-day2;
?? ??? ??? ?switch(w) {
?? ??? ??? ??? ?case 1:
?? ??? ??? ??? ??? ?cout<<"顧客的房間號(hào)是"<<room_number<<" :為單人間,每天100元"<<endl;
?? ??? ??? ??? ??? ?cout<<"該顧客預(yù)付了房費(fèi) "<<customer[j]->get_prepaid()<<"元, 實(shí)際消費(fèi) "<<day2*100<<"元"<<endl;
?? ??? ??? ??? ??? ?cout<<endl;
?? ??? ??? ??? ??? ?if(day>0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)退給該顧客 "<<day*100<<" 元"<<endl;
?? ??? ??? ??? ??? ?if(day<0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)補(bǔ)收該顧客住房費(fèi) "<<-day*100<<" 元"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 2:
?? ??? ??? ??? ??? ?cout<<"顧客的房間號(hào)是"<<room_number<<" :為雙人間,每天200元"<<endl;
?? ??? ??? ??? ??? ?cout<<"該顧客預(yù)付了房費(fèi) "<<customer[j]->get_prepaid()<<"元, 實(shí)際消費(fèi) "<<day2*200<<"元"<<endl;
?? ??? ??? ??? ??? ?cout<<endl;
?? ??? ??? ??? ??? ?if(day>0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)退給該顧客 "<<day*200<<" 元"<<endl;
?? ??? ??? ??? ??? ?if(day<0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)補(bǔ)收該顧客住房費(fèi) "<<-day*200<<" 元"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 3:
?? ??? ??? ??? ??? ?cout<<"顧客的房間號(hào)是"<<room_number<<" ? :為標(biāo)準(zhǔn)間,每天300元"<<endl;
?? ??? ??? ??? ??? ?cout<<"該顧客預(yù)付了房費(fèi) "<<customer[j]->get_prepaid()<<"元, 實(shí)際消費(fèi) "<<day2*300<<"元"<<endl;
?? ??? ??? ??? ??? ?cout<<endl;
?? ??? ??? ??? ??? ?if(day>0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)退給該顧客 "<<day*300<<" 元"<<endl;
?? ??? ??? ??? ??? ?if(day<0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)補(bǔ)收該顧客住房費(fèi) "<<-day*300<<" 元"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?cout<<endl;
?? ??? ??? ?cout<<"確認(rèn)退房,請(qǐng)按1: "<<endl;
?? ??? ??? ?char v;
?? ??? ??? ?cin>>v;
?? ??? ??? ?if(v=='1') {
?? ??? ??? ??? ?for(int k=0; k<60; k++) {
?? ??? ??? ??? ??? ?if(room[k].number==customer[j]->get_room_number())
?? ??? ??? ??? ??? ??? ?room[k].state=0;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?i--;
?? ??? ??? ??? ?for(; j<i; j++) {
?? ??? ??? ??? ??? ?customer[j]=customer[j+1];
?? ??? ??? ??? ?}
?? ??? ??? ??? ?delete customer[i];
?? ??? ??? ?}
?? ??? ?}
?? ??? ?else
?? ??? ?{
?? ??? ??? ?cout<<"無此顧客信息"<<endl;
?? ??? ??? ?break;
?? ??? ?}
?? ?}
}

6.查詢

//查詢
void function::inquire() {
?? ?char option;
?? ?cout<<"1.房間信息查詢, 2.顧客信息查詢: "<<endl;
?? ?cin>>option;
?? ?if(option=='1') {
?? ??? ?int j;
?? ??? ?int k=0;
?? ??? ?cout<<endl;
?? ??? ?cout<<"空房間:"<<endl;
?? ??? ?for(j=0; j<60; j++) {
?? ??? ??? ?if(room[j].state==0) {
?? ??? ??? ??? ?if(k%10==0) cout<<endl;//一行十個(gè)
?? ??? ??? ??? ?cout<<room[j].number<<'\t';
?? ??? ??? ??? ?k++;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?cout<<endl;
?? ??? ?cout<<endl;
?? ??? ?k=0;
?? ??? ?cout<<"已預(yù)訂房間:"<<endl;
?? ??? ?for(j=0; j<60; j++) {
?? ??? ??? ?if(room[j].state==1) {
?? ??? ??? ??? ?if(k%10==0) cout<<endl;
?? ??? ??? ??? ?cout<<room[j].number<<'\t';
?? ??? ??? ??? ?k++;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?k=0;
?? ??? ?cout<<endl;
?? ??? ?cout<<endl;
?? ??? ?cout<<"已入住房間:"<<endl;
?? ??? ?for(j=0; j<60; j++) {
?? ??? ??? ?if(room[j].state==2) {
?? ??? ??? ??? ?if(k%10==0) cout<<endl;
?? ??? ??? ??? ?cout<<room[j].number<<'\t';
?? ??? ??? ??? ?k++;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?cout<<endl;
?? ??? ?cout<<endl;
?? ?} else if(option=='2') {
?? ??? ?cout<<"1.按姓名查詢, 2.按身份證查詢: "<<endl;
?? ??? ?char option;
?? ??? ?cin>>option;
?? ??? ?if(option=='1') {
?? ??? ??? ?char name3[10];
?? ??? ??? ?cout<<"請(qǐng)輸入顧客的姓名: ";
?? ??? ??? ?cin>>name3;
?? ??? ??? ?for(int j=0; j<=i; j++) {
?? ??? ??? ??? ?if(strcmp(customer[j]->get_name(),name3)==0) {
?? ??? ??? ??? ??? ?cout<<name3<<"的信息如下:"<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"房間號(hào): "<<customer[j]->get_room_number()<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"預(yù)付費(fèi)用: "<<customer[j]->get_prepaid()<<endl;
?? ??? ??? ??? ??? ?break;?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?else
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?cout<<"無此顧客信息"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if(option=='2') {
?? ??? ??? ?char id3[10];
?? ??? ??? ?cout<<"請(qǐng)輸入顧客的身份證號(hào)碼: "<<endl;
?? ??? ??? ?cin>>id3;
?? ??? ??? ?for(int j=0; j<=i; j++) {
?? ??? ??? ??? ?if(strcmp(customer[j]->get_ID(),id3)==0) {
?? ??? ??? ??? ??? ?cout<<customer[j]->get_name()<<"的房間信息:"<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"房間號(hào): "<<customer[j]->get_room_number()<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"預(yù)付房費(fèi): "<<customer[j]->get_prepaid()<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?else
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?cout<<"無此顧客信息"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ?}
}

(1)房間信息查詢

(2)顧客信息查詢

完整的放這嘍

//賬號(hào)為123?
//密碼為123?
#include<iostream>
#include<cstdlib>
#include<cstring>
using namespace std;
int i=0;
struct Room {
?? ?int number;
?? ?int rad;?
?? ?int price;
?? ?int state;
};
class Customer {
?? ?public:
?? ??? ?Customer();
?? ??? ?void set_name(char *n) {
?? ??? ??? ?strcpy(name,n);
?? ??? ?}
?? ??? ?void set_ID(char *p) {
?? ??? ??? ?strcpy(ID,p);
?? ??? ?}
?? ??? ?void set_room_number(int n) {
?? ??? ??? ?room_number=n;
?? ??? ?}
?? ??? ?void set_day(int d) {
?? ??? ??? ?day=d;
?? ??? ?}
?? ??? ?void set_prepaid(int p) {
?? ??? ??? ?prepaid=p;
?? ??? ?}
?? ??? ?char *get_name() {
?? ??? ??? ?return name;
?? ??? ?}
?? ??? ?char *get_ID() {
?? ??? ??? ?return ID;
?? ??? ?}
?? ??? ?int ?get_room_number() {
?? ??? ??? ?return room_number;
?? ??? ?}
?? ??? ?int ?get_day() {
?? ??? ??? ?return day;
?? ??? ?}
?? ??? ?int ?get_prepaid() {
?? ??? ??? ?return prepaid;
?? ??? ?}
?? ??? ?virtual ~Customer();
?? ?private:
?? ??? ?char name[10],ID[19];
?? ??? ?int ?room_number;
?? ??? ?int ?prepaid;
?? ??? ?int ?change;
?? ??? ?int ?day;
};
Customer::Customer() {//構(gòu)造函數(shù)
?? ?cout<<"請(qǐng)您輸入顧客的姓名"<<endl;
?? ?cin>>name;
?? ?cout<<"請(qǐng)您輸入顧客的身份證號(hào)碼"<<endl;
?? ?cin>>ID;
?? ?prepaid=day=0;
}
Customer::~Customer() {//析構(gòu)函數(shù)
?? ?cout<<"該顧客退房成功!"<<endl;
}
Room room[60];
Customer *customer[60];
?
class function
{
?? ?public:
?? ?void initial_room();
?? ?void welcome();
?? ?void menu();
?? ?void book_room();
?? ?void go_in();
?? ?void go_out();
?? ?void inquire();
?? ?void out();?? ?
};
int main() {
?? ?char choice='1';
?? ?function m;
?? ?m.initial_room();?? ?//初始化60個(gè)房間
?? ?m.welcome();?? ?
?? ??? ??? ?//驗(yàn)證
?? ?while(choice=='1') {
?? ??? ?m.menu();//功能
?? ??? ?cout<<endl;
?? ??? ?cout<<"1. 繼續(xù)使用 ? 2. 退出 "<<endl;
?? ??? ?cin>>choice;
?? ??? ?cout<<endl;
?? ?}
}
//登陸
void function::welcome() {
?? ?system("color 3E");
?? ?char name[4],pass[7];
?? ?cout<<"請(qǐng)輸入用戶名和密碼:"<<endl;
?? ?cin>>name;
?? ?cin>>pass;
?? ?while((strcmp(name,"123")!=0)||(strcmp(pass,"123")!=0)) {
?? ??? ?cout<<"用戶名或密碼輸入有誤,請(qǐng)重新輸入!"<<endl;
?? ??? ?cin>>name;
?? ??? ?cin>>pass;
?? ?}
?? ?cout<<endl;
?? ?cout<<endl;
?? ?cout<<" ? ? ? ? ? ? ? ? ? ? ---------------------------"<<endl;
?? ?cout<<" ? ? ? ? ? ? ? ? ? ? ?歡迎使用旅館住宿管理系統(tǒng)!"<<endl;
?? ?cout<<" ? ? ? ? ? ? ? ? ? ? ---------------------------"<<endl;
?? ?cout<<endl;
?? ?system("pause");
?? ?system("cls");
}
void function::menu() {
?? ?function n;
?? ?char x;
?? ?cout<<"\t\t請(qǐng)選擇功能: "<<endl;
?? ?cout<<" \t ? 1.預(yù)定 ?\t2.入住 ?"<<endl;
?? ?cout<<" \t ? 3.退房 ?\t4.查詢"<<endl;
?? ?cout<<" ? ?\t ? 5.退出 ?\t"<<endl;
?? ?cin>>x;
?? ?switch(x) {
?? ??? ?case '1':
?? ??? ??? ?n.book_room();
?? ??? ??? ?system("pause");
?? ??? ??? ?system("cls");
?? ??? ??? ?break;
?? ??? ?case '2':
?? ??? ??? ?n.go_in();
?? ??? ??? ?system("pause");
?? ??? ??? ?system("cls");
?? ??? ??? ?break;
?? ??? ?case '3':
?? ??? ??? ?n.go_out();
?? ??? ??? ?system("pause");
?? ??? ??? ?system("cls");
?? ??? ??? ?break;
?? ??? ?case '4':
?? ??? ??? ?n.inquire();
?? ??? ??? ?system("pause");
?? ??? ??? ?system("cls");
?? ??? ??? ?break;
?? ??? ?case '5':
?? ??? ??? ?n.out();
?? ??? ??? ?break;
?? ??? ?default:
?? ??? ??? ?cout<<"輸入有誤,請(qǐng)重新輸入"<<endl;
?? ??? ??? ?cin>>x;
?? ?}
}
//訂房
void function::book_room() {
?? ?customer[i]=new Customer;
?? ?int room_kind,day;
?? ?cout<<"請(qǐng)您選擇預(yù)定房間類型:\n";
?? ?cout<<"1.單人間/天/100元\n2.雙人間/天/200元\n3.標(biāo)準(zhǔn)間/天/300元"<<endl;
?? ?cin>>room_kind;
?? ?cout<<"請(qǐng)輸入預(yù)定天數(shù)"<<endl;
?? ?cin>>day;
?? ?customer[i]->set_day(day);
?? ?switch(room_kind) {
?? ??? ??? ?int n;
?? ??? ?case 1:
?? ??? ??? ?cout<<"住房費(fèi)用總共為: "<<day*100<<"元"<<endl;
?? ??? ??? ?for(n=0; n<20; n++) {?? ?//從第一個(gè)級(jí)別的房間中查找一個(gè)空閑的房間
?? ??? ??? ??? ?if(room[n].state==0) {???//state=0表示該住房沒有被預(yù)定的
?? ??? ??? ??? ??? ?cout<<"預(yù)定成功 ? 房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ?room[n].state=1;
?? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?break;
?? ??? ?case 2:
?? ??? ??? ?cout<<"住房費(fèi)用總共為: "<<day*200<<" 元"<<endl;
?? ??? ??? ?for(n=20; n<40; n++) {
?? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ?cout<<"預(yù)定成功 ? 房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ?room[n].state=1;
?? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?break;
?? ??? ?case 3: {
?? ??? ??? ?cout<<"住房費(fèi)用總共為: "<<day*300<<" 元"<<endl;
?? ??? ??? ?for(n=40; n<60; n++) {
?? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ?cout<<"預(yù)訂成功 ? 房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ?room[n].state=1;
?? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?break;
?? ??? ?}
?? ??? ?default:
?? ??? ??? ?cout<<"選擇有誤"<<endl;
?? ??? ??? ?break;
?? ?}
?? ?i++; ?//住房的顧客數(shù)加1
}
//入住
void function::go_in() {
?? ?char name1[10],id1[19];
?? ?int q,prepaid;
?? ?cout<<"該顧客是否已訂房 (1. 已訂 ? 2. 沒訂) "<<endl;
?? ?cin>>q;
?? ?if(q==1) {
?? ??? ?cout<<"請(qǐng)輸入顧客的姓名:"<<endl;
?? ??? ?cin>>name1;
?? ??? ?cout<<"請(qǐng)輸入顧客的身份證號(hào)碼:"<<endl;
?? ??? ?cin>>id1;
?? ??? ?//i:顧客人數(shù)
?? ??? ?for(int j=0; j<=i; j++) {
?? ??? ??? ?if((strcmp(customer[j]->get_name(),name1)==0)&&(strcmp(customer[j]->get_ID(),id1)==0)) {
?? ??? ??? ??? ?int num=customer[j]->get_room_number();
?? ??? ??? ??? ?cout<<"顧客"<<name1<<"入住 ?房間號(hào)碼為: "<<num<<endl;
?? ??? ??? ??? ?switch(num/100) {
?? ??? ??? ??? ??? ?case 6:
?? ??? ??? ??? ??? ??? ?prepaid=customer[j]->get_day()*100;
?? ??? ??? ??? ??? ??? ?customer[j]->set_prepaid(prepaid);
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ??? ??? ?room[num%100-1].state=2; ? ? ? ? ? ? ? ? ?//修改房間狀態(tài)為入住狀態(tài)
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?case 7:
?? ??? ??? ??? ??? ??? ?prepaid=customer[j]->get_day()*200;
?? ??? ??? ??? ??? ??? ?customer[j]->set_prepaid(prepaid);
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ??? ??? ?room[19+num%100].state=2;
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?case 8:
?? ??? ??? ??? ??? ??? ?prepaid=customer[j]->get_day()*300;
?? ??? ??? ??? ??? ??? ?customer[j]->set_prepaid(prepaid);
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ??? ??? ?room[39+num%100].state=2;
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ?} else {
?? ??? ?customer[i]=new Customer;
?? ??? ?int roomkind;
?? ??? ?int day;
?? ??? ?cout<<"請(qǐng)輸入要預(yù)定的天數(shù):"<<endl;
?? ??? ?cout<<"1.單人間/天/100元\n2.雙人間/天/200元\n3.標(biāo)準(zhǔn)間/天/300元"<<endl;
?? ??? ?cin>>roomkind;
?? ??? ?cout<<"請(qǐng)輸入住宿天數(shù):"<<endl;
?? ??? ?cin>>day;
?? ??? ?customer[i]->set_day(day);
?? ??? ?switch(roomkind) {
?? ??? ??? ??? ?int n;
?? ??? ??? ?case 1:
?? ??? ??? ??? ?prepaid=day*100;
?? ??? ??? ??? ?customer[i]->set_prepaid(prepaid);
?? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ?for(n=0; n<20; n++) {
?? ??? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ??? ?cout<<"入住房間號(hào)碼為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ??? ?room[n].state=2;
?? ??? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ??? ?case 2:
?? ??? ??? ??? ?prepaid=day*200;
?? ??? ??? ??? ?customer[i]->set_prepaid(prepaid);
?? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ?for(n=20; n<40; n++) {
?? ??? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ??? ?cout<<"入住房間號(hào)為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ??? ?room[n].state=2;
?? ??? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ??? ?case 3:
?? ??? ??? ??? ?prepaid=day*300;
?? ??? ??? ??? ?customer[i]->set_prepaid(prepaid);
?? ??? ??? ??? ?cout<<"請(qǐng)收費(fèi)用 "<<prepaid<<"元"<<endl;
?? ??? ??? ??? ?for(n=40; n<60; n++) {
?? ??? ??? ??? ??? ?if(room[n].state==0) {
?? ??? ??? ??? ??? ??? ?cout<<"入住房間號(hào)為: "<<room[n].number<<endl;
?? ??? ??? ??? ??? ??? ?room[n].state=2;
?? ??? ??? ??? ??? ??? ?customer[i]->set_room_number(room[n].number);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?break;
?? ??? ?}
?? ??? ?i++;
?? ?}
}
//退房
void function::go_out() {
?? ?char name2[10],id2[19];
?? ?int room_number;
?? ?int day;//多或少天數(shù)
?? ?cout<<"請(qǐng)輸入要退房的顧客姓名和身份證號(hào)碼:"<<endl;
?? ?cin>>name2;
?? ?cin>>id2;
?? ?cout<<"請(qǐng)輸入該顧客實(shí)際所住天數(shù):"<<endl;
?? ?int day2;
?? ?cin>>day2;
?? ?int j;
?? ?for(j=0; j<i; j++) {
?? ??? ?if((strcmp(customer[j]->get_name(),name2)==0)&&(strcmp(customer[j]->get_ID(),id2)==0)) {
?? ??? ??? ?room_number=customer[j]->get_room_number();
?? ??? ??? ?int w;
?? ??? ??? ?w=room_number/100;
?? ??? ??? ?int day1;
?? ??? ??? ?day1=customer[j]->get_day();
?? ??? ??? ?day=day1-day2;
?? ??? ??? ?switch(w) {
?? ??? ??? ??? ?case 1:
?? ??? ??? ??? ??? ?cout<<"顧客的房間號(hào)是"<<room_number<<" :為單人間,每天100元"<<endl;
?? ??? ??? ??? ??? ?cout<<"該顧客預(yù)付了房費(fèi) "<<customer[j]->get_prepaid()<<"元, 實(shí)際消費(fèi) "<<day2*100<<"元"<<endl;
?? ??? ??? ??? ??? ?cout<<endl;
?? ??? ??? ??? ??? ?if(day>0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)退給該顧客 "<<day*100<<" 元"<<endl;
?? ??? ??? ??? ??? ?if(day<0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)補(bǔ)收該顧客住房費(fèi) "<<-day*100<<" 元"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 2:
?? ??? ??? ??? ??? ?cout<<"顧客的房間號(hào)是"<<room_number<<" :為雙人間,每天200元"<<endl;
?? ??? ??? ??? ??? ?cout<<"該顧客預(yù)付了房費(fèi) "<<customer[j]->get_prepaid()<<"元, 實(shí)際消費(fèi) "<<day2*200<<"元"<<endl;
?? ??? ??? ??? ??? ?cout<<endl;
?? ??? ??? ??? ??? ?if(day>0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)退給該顧客 "<<day*200<<" 元"<<endl;
?? ??? ??? ??? ??? ?if(day<0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)補(bǔ)收該顧客住房費(fèi) "<<-day*200<<" 元"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 3:
?? ??? ??? ??? ??? ?cout<<"顧客的房間號(hào)是"<<room_number<<" ? :為標(biāo)準(zhǔn)間,每天300元"<<endl;
?? ??? ??? ??? ??? ?cout<<"該顧客預(yù)付了房費(fèi) "<<customer[j]->get_prepaid()<<"元, 實(shí)際消費(fèi) "<<day2*300<<"元"<<endl;
?? ??? ??? ??? ??? ?cout<<endl;
?? ??? ??? ??? ??? ?if(day>0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)退給該顧客 "<<day*300<<" 元"<<endl;
?? ??? ??? ??? ??? ?if(day<0)
?? ??? ??? ??? ??? ??? ?cout<<"請(qǐng)補(bǔ)收該顧客住房費(fèi) "<<-day*300<<" 元"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?cout<<endl;
?? ??? ??? ?cout<<"確認(rèn)退房,請(qǐng)按1: "<<endl;
?? ??? ??? ?char v;
?? ??? ??? ?cin>>v;
?? ??? ??? ?if(v=='1') {
?? ??? ??? ??? ?for(int k=0; k<60; k++) {
?? ??? ??? ??? ??? ?if(room[k].number==customer[j]->get_room_number())
?? ??? ??? ??? ??? ??? ?room[k].state=0;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?i--;
?? ??? ??? ??? ?for(; j<i; j++) {
?? ??? ??? ??? ??? ?customer[j]=customer[j+1];
?? ??? ??? ??? ?}
?? ??? ??? ??? ?delete customer[i];
?? ??? ??? ?}
?? ??? ?}
?? ??? ?else
?? ??? ?{
?? ??? ??? ?cout<<"無此顧客信息"<<endl;
?? ??? ??? ?break;
?? ??? ?}
?? ?}
}
//查詢
void function::inquire() {
?? ?char option;
?? ?cout<<"1.房間信息查詢, 2.顧客信息查詢: "<<endl;
?? ?cin>>option;
?? ?if(option=='1') {
?? ??? ?int j;
?? ??? ?int k=0;
?? ??? ?cout<<endl;
?? ??? ?cout<<"空房間:"<<endl;
?? ??? ?for(j=0; j<60; j++) {
?? ??? ??? ?if(room[j].state==0) {
?? ??? ??? ??? ?if(k%10==0) cout<<endl;//一行十個(gè)
?? ??? ??? ??? ?cout<<room[j].number<<'\t';
?? ??? ??? ??? ?k++;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?cout<<endl;
?? ??? ?cout<<endl;
?? ??? ?k=0;
?? ??? ?cout<<"已預(yù)訂房間:"<<endl;
?? ??? ?for(j=0; j<60; j++) {
?? ??? ??? ?if(room[j].state==1) {
?? ??? ??? ??? ?if(k%10==0) cout<<endl;
?? ??? ??? ??? ?cout<<room[j].number<<'\t';
?? ??? ??? ??? ?k++;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?k=0;
?? ??? ?cout<<endl;
?? ??? ?cout<<endl;
?? ??? ?cout<<"已入住房間:"<<endl;
?? ??? ?for(j=0; j<60; j++) {
?? ??? ??? ?if(room[j].state==2) {
?? ??? ??? ??? ?if(k%10==0) cout<<endl;
?? ??? ??? ??? ?cout<<room[j].number<<'\t';
?? ??? ??? ??? ?k++;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?cout<<endl;
?? ??? ?cout<<endl;
?? ?} else if(option=='2') {
?? ??? ?cout<<"1.按姓名查詢, 2.按身份證查詢: "<<endl;
?? ??? ?char option;
?? ??? ?cin>>option;
?? ??? ?if(option=='1') {
?? ??? ??? ?char name3[10];
?? ??? ??? ?cout<<"請(qǐng)輸入顧客的姓名: ";
?? ??? ??? ?cin>>name3;
?? ??? ??? ?for(int j=0; j<=i; j++) {
?? ??? ??? ??? ?if(strcmp(customer[j]->get_name(),name3)==0) {
?? ??? ??? ??? ??? ?cout<<name3<<"的信息如下:"<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"房間號(hào): "<<customer[j]->get_room_number()<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"預(yù)付費(fèi)用: "<<customer[j]->get_prepaid()<<endl;
?? ??? ??? ??? ??? ?break;?
?? ??? ??? ??? ?}
?? ??? ??? ??? ?else
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?cout<<"無此顧客信息"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if(option=='2') {
?? ??? ??? ?char id3[10];
?? ??? ??? ?cout<<"請(qǐng)輸入顧客的身份證號(hào)碼: "<<endl;
?? ??? ??? ?cin>>id3;
?? ??? ??? ?for(int j=0; j<=i; j++) {
?? ??? ??? ??? ?if(strcmp(customer[j]->get_ID(),id3)==0) {
?? ??? ??? ??? ??? ?cout<<customer[j]->get_name()<<"的房間信息:"<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"房間號(hào): "<<customer[j]->get_room_number()<<endl;
?? ??? ??? ??? ??? ?cout<<"\t"<<"預(yù)付房費(fèi): "<<customer[j]->get_prepaid()<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?else
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?cout<<"無此顧客信息"<<endl;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ?}
}
//初始化
void function::initial_room() {
?? ?int j;
?? ?int k=101;
?? ?for(j=0; j<20; j++) {
?? ??? ?room[j].number=k++;
?? ??? ?room[j].rad=1;
?? ??? ?room[j].price=100;
?? ??? ?room[j].state=0;
?? ?}
?? ?k=201;
?? ?for(j=20; j<40; j++) {
?? ??? ?room[j].number=k++;
?? ??? ?room[j].rad=2;
?? ??? ?room[j].price=200;
?? ??? ?room[j].state=0;
?? ?}
?? ?k=301;
?? ?for(j=40; j<60; j++) {
?? ??? ?room[j].number=k++;
?? ??? ?room[j].rad=3;
?? ??? ?room[j].price=300;
?? ??? ?room[j].state=0;
?? ?}
}
void function::out()
{
?? ?return;
}

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論