掌握C语言分支,成就编程巅峰!

生活中我们总会做出各式各样的选择与一些需要重复去做的事,同样C语言程序在运行过程中也会遇见此类问题,由此两分支三循环就应运而生。

if分支

if

if的语法形式如下:

if ( 表达式 )
 语句;

流程图:
流程图C语言中0表示假,非0表示真 ,根据上面的表达形势和流程图可以知道,当表达式为0时直接结束,若不为0则在执行完if的第一条语句后结束。

else

可生活中不止有对,还有错呢!。那如果在程序运行过程中需要判断对错的情况该怎么表示呢?
这个时候需要用到 if…else…语句,表达形势如下:

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

流程图:流程图根据上面的表达形势和流程图可以知道,当表达式为0时就执行else后的语句2,非0时执行if语句后的语句1。
另外关于else还有特别需要注意一点的是,在有多个if…else…的情况下,else总是与同最近的一个if进行匹配

if的嵌套使用

if…else…中,else可以与if连用构成多重判断。
举个栗子,输入一个数判断是为正数还是为负数或者是0:
在这里插入图片描述上图中的else if 就是嵌套在前⾯的 else ⼦句中的,构成了嵌套的if语句。

分支后执行多条语句

C语言中if…else…默认只控制它们之后的一条语句,即第一个 ; 结束
举个栗子,请看下面这段代码,要是输入小于6的值,那程序会不会打印文字到屏幕上:在这里插入图片描述一般人是不是会粗心的以为不会在屏幕打印任何东西但实际却是在屏幕上打印出字符 666 这是运行结果图:
在这里插入图片描述如果想要控制两条以上语句,我们需要用到 {} (整个大括号里面所有的代码,被称作:程序块,或者复合语句)大括号这个法宝将代码括起来,这个时候就不会再出现上面的情况。
![在这里插入图片描述](https://img-blog.csdnimg.cn/7dc3e08952124004838f18a345e40c87.jpeg#pic_center

switch分支

switch

C语言中处理if…else…语句外,还提供了特殊的 if…else…结构switch语句,那switch涉及到那些相关的知识呢?下面让我们来一探究竟。
switch常用于判断需要多重结果的情况,它把多重else…if…语句变得可读性更高,易用性更好。
switch语法形式:

switch (整形表达式) {
 case 整形常量表达式: 语句; break;
 case 整形常量表达式: 语句; break;
 default: 语句; break;
}

特别需要注意的是:
1:case与后面的整形常量表达式一定要有一个空格,且常量表达式后要有 : 这个符号 。
2:每一个case分支执行完语句后都需要一个break,作为分支的结束条件,若没有的话则会一直执行下去直到遇到break语句或者switch语句结束。
3: 在写switch时,不要忘了加上{} 大括号,把所有需要执行的语句放到大括号里。

default

在用switch的过程中,我们可能时常会遇到整形表达式得出的结果无法匹配 case里的整形常量表达式,这个时候就会用到default匹配剩下来的结果。
举个栗子:输入 1 为投票 0 为弃票 其他为输入错误

#include <stdio.h>
int main()
{
	int vote = 0;
	scanf("%d",&vote);
	switch (vote)
	{
	   case 1://当输入的值为1是,打印投票成功 然后结束switch
		   printf("投票成功!\n");
		   break;
	   case 0://当输入的值为0是,打印弃掉一票 然后结束switch
		   printf("弃掉一票!\n");
		   break;
	   default ://若输入的为其他值就来到这打印 投票错误请重新投票然后结束switch
		   printf("投票错误请重新投票");
		   break;
	}
	return 0;
}

此外default语句不一定要放到最后面,它可以放在switch里的任意位置都行,运行结果不会因此改变。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值