【C语言】条件判断语句(分支语句)

条件判断语句也叫分支语句,就是选择结构,它可以根据你所设置的不同的选项,输出对应你所设置的结果。

它分为if语句和switch语句。

1.if语句

1.基本形式(单分支)

if(表达式)
    语句;

表达式成立时,语句为真,则语句执行。

2.else语句

if(表达式)
    语句1;
else
    语句2;

3.{}的使用

if语句后面默认只能控制一条语句

不管表达式是否为真,语句2都会输出,就是因为if只控制一条语句。如果想让if同时控制两条或者多条语句,就可以使用{}。

4.嵌套if(else与另一个if连用,构成多重判断)

if(表达式1)
    语句1;
else if(表达式2)
    语句2;
……
else
    语句;
//要求输入一个整数,判断输出的是0,还是正数或者负数
int main()
{
	int num = 0;
	scanf("%d", &num);
	if (num == 0)
	{
		printf("%d 是0\n");
	}
	else if (num > 0)
	{
		printf("%d 是正数\n");
	}
	else
	{
		printf("%d 是负数\n");
	}
	return 0;
}

还有两种形式

嵌套在前面的else语句中

if(表达式1)
    语句1;
else
{
    if(表达式2)
    else
}

嵌套在前面的if语句中

if(表达式1)
{
    if(表达式2)
    else
}
else

5.悬空else

如果有多个if和else,else总是和最接近的if相匹配。

如上代码并没有按想的输出100,这是因为第一个if不成立,后续语句没有执行,正确的代码应该如下。

2.switch语句

是一种特殊的if…else语句,用于判断条件有多个结果的情况,它改写了多重else if。

1.形式

switch(expression)
{
    case value1:statement;
    case value2:statement;
    default:statement;
}

根据表达式expression不同的值,执行相应的case分支。如果找不到对应的值,就执行default分支。

其中,expression必须是整型表达式,case后的值必须是整型常量表达式。

输入1~5,输出工作日;输入6~7,输出休息日。

#include<stdio.h>
int main()
{
	int day = 0;
	scanf("%d", &day);
	switch (day)
	{
	case 1:
	case 2:
	case 3:	
	case 4:
	case 5:
		printf("工作日\n");
	case 6:
	case 7:
		printf("休息日\n");
		break;
	return 0;
}

break表示跳出循环。

default:如果switch后的表达式中的值无法匹配代码中的case语句时,用到default。

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值