C++高级语言程序设计第4节.ppt
文本预览下载声明
* * * 声明一个结构类型后,就可以用来组成更复杂的数据类型。可以象定义基本数据类型的数组一样定义结构类型的数组,称为结构数组。 结构数组的每个元素都是该结构类型的变量。 * 声明一个结构类型后,就可以用来组成更复杂的数据类型。可以象定义基本数据类型的数组一样定义结构类型的数组,称为结构数组。 结构数组的每个元素都是该结构类型的变量。 #include iostream using namespace std; enum weekday {sun=7,mon=1,tue,wed,thu,fri,sat}; void main() { cout今天是星期(请输入一个数1-7):; int n; cinn; weekday today = (weekday)n; weekday tomorrow = (weekday)((today+1)%7); tomorrow==0? sun:tomorrow; switch (tomorrow) { case sun: coutTomorrow is Sunday.endl; break; case mon: coutTomorrow is Monday.endl; break; case tue: coutTomorrow is Tuesday.endl; break; case wed: coutTomorrow is Wednesday.endl; break; case thu: coutTomorrow is Thursday.endl; break; case fri: coutTomorrow is Friday.endl; break; case sat: coutTomorrow is Saturday.endl; break; default: coutinput error!endl; } } * 北京邮电大学信息与通信工程学院 -*- 例: 口袋中有红、黄、蓝、白、黑五种颜色的球若干个。每次从口袋中取出3个不同颜色的球,问有多少种取法。 分析:由于球只能是五种颜色之一,故可用枚举类型表示球的颜色。设取出的球为i、j、k,根据题意,i、j、k分别可以有五种取值,且i≠j≠k。可以用穷举法,逐个检验每一种可能的组合,从中找出符合要求的组合并输出。 #includeiostream.h enum color{red,yellow,blue,white,black}; void main() { enum color print; int n,loop,i,j,k; char c; n=0; for(i=red;i=black;i++) for(j=red;j=black;j++) if(i!=j) {//前两个球不同 for(k=red;k=black;k++) if((k!=i)(k!=j)) { //第三个球不同于前两个 n=n+1; cout.width(4); coutn; for(loop=1;loop=3;loop++) { switch(loop) { case 1: print=(enum color)i; break; case 2: print=(enum color)j; break; case 3: print=(enum color)k; break; default: break; } switch(print) { case red: coutred; break; case yellow: coutyellow; break; case blue: coutblue; break; case white: coutwhite; break;
显示全部