赞
踩
switch case格式:
switch(表达式)
{
case 常量表达式1:语句1;break;
case 常量表达式2:语句2;break;
…
case 常量表达式n:语句n;break;
default:语句n+1;break;
}
【注意】
switch 语句注意事项
switch后面的表达式,必须是整型、字符型、布尔型;
每一个case表达式的值必须互不相同;
各个case的顺序不影响执行结果;
只有遇到break语句才跳出;
多个case可以共用一组语句;
default语句可以省略;
case后面的子句可以不用{}括起来。
【例题】
01.使用switch,将输入的小写类型的char类型转为大写类型输出,只转换 a,b,c,d,e其他的输出“other”。
#include <iostream> //01.使用switch,将输入的小写类型的char类型转为大写类型输出,只转换 a,b,c,d,e其他的输出“请输入正确的小写字母” using namespace std; int main() { cout<<"字符大小写转换器"<<endl; cout<<"请输入要转换的小写字母"<<endl; char n; cin>>n; switch(n){ case 'a':n=n-32;break; case 'b':n=n-32;break; case 'c':n=n-32;break; case 'd':n=n-32;break; case 'e':n=n-32;break; default:cout<<"请输入正确的小写字母"; } cout<<n; return 0; }
02.对学生成绩大于60分的输出“合格”,低于60分的输出“不合格”。(输入的成绩不能大于100,提示成绩/60)。
#include <iostream> //02.对学生成绩大于60分的输出“合格”,低于60分的输出“不合格”。(输入的成绩不能大于100,提示成绩/60) using namespace std; int main() { cout<<"学生成绩判断器"<<endl; cout<<"请输入学生成绩"<<endl; int n; cin>>n; if(n<=100){ switch(n/10){ case 10: case 9: case 8: case 7: case 6:cout<<"合格";break; default:cout<<"不合格"<<endl; } } cout<<"输入分数有错误,总分为100"; return 0; }
03.利用switch的穿透特性,根据指定月份,打印该月份所属的季节,3,4,5春季 6,7,8夏季 9,10,11秋季 12,1,2冬季。
//03.利用switch的穿透特性,根据指定月份, //打印该月份所属的季节,3,4,5春季 6,7,8夏季 9,10,11秋季 12,1,2冬季。 #include<iostream> using namespace std; int main(){ int n; cout<<"季节判断器"<<endl; cout<<"请输入要进行判断的月份:"<<endl; cin>>n; switch(n){ case 12:cout<<"冬季";break; case 1:cout<<"冬季";break; case 2:cout<<"冬季";break; case 3:cout<<"春季";break; case 4:cout<<"春季";break; case 5:cout<<"春季";break; case 6:cout<<"夏季";break; case 7:cout<<"夏季";break; case 8:cout<<"夏季";break; case 9:cout<<"秋季";break; case 10:cout<<"秋季";break; case 11:cout<<"秋季";break; default:cout<<"输入错误";break; } return 0; }
04.请根据英文单词的第一个字母判断星期几,如果第一个字母是一样的,则继续判断第二个字母。例如如果第一个字母是S,则继续判断第二个字母, 如果第二个字母是a,则输出“星期六”。星期的英文单词如下表所示。
星期一 星期二 星期三 星期四 星期五 星期六 星期日
Monday Tuesday Wednesday Thursday Friday Saturday Sunday
//04.请根据英文单词的第一个字母判断星期几,如果第一个字母是一样的, //则继续判断第二个字母。例如如果第一个字母是S,则继续判断第二个字母, //如果第二个字母是a,则输出“星期六”。星期的英文单词如下表所示。 // // 星期一 星期二 星期三 星期四 星期五 星期六 星期日 // Monday Tuesday Wednesday Thursday Friday Saturday Sunday #include<iostream> using namespace std; int main(){ char a,b; cout<<"星期几判断器"<<endl; cout<<"请输入第一个字母(小写)"<<endl; cin>>a; a=a-32; switch(a){ case 'M':cout<<"星期一";break; case 'W':cout<<"星期三";break; case 'F':cout<<"星期五";break; case 'T':{ cout<<"请输入第二个字母(小写)"<<endl; cin>>b; if(b=='h'){ cout<<"星期四"; }else if(b=='u'){ cout<<"星期二"; }else { cout<<"请输入有效数字"; } break; } case 'S':{ cout<<"请输入第二个字母(小写)"<<endl; cin>>b; if(b=='a'){ cout<<"星期六"; }else if(b=='u'){ cout<<"星期日"; }else { cout<<"请输入有效数字"; } break; } default:cout<<"请输入有效数字"; ;break; } return 0; }
05.做出一个计算器:支持加减乘除四种运算,
输入一行,数1,运算符,数2
然后输出
【特殊】:
除数为0:输出“你数学是体育老师教的吧!”
运算符不为±*/:输出“妈耶!!,有人不认识加减乘除符号”
//05.做出一个计算器:支持加减乘除四种运算, //输入一行,数1,运算符,数2 //然后输出 //【特殊】: //除数为0:输出“你数学是体育老师教的吧!” //运算符不为+-*/:输出“妈耶!!,有人不认识加减乘除符号” #include<iostream> using namespace std; int main(){ int x,y,sum=0; char n; cout<<"小山计算器"<<endl; cout<<"请输入您想计算的数:(例如:12 + 13)"<<endl; cin>>x>>n>>y; switch(n){ case '+':sum=x+y;break; case '-':sum=x-y;break; case '*':sum=x*y;break; case '/':{ if(y!=0){ sum=x/y; } cout<<"数学是体育老师教的吧!"<<endl; break; } default:cout<<"妈耶!!有人不认识加减乘除运算符号";break; } cout<<x<<" "<<n<<" "<<y<<"= "<<sum; return 0; }
//进阶版:循环10次进行计算 #include <iostream> using namespace std; int main(){ int x,y,sum=0; char n; cout<<"小山计算器"<<endl; cout<<"请输入您想计算的数:(例如:12 + 13)"<<endl; for(int i=1;i<=10;i++){ cin>>x>>n>>y; switch(n){ case '+':sum=x+y;break; case '-':sum=x-y;break; case '*':sum=x*y;break; case '/':{ if(y!=0){ sum=x/y; } cout<<"数学是体育老师教的吧!"<<endl; break; } default:cout<<"妈耶!!有人不认识加减乘除运算符号";break; } cout<<x<<" "<<n<<" "<<y<<"= "<<sum<<endl; } return 0; }
//会员版:无限制计算 #include <iostream> using namespace std; int main(){ int x,y,sum=0; char n; cout<<"小山计算器"<<endl; cout<<"请输入您想计算的数:(例如:12 + 13),退出请输入n='e'"<<endl; for(int i=1;i>0;){ cin>>x>>n>>y; switch(n){ case '+':sum=x+y;break; case '-':sum=x-y;break; case '*':sum=x*y;break; case 'e':break; case '/':{ if(y!=0){ sum=x/y; } cout<<"数学是体育老师教的吧!"<<endl; break; } default:cout<<"妈耶!!有人不认识加减乘除运算符号";break; } if(n=='e'){ cout<<"您已退出计算"<<endl;i=0; }else{ cout<<x<<" "<<n<<" "<<y<<"= "<<sum<<endl; } } return 0; }
06.猜数字
//猜数字游戏 #include<iostream> #include<ctime> #include<cstdlib> using namespace std; int main(){ int a,n; a=rand()%5+1; srand(time(0)); cout<<"请输入一个1-5之间的整数"<<endl; cin>>n; switch(n){ case 1:{ if(a==1){ cout<<"猜对了"<<endl; } break; } case 2:{ if(a==1){ cout<<"猜对了"<<endl; } break; } case 3:{ if(a==1){ cout<<"猜对了"<<endl; } break; } case 4:{ if(a==1){ cout<<"猜对了"<<endl; } break; } case 5:{ if(a==1){ cout<<"猜对了"<<endl; } break; } default:cout<<"猜错了"<<endl; } cout<<"猜错了"<<",正确数字为:"<<a<<endl; return 0; }
07.彩票游戏
//彩票游戏 //你购买一张彩票 中奖概率为1/5 #include<iostream> #include<ctime> #include<cstdlib> using namespace std; int main(){ int a,n; bool b=false; a=rand()%5+1; srand(time(0)); cout<<"请输入你购买彩票号码:"<<endl; cin>>n; if(n==a){ b=true; } switch(b){ case true:cout<<"恭喜你中奖50元"<<endl;break; case false:cout<<"很抱歉,你未中奖"<<endl;break; default:break; } cout<<"本次中奖号码为:"<<a<<endl; return 0; }
//彩票游戏plus //你购买一张彩票 中奖概率为1/5 //输入购买彩票张数N //刮奖N次 #include<iostream> #include<ctime> #include<cstdlib> using namespace std; int main(){ int a,n,N; cout<<"请输入你购买彩票张数:"<<endl; cin>>N; for(int i=0;i<N;i++){ bool b=false; a=rand()%5+1; srand(time(0)); cout<<"请输入你购买彩票号码:"<<endl; cin>>n; if(n==a){ b=true; } switch(b){ case true:cout<<"恭喜你中奖50元"<<endl;break; case false:cout<<"很抱歉,你未中奖"<<endl;break; default:break; } cout<<"本次中奖号码为:"<<a<<endl; } return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。