编写程序,统计某旅馆住宿客人的总数,要求输入客人姓名,输出客人编号(按先后顺序自动生成),姓名以及总人数。
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 #define N 100 5 6 class passenger{ //定义类passenger 7 private: 8 int number; //客人编号 9 string name; //姓名 10 static int totalNum; //总人数 11 public: 12 void setData(int number,string name) //为成员变量赋值 13 { 14 this->number=number; 15 this->name=name; 16 totalNum++; 17 } 18 void getInfor() //显示客人信息 19 { 20 cout<<"客人编号:"<<number<<" "<<"姓名:"<<name<<" "<<endl; 21 } 22 void getTotalNum() //显示入住总人数 23 { 24 cout<<"总共有"<<totalNum<<"人在这家旅馆入住."<<endl; 25 } 26 }; 27 int passenger::totalNum=0; //静态成员变量初始化 28 int main() 29 { 30 passenger c[N]; //创建类对象数组 31 int number[N]; 32 string name[N]; 33 int i; 34 for(i=0;;i++) 35 { 36 cout<<"请输入客人的信息(当输入0时结束输入):"<<endl; 37 cout<<"姓名:"; 38 cin>>name[i]; 39 if(name[i]=="0")break; 40 cout<<"客人编号:"<<i+1<<endl; 41 number[i]=i+1; 42 } 43 for(i=0;;i++) 44 { 45 if(name[i]!="0") 46 { 47 c[i].setData(number[i],name[i]); 48 c[i].getInfor(); 49 } 50 else 51 break; 52 } 53 c[i].getTotalNum(); 54 return 0; 55 }