在switch中的总结
1.switch()中的类型一定是int型
2.在case _:中没有具体操作的情况下跳转下一句,break中止switch语句
3.case后面跟着常量,可以是具体数字也可以是常量1+1等
回顾例题:
#include<stdio.h>
int main(){
int type;
scanf("%d",&type);
switch(type){
case 1:
case 2:
printf("bye");break;
case 3:
printf("what?");break;
default:
printf("haha");break;
}
}
练习操作:
用switch语句对成绩转换 :90-100输出A,80-90输出B,类推
if语句可操作,switch语句可以很好的分段!对于区间内的成绩可以用取整的方式,获取个位之前的数值,然后再进行switch分段。
思路:将区间的问题简化为单个数字
#include<stdio.h>
int main(){
int score;
scanf("%d",&score);
int gread = score/10; //将区间的问题简化为单个数字
switch(gread){
case 10:
case 9:
printf("A");break;
case 8:
printf("B");break;
case 7:
printf("C");break;
case 6:
printf("D");break;
default:
printf("E");break;
}
return 0;
}
经典题目:
如何用switch语句进行操作分段函数?
if语句三段式可以操作,但是相对较复杂,今天看到一个很妙的解法
思路:将区间的问题简化为单个数字
#include<stdio.h>
int main(){
int x,y,z;
scanf("%d",&x);
z = (x<0)?1 : (x == 0)?2 : 3 ; //一下子把分段函数区分三段
switch(z){
case 1:
y = -1;break;
case 2:
y = 0;break;
default:
y = 2*x;break;
}
printf("y = %d\n",y);
return 0;
}
你学会了么?
继续加油啊