switch 语句

#include <iostream>

using namespace std;

const unsigned strsize = 80;

struct bop{
	char fillname[strsize];    //  real name
	char title[strsize];       //  job title
	char bopname[strsize];     //  secret BOP name
	int preference;            //  0 = fillname,1 = title, 2 = bopname
};
enum bb { FULLNAME,TITLE,BOPNAME };
int main()
{
	char tt;
	int a = 0;

	bop cc[] = { { "1", "2", "3", FULLNAME },
	             { "11","22","33",TITLE},
				 { "111", "222", "333",BOPNAME },
				 { "1111", "2222", "3333",FULLNAME },
				 { "11111", "22222", "33333",TITLE }
	};
	bool display = true;

	cout << "Benevolent Order of Programmers Report" << endl;
	cout << "a." << "display by name\t\t\t";
	cout << "b." << "display by title" << endl;
	cout << "c." << "display by bopname\t\t\t";
	cout << "d." << "display by preference" << endl;
	cout << "q." << "quit" << endl;
	while (display){
		

		cout << "Enter your choice:";
		if (!(cin >> tt))
		{
			display = false;
			break;
		}
			switch (tt){
			case 'a':{
						 for (const auto& e : cc)
						 {
							 cout << e.fillname << endl;
						 }
			}
				break;

			case 'b':{
						 for (const auto&e : cc)
						 {
							 cout << e.title << endl;
						 }
			}
				break;

			case 'c':{
						 for (const auto&e : cc)
						 {
							 cout << e.bopname << endl;
						 }
			}
				break;

			case 'd':{
						 for (const auto&e : cc)
						 {
							 if (FULLNAME == e.preference)
							 {
								 cout << e.fillname << endl;
							 }
							 else if (TITLE == e.preference)
							 {
								 cout << e.title << endl;
							 }
							 else if (BOPNAME == e.preference)
							 {
								 cout << e.bopname << endl;
							 }
							 else
							 {
								 ;
							 }
						 }
			}
				break;

			case 'q':{
						 cout << "Bye!" << endl;
						 display = false;
			}
				break;

			default:{
						cout << "Error!" << endl;
			}
				break;
			}

	}
	cout << endl;

	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值