选择分支语句

理解选择分支语句

分支就是有多条路,因为有多条路才去选择走哪一条,有着不一样的条件才去选不一样的路,当条件成立之后才会选择想要走的路,例如,因为肚子饿才选择去食堂吃饱饭,因为上课时间到了才开始上课,等等…它们条件分别是肚子饿和上课时间到了。
alt

写代码如写人生人生有选择,程序运行也有选择,我因为有什么条件,所以需要完成什么工作。

if与switch

在C语言上,选择分支语句分别有if else语句和switch语句,它们如字面的意思。
if else完整为if(表达式)语句;else语句;如图
if

if语句通俗来说就是如果(if)我这判断表达式也可以是一个数值)成立(非0)我就执行语句1,然后退出if语句不再执行后面的else,否则(else)执行语句2,然后退出if语句
switch语句通常用于判断条件有多个结果的情况下,完整形式大概为

switch(整型表达式)
{
case 整型表达式1:语句1breakcase 整型表达式2:语句2break.
.
.
case 整型表达式n:语句n;breakdefault:语句n+1break}

括号内与case后面必须为整型表达式,整型表达式,通常理解为得到的结果为整数,整数的类型通常包括charshortintlong intlong long int,只要运算里面没出现小数,那么整型与整型之间的运算通常只会得到整型,也可以说整型表达式通常是几个整数之间的运算,当然不敢否定的是其他类型运算,只要最后结果被强行转换为整型,那么我也无法否定它不是整数。
switch后面括号里的整型表达式得到的结果通常要与下面case后面的整型表达式一个对应,整型表达式也可以为一个常量,当整型表达式没有对应时,switch语句就会选择default后面的语句运行,default可以当作没有选择的路径后最后的一条小路
breakswitch中也有是至关重要的,没有break时,switch语句就不会跳出语句块,反而会继续执行下面的句子,直到遇到break或者最后一条语句再退出switch
如图所示
switch

注意:switch语句块里面最后一条可以不加break,个人建议加,因为容易乱。

if语句的应用

if语句后判断表达式为数值(非0)为真(是0)为假
判断表达式为数值:

#include <stdio.h>
int main() {
	if (5) {		//为真
		printf("第一次:干饭\n");
	}
	else {
		printf("第一次:内卷\n");
	}
	
	if (0) {		//为假
		printf("第二次:干饭\n");
	}
	else {
		printf("第二次:内卷\n");
	}
	return 0;
}

alt
判断表达式为变量判断:

#include <stdio.h>
int main() {
	int age;
	scanf("%d", &age);
	if (age >= 18) {
		pritnf("年龄为%d,可以谈恋爱\n", age);
	}
	else {
		printf("年龄为%d,不建议谈恋爱\n", age);
	}
	return 0;
}


if…else if…elseif…else的多分支应用:

int main() {
	float score;
	scanf("%f", &score);
	if (score < 60 && score >=0) {
		printf("不及格\n");
	}
	else if(score < 80){
		printf("及格\n");
	}
	else if(score <= 100){
		printf("优秀\n");
	}
	else {
		printf("输入错误\n");
	}
	return 0;
}

在这里插入图片描述

switch的应用

整型表达式为数值,为变量,没有break的时候:

int main() {
	int num = 2;
	switch (2) 
	{
	case 1:printf("第一\n");
	case 2:printf("第二\n");
	case 3:printf("第三\n");
	}
	scanf("%d", &num);
	switch (num) 
	{
	case 1:printf("第一\n"); break;
	case 2:printf("第二\n"); break;
	case 3:printf("第三\n"); break;
	default:printf("NO\n"); break;
	}
	return 0;
}

在这里插入图片描述

后言

实在是写不下去了,如果代码有错或者哪里的表达出错,请见谅,图片没有return的话,不干扰,但是建议加上。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值