c语言之分支语句

本文详细介绍了C语言中if、if...else、if...elseif...else、switch和default语句的用法,通过实例说明如何进行条件判断和多分支决策,包括年龄分段、星期几的输出以及默认情况处理。
摘要由CSDN通过智能技术生成

1. if语句——分支语句(选择语句)

例1:判断一个人是否未成年

#include<stdio.h>

int main()
{
    int age = 0;//初始化
    //输入
    scanf("%d", &age);
    if (age < 18)//if后面不加分号。
    {
        printf("未成年\n");//如果age<18打印未成年
    }
    return 0;
}

2.if...else 语句

例2:判断一个人是否成年

int main()
{
    int age = 0;//初始化
    //输入
    scanf("%d", &age);
    if (age < 18)
    {
        printf("未成年\n");//如果年龄小于18打印未成年
    }
    else//当出现两个if时else与离它最近的if匹配
    {
        printf("成年\n");//否则打印成年
    }
    return 0;
}

3.if...else if...else语句——多分支语句

例3:判断一个人的年龄属于什么年龄段

#include<stdio.h>

int main()
{
    int age = 0;//初始化
    //输入
    scanf("%d", &age);
    if (age >= 0 && age < 14)//如果表达式为真则执行,0表示假非零表示真。在写年龄区间时必须使用&&(逻辑与)操作符,不可以写成0=<age<14。
    {
        printf("少年儿童\n");//在0~14岁之间打印少年儿童
    }
    else if(age >= 14 && age < 35)
    {
        printf("青年人\n");//在14~35岁之间打印青年人
    }
    else if(age >= 35 && age < 65)
    {
        printf("中年人\n");//在35~65岁之间打印中年人
    }
    else
    {
        printf("老年人\n");//其余年龄打印老年人
    }
    
    return 0;
}

4.switch语句

例4:实现输入1 输出星期一,输入2输出星期二,输入3输出星期三,输入4输出星期四,输入5输出星期五,输入6输出星期六,输入7输出星期日。

#include<stdio.h>

int main()
{
    int day = 0;//初始化
    //输入
    scanf("%d", &day);
    switch(day)//switch后面不加分号switch(整形表达式)
    {
    case 1://case语句是语句项,case后面必须是整形表达式。
        printf("星期一\n");//若输入值为1则打印星期一
        break;//如果不搭配break,输入一个数值后,整个数值后面所有的printf都会被打印。switch语句必须搭配break才能实现真正的分支。
    case 2:
        printf("星期二\n");
        break;
    case 3:
        printf("星期三\n");
        break;
    case 4:
        printf("星期四\n");
        break;
    case 5:
        printf("星期五\n");
        break;
    case 6:
        printf("星期六\n");
        break;
    case 7:
        printf("星期日\n");
        break;
    }
    return 0;
}

例5:输入1 - 5,输出的是“weekday”;输入6 - 7,输出“weekend”。

#include<stdio.h>
int main()
{
    int day = 0;
    scanf("%d", &day);
    switch (day)
    {
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
        printf("weekday\n");//多个case语句可以与一个printf()语句匹配。
        break;//break的实际效果时把语句列表划分为不同的分支部分
    case 6:
    case 7:
        printf("weekend\n");
        break;
    }

    return 0;
}

5.default语句

如果表达的值与所有的case都不匹配时程序并不会终止和报错。如果想要提示选择错误可以使用default语句,default语句可以写在任何一个case可以出现的位置,当switch表达式的值与case的值不匹配时,这个case句子后面的default语句就会执行。每个switch语句中只能出现一条default语句。

例6:输入1 - 5,输出的是“weekday”;输入6 - 7,输出“weekend”。

#include<stdio.h>

int main()
{
    int day = 0;
    scanf("%d", &day);
    switch (day)
    {
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
        printf("weekday\n");//多个case语句可以与一个printf()语句匹配。
        break;//break的实际效果时把语句列表划分为不同的分支部分
    case 6:
    case 7:
        printf("weekend\n");
        break;
    default:
        printf("选择错误\n");
        break;
    }
    return 0;
}

  • 13
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值