C#条件分支语句(以及对应例子)

流程控制: 不管在简单的程序还是复杂的程序,一般包含三种结构:顺序结构,选择结构,循环结构。 顺序结构:默认就是顺序结构,就是说程序自上而下依次按照顺序执行。 选择结构:程序有条件(有选择)的去执行某些代码(单分支if 双分支if-else 多分支if-elseif-……-else switch-case) 循环结构:程序有条件的重复执行某些代码(for循环<foreach> while循环<do-while>

if

注意语法结构:

  • 单分支 if

  • 双分支 if else

  • 多分支 if else if else if 适合条件为判断同一变量的不同区间

格式: 单分支:if+tab if(条件){成立:执行代码} 双分支:if(条件){成立:执行代码1}else{不成立:执行代码2}

单分支和双分支
// 1.输入一个性别(男/女),输入是个男性还是女性。
string info = "女";
if (info == "男")
{
    Debug.Print("是个男性");
}
else
{
    Debug.Print("是个女性");
}
// 2.输入性别(男/女)和年龄(数字0-150),输出是否是成年/未成年/男性/女性。
string info = "女";
int age = int.Parse("25");
if (info == "男")
{
    if (age > 20)
    {
        Debug.Print("成年男性");
    }else
    {
        Debug.Print("未成年男性");
    }
}else
{
    if (age > 20)
    {
        Debug.Print("成年女性");
    }
    else
    {
        Debug.Print("未成年女性");
    }
}
​
if (info == "男" && age >= 20)
{
    Debug.Print("成年男性");
}else
{
    Debug.Print("不是成年男性");
}
多分支

格式: 多分支:if(条件){成立:执行代码1}elseif(条件){成立:执行代码2}……else{都不成立:执行代码n} 注意:1.判断条件是有递进关系 2.一旦一个分支执行了其他分支都不执行

// 3.从键盘输入你的成绩,大于90的称为学神,大于80的称为学霸,大于70的称为学生,大于60的称为学渣,其他退学
int score = int.Parse("88");
if (score >= 90)
{
    Debug.Print("学神");
}
else if (score >= 80)
{
    Debug.Print("学霸");
}
else if (score >= 70)
{
    Debug.Print("学生");
}
else if (score >= 60)
{
    Debug.Print("学渣");
}else
{
    Debug.Print("退学");
}
// 4.从键盘输入三个数x,y,z,分别求出最大值、最小值、和中间值
int x = int.Parse("3");
int y = int.Parse("8");
int z = int.Parse("5");
int max, min, mid, temp;
if (x > y && x > z)
{
    max = x;
}
else if (y > x && y > z)
{
    max = y;
}
else
{
    max = z;
}
Debug.Print("最大值:" + max);
if (x < y && x < z)
{
    min = x;
}
else if (y < x && y < z)
{
    min = y;
}
else
{
    min = z;
}
Debug.Print("最小值:" + min);
mid = x + y + z - max - min;
Debug.Print("中间值:" + mid);
/*
int max, temp;
if (x > y)
{
    max = x;
    temp = y;
}else
{
    max = y;
    temp = x;
}
// 上面执行完:max 是 x 和 y 中较大的,temp 是 x 和 y 中较小的
if (z > max)
{
    Debug.Print("最大值:" + z);
    Debug.Print("中间值:" + max);
    Debug.Print("最小值:" + temp);
}
else
{
    Debug.Print("最大值:" + max);
    if (z > temp)
    {
        Debug.Print("中间值:" + z);
        Debug.Print("最小值:" + temp);
    }else
    {
        Debug.Print("中间值:" + temp);
        Debug.Print("最小值:" + z);
    }
}
*/

switch

switch-case:switch + tab

用处:适合和有限个值做一一匹配

if和switch比较:

if一般用在区间比较 switch一般用在给定有限个具体的值比较

注意点:

①break不能省略(中断,打断) ②case后面的值可以无序,但不能重复 ③多个case可以共用一段代码 ④default 可要可不要(都匹配不上,就执行default)

比如:

console.Writeline("请输入字母");
string  变量=console.Readline();
switch (变量)
{   
    case 常量:
    case 常量:
        Debug.Print("你输入了 a 或者 b");
        break;
    case 常量:
        Debug.Print("你输入了 c");
        break;
    case 常量:
        Debug.Print("你输入了 d");
        break;
    default:
        Debug.Print("你输入了其他字母");
        break;
}

注意:

常量!!!只能写一个值 不能写一个范围 不能写条件运算符 逻辑运算符

例子如下:

console.Writeline("请输入字母");
string  info=console.Readline();
switch (info)
{
        //输入a时当case "a":无代码会输出靠后的代码(输入a后控制台输出"你输入了 a 或者 b")
    case "a":
    case "b":
        Debug.Print("你输入了 a 或者 b");
        break;
    case "c":
        Debug.Print("你输入了 c");
        break;
    case "d":
        Debug.Print("你输入了 d");
        break;
    default:
        Debug.Print("你输入了其他字母");
        break;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值