文档详情

A3-程序的控制结构-选择结构.ppt

发布:2017-06-10约字共38页下载文档
文本预览下载声明
switch语句(多分支结构) 所有的case中的常量表达式的值不能重复出现 #includeiostream using namespace std; int main() { intt a; cina; switch (a) { case 1: cout‘a’; case 1: cout‘b’; default: cout‘c’; } } 在两个case中出现2次1的值,编译错误 switch语句(多分支结构) 每个case或default后,可以包含多条语句,不需要使用“{”和“}”括起来。 每个case后面的语句可以写在冒号后的同一行或换到新行写。 switch(a) { case 1: x++; break; case 2: y++; break; case 3: z++; break; default: couterror; } switch(a) { case 1: x++; break; case 2: y++; break; case 3: z++; break; default: couterror; } ?等价? switch语句(多分支结构) 多个case可以共用一组语句,即某些case分支的语句序列可以为空 #includecstdio int main() { int a; scanf(%d,a); switch(a) { case 1:printf(level 1\n);break; case 2: case 3: case 4:printf(level 4\n);break; case 5:printf(level 5\n);break; } return 0; } 当分别输入2,3,4时,结果都是显示:level 4 switch语句(多分支结构)——例3.8 根据从键盘上输入的表示星期几的数字,对应输出它的英文名称。 #includeiostream using namespace std; int main() { int weekday; cinweekday; switch(weekday) { case 1: coutMondayendl; break; case 2: coutTuesdayendl; break; case 3: coutWednesdayendl; break; case 4: coutThursdayendl; break; case 5: coutFridayendl; break; case 6: coutSaturdayendl; break; case 7: coutSundayendl; break; default: coutinput error!; } return 0; } switch语句(多分支结构)——例3.9 判断2006年每个月份的天数 #includeiostream using namespace std; int main() { int month,day; cinmonth; switch(month) { case 2: day=28; break; case 4: day=30; break; case 6: day=30; break; case 9: day=30; break; case 11: day=30; break; default: day=31; break; } coutdayendl; return 0; } switch语句(多分支结构)——例3.10 期末来临了,班长小Q决定将剩余班费X元钱,用于购买若干支钢笔奖励给一些学习好、表现好的同学。 已知商店里有三种钢笔,它们的单价为6元、5元和4元。小Q想买尽量多的笔,并且不剩余钱。请您编一程序,帮小Q制订出一种买笔的方案。如果有多个方案,则优先购买贵的笔。 【分析】 尽量多地买4元的笔肯定可以买最多支笔,最多可买的笔为x/4支。由于要把钱用完,接下来考虑怎么把剩下的钱给用完: 若还剩1元,则4元钱的笔少买1支,换成一支5元笔即可; 若还剩2元,则4元钱的笔少买1支,换成一支6元笔即可; 若还剩3元,则4元钱的笔少买2支,换成一支5元笔和一支6元笔即可。 switch语句(多分支结构)——例3.10 #includeiostream using namespace std; int main() { int a,b,c,x,y; //a,b,c分别表示在买笔方案中,6元、5元和4元钱笔的数目 //x,y分别表示剩余班
显示全部
相似文档