C语言--分支结构

分支结构

一:if条件语句

1.if语句第一种形式

    //括号内写条件表达式
    if (5 > 3) {
        //如果表达式为真,则执行大括号内的语句
        printf("你说的是真的!\n");
    }


例一:

    //定义一个字符型变量
    char sex;
    //输入C的值
    scanf("%c", &sex);
    //进行判断,如果是M(将常量写在==的前面,变量写在==的后面)
    if ('m' == sex) {
        //如果条件成立,则输出男性
        printf("男性\n");
    }

    

2.if语句第二种形式  

例一  

    //定义一个字符型变量
    char sex;
    //输入C的值
    scanf("%c", &sex);
    //进行判断,如果是M(将常量写在==的前面,变量写在==的后面)
    if ('m' == sex){
        //如果条件成立,则输出男性
        printf("男性\n");
    }else{
        //如果条件不成立,则输出女性
        printf("女性\n");
    }
  

例二    

    

//定义一个整型变量
    int year = 0;
    //输入年份
    scanf("%d", &year);
    //条件1为能被400整除
    BOOL condition1=(0 == year % 400);
    //条件2为能被4整除但是不能被100整除
    BOOL condition2=(0 == year % 4) && (year % 100 != 0);
    进行判断,
    if (condition1 || condition2) {
        //如果条件1和条件2满足一个,则输出是闰年
        printf("%d年是闰年!\n", year);
    }else{
        //否则输出是平年
        printf("%d年是平年!\n", year);
    }

  

  

3.if语句第三种形式    

例一

    

// 定义一个变量存储年份信息
    int year = 0;
    // 输入年份
    scanf("%d", &year);
    // 判断
    if (year % 400 == 0) {
        // 如果条件满足,则输出闰年
        printf("闰年\n");
    
    }else if (year % 4 == 0 && year % 100 != 0){
        // 如果条件1不满足,但是满足条件2,则输出闰年
        printf("闰年\n");
        
    }else{
        // 如果条件1和条件2都不满足,进入else,输出不是闰年
        printf("不是闰年\n");
    }
    

例二    

    

// 定义一个char型的变量
    char c = 0;
    //输入c的值
    scanf("%c", &c);
    //进行判断
    if (c >= 'A' && c <= 'Z') {
        //满足条件,输出大写字母
        printf("大写字母\n");
    }else if(c >= 'a' && c <= 'z'){
        //条件满足,输出小写字母
        printf("小写字母\n");
    }else if(c >= '0' && c <= '9'){
        //需要注意数字要加单引号
        printf("数字\n");
    }else{
        //条件都不满足,则输出其他字符
        printf("其他字符\n");
    }

    

二:(条件表达式) ? 语句1 : 语句2; 

例一: 

    //定义两个变量a,b
    int a = 4, b = 9;
    //定义一个变量来保存最大值
    int max = a > b ? a : b;
    //定义一个变量来保存最小值
    int min = a < b ? a : b;
    //输出max,验证结果
    printf("max : %d\n", max);
    //输出min,验证结果
    printf("min : %d\n", min);
   

例二:    

    //定义三个整型变量
    int a, b, c;
    //输出提示
    printf("input three number:");
    //输入三个数
    scanf("%d%d%d", &a, &b, &c);
    //定义一个变量max,存储最大值
    int max = a > b ? (a > c ? a :c) : (b > c ? b : c);
    //输出最大值
    printf("max : %d\n", max);
    //定义一个变量min,存储最小值
    int min = a < b ? (a < c ? a :c) : (b < c ? b : c);
    //输出最小值
    printf("min : %d\n", min);

三.switch条件语句

例一

    //定义一个变量,用来存储电话信息
    int number = 0;
    //输入电话号码
    scanf("%d",&number);
    //开关语句形式
    switch (number) {
        case 110:
            printf("警察局\n");
            break;
            //break的作用,跳出switch语句
            //如果不加break,当选择一个case后将不再做任何判断,直接执行下面的语句
        case 120:
            printf("急救中心\n");
            break;
        case 119:
            printf("消防队\n");
            break;
            //如果不满足各个case,则执行default内的语句
        default:
            printf("没这个号码,\n");
            break;
    }

   

例二  

    int opt = 0;
    printf("select character:(format:21)");
    scanf("%d", &opt);
    
    switch (opt) {
        case zhanshi:
            printf("战士\n");
            break;
        case Paladin:
            printf("圣骑\n");
            break;
        case DeathKnight:
            printf("死骑\n");
            break;
        case 21:
            printf("猎人\n");
            break;
        case 22:
            printf("萨满\n");
            break;
        case 31:
            printf("盗贼\n");
            break;
        case 32:
            printf("德兽伊\n");
            break;
        case 33:
            printf("武僧\n");
            break;
        case 41:
            printf("法师\n");
            break;
        case 42:
            printf("武士\n");
            break;
        case 43:
            printf("牧师\n");
            break;
        default:
            printf("no character\n");
            break;
    }


    



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值