首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

真诚求学··switch的用法··新手贴上解决方法

2012-02-27 
真诚求学switch的用法新手贴上switch(){case 1case 2……}这里的1,2,……是什么意思什么时候用switch!还有个题

真诚求学··switch的用法··新手贴上
switch()
{
case 1
case 2
……
}
这里的1,2,……是什么意思··什么时候用switch!

还有个题麻烦大家写一下我学习一下!
  给出一百分制成绩,要求输出成绩等级‘A’‘B’‘C’‘D’‘E’.90分以上为‘A’,80~89为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。

[解决办法]
switch(nScore)
{
case nScore>=90
"A";
break;
case 2
……
default:
break;
}

[解决办法]
来个丑陋点的

C/C++ code
  3 int main(){  4   5     int score;  6     while(scanf("%d",&score) == 1){  7         switch(score/10){  8             case 0:  9             case 1: 10             case 2: 11             case 3: 12             case 4: 13             case 5:printf("E\n");break; 14             case 6:printf("D\n");break; 15             case 7:printf("C\n");break; 16             case 8:printf("B\n");break; 17             case 9: 18             case 10:printf("A\n");break; 19             default:printf("wrong score\n");break; 20         } 21     } 22     return 0; 23 }
[解决办法]
1,2,~~~~~分别代表第几种情况。
当分支较多时,需要用很多if,else时,可以用swith来代替。
可以参照1楼这样写
switch(nScore)
{
case nScore>=90
cout<<"A";
break;
case (nScore>=80)%%(nScore<=90)
  
cout<<"B";
break;
case 
……

break;
default://当不符合以上各种情况是,就用default来显示不履行上述情况,退出选择分支。
}
[解决办法]
作为开关语句的switch(i)
其开关变量i只能是int或char
执行过程成中会直接跳转到i指定的case行
如果该行后没有break怎会顺序执行
switch语句貌似与if else功能类似
但实际有本质区别
switch语句的执行效率更高
层次感也更好些
如果能转化为实值判断的
个人推荐使用switch语句

热点排行