4、条件分支语句
目录
-
- 4、条件分支语句
-
-
- [1、条件分支语句 if](#1、条件分支语句 if)
-
- 1、作用
- 2、if语句
- 3、if...else语句
- [4、if...else if...else语句](#4、if...else if...else语句)
- [思考1 只需要0~9数字](#思考1 只需要0~9数字)
- [思考2 语句块](#思考2 语句块)
- [2、条件分支语句 switch](#2、条件分支语句 switch)
-
1、条件分支语句 if
1、作用
c
//让顺序执行的代码产生分支
//if语句是第一个可以让程序产生逻辑变化的语句
2、if语句
c
满足条件时,多执行一些代码
//bool类型相关:条件运算符表达式 逻辑运算符表达式
if(bool类型值为true){
满足条件要执行的代码
}
3、if...else语句
c
产生两条分支,满足条件执行if代码,不满足条件执行else代码
if( bool类型值 ){
//满足条件执行的代码
}
else{
//不满足条件执行的代码
}
4、if...else if...else语句
c
产生多条分支,多条选择,最先满足其中的一个条件,就执行其中代码
if(bool类型值){
//执行后结束
}
else if{
//执行后结束
}
...可以有n个else if 语句代码块
else{
//以上都不满足,则执行的代码
}
//条件判断从上到下执行,满足了第一个后,之后的都不会执行了
思考1 只需要0~9数字
c
接收用户输入的字符,如果输入的字符是0~9数字中的一个,则显示"正确",否则显示"非法字符";
Console.WriteLine("请输入一个字符");
int askii = Console.ReadKey().KeyChar;
//char类型可以隐式转换为数值类型
if( askii >= '0' && askii <=9 ){
Console.WriteLine("正确");
}else{
Console.WriteLine("非法字符");
}
思考2 语句块
c
下面代码输出结果是多少
int a = 5;
if(a > 3){
int b = 0;
++b;
b += a;
}
Console.WriteLine(b);
//答案:报错。语句块会影响变量的生命周期。出了代码块{},b被释放,找不到b
2、条件分支语句 switch
1、作用
让顺序执行的代码产生分支
2、基本语法
c
switch(变量){
//当变量==常量,执行case和break之间的代码
case 常量:
//满足条件执行的代码
break;
case 常量:
//满足条件执行的代码
break;
default:
//如果上面case的条件都不满足,执行的代码
break;
}
//switch只判断变量是否等于某一个固定值
3、default可省略
4、自定义常量
c
char c = 'A';
const char c1 = 'A';
switch(c){
case c1:
break;
}
5、贯穿
c
去掉break,但是C#语言去掉的case里不能写代码
int a =1;
switch (){
case 1: //不能写代码
case 2: //不能写代码
case 3: //不能写代码
if( a==1 ){}
break;
}