您的位置:首页 > 编程语言 > C语言/C++

C++primer plus第六版课后编程题答案 6.4

2014-03-31 13:19 761 查看
6.4

#include <iostream>
using namespace std;
const int strsize=20;

struct bop{
char fullname[strsize];	//real name
char title[strsize];	//job title
char bopname[strsize];	//secret BOP name
int preference;	//0=fullname 1=title 2=bopname
};
void getCout(char c,bop *b);
void main64()
{
bop b[4]={{"Chen shiguang","Coder","guang",1}, //初始化数组
{"Lijing","Student","Li",2},
{"Lijing2","Student2","Li2",2},
{"Chenguang","dent","ci",0}
};

cout<<"Benevolent order of Programmers Report"<<endl;
cout<<"a.display by name              b.display by title"<<endl;
cout<<"c.display by bopname           d.display by priference"<<endl;
cout<<"q.quit"<<endl;
cout<<"Enter your choice:";
char ch;
cin>>ch;
while(ch!='q')
{

switch(ch)
{
case 'a':for(int i=0;i<4;i++){
cout<<b[i].fullname<<endl;
};break;
case 'b':for(int i=0;i<4;i++){
cout<<b[i].title<<endl;
};break;
case 'c':for(int i=0;i<4;i++){
cout<<b[i].bopname<<endl;
};break;
case 'd':getCout(ch,b);break;
default:cout<<"wrong input"<<endl;
//case 'q':cout<<"bye"<<endl,cin.get(),exit(1);

}
cout<<"Next Choice:";
cin>>ch;
}
cout<<"bye"<<endl;

cin.get();

}

void getCout(char c,bop *b)	//选择为preference时调用的函数
{
int s;
for(int i=0;i<4;i++,b++)
{
s=b->preference;
switch(s){
case 0:cout<<b->fullname<<endl;break;
case 1:cout<<b->title<<endl;break;
case 2:cout<<b->bopname<<endl;break;
default:cout<<"wrong request!";

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息