分支与循环 1

 序 

C语言是结构化的程序设计语言,这里的结构指的是顺序结构、选择结构、循环结构,C语言是能够实 现这三种结构的,其实我们如果仔细分析,我们日常所见的事情都可以拆分为这三种结构或者这三种 结构的组合。

我们可以使用用if 、 switch 实现分支结构,使用 for 、 while 、 do while 实现循环结构

在C语言中,选择结构用于根据特定条件,从而执行不同的代码路径。

1. if 语句实现选择结构

1. if语句的语法形式

if ( 表达式 )
 语句;

表达式成立(为真),则语句执行,表达式不成立(为假),则语句不执行。

在C语言中,为假,非0 表示真。如:

判断一个数是否为奇数,如果是则输出“ a为奇数 ”,否则程序执行结束。

这里输入 5,输出 a为奇数。

2. if,else 和 else if

如果一个数不是奇数,我们也想将信息打印到屏幕上。就可以使用 if ... else 语句。

输入 8,输出 a为偶数。

如果有其它分支选项需要进行判断,我们可以在 if 语句后面添加一条或多条 if else 语句,如:

输入 31,输出 青年

3.分支中包含多条语句

  if , else以及 else if 语句默认都只控制⼀条语句.

                   图1                                                                               图2

如图1,图2中,不论 if 语句的条件是否满足, printf("goodbye"); 这条都会执行,即这条语句是独立存在的。

因此,想要控制多条语句,就需要在 if,else或者else if后加上大括号 ('{ }') ,如:

就算只有一条语句,也可以在加上大括号,以提高代码的可读性。

4.if语句的嵌套 与 else 的悬空

1.if语句的嵌套

我们可以在 if 语句中,对条件语句按需求进行嵌套,达到多层分支筛选的目的。

如:要求输⼊⼀个整数,判断输⼊的整数是0,还是正数或者负数。

对于else if(表达式)语句中,else后的部分,即这里蓝色背景的部分。实际就是嵌套了一个 if 语句在上一个 if ... else  中。

也可以写成下列形式:

又如:输入一个整数,如果是正数,再判断是奇数还是偶数,并输出;如果不是正数则输出:非负数。

 

2.else的悬空

看一下下面这份代码。

运行代码可以看到,没有任何内容打印。

1.这是因为第二个 if语句是嵌套在第一个 if 语句中的,第一个 if 语句条件显然不满足,第二个 if 语句就没有机会执行。

而 else 是与它上面的第一个 if 进行匹配,即:

2.在这段程序中,else 是与第二个 if 进行匹配,而第二个 if 语句都没机会执行,与之相匹配的 else 语句也不会执行。最终程序执行结束,没有任何内容打印。

我们可以根据需求对这份代码进行简单修改。如:我们将 else 与第一个 if 进行匹配。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值