- 3
- 0
- 约 27页
- 2017-08-26 发布于河南
- 举报
C语言程序设计 课件制作: 贵州新科电脑培训中心 第四章 选择结构 通常: 计算机程序是按顺序结构执行的。然而,在许多情况下,程序执行时需要依赖于用户输入的数据或表达式的值。为了处理计算机所遇到的各种不同情况,c语言提供了可以进行逻辑判断的选择语句,由选择语句构成的选择结构,将根据逻辑判断的结果决定程序的不同流程。 本章要点 1、关系运算和逻辑运算 -逻辑值 -关系运算符和关系表达式 -逻辑运算符和逻辑表达式 2、If语句和用if语句构成的选择结构 -if语句 -嵌套的if语句 3、条件表达式构成的选择结构 4、switch语句和用switch语句和break语句构成的选择结构 -switch语句的执行过程 -在switch语句体中使用break语句 -语句标号和goto语句 4-1 关系运算和逻辑运算 逻辑值:“真”和“假”(用“1”和“0”来表示) 判断一个条件是否成立,成立则返回值为“真”,不成立则返回结果为“假” 关系运算(比较运算):将两个数进行比较,判断比较的结果是否符合指定的条件 关系运算符 关系表达式 由关系运算符和运算对象组成 运算对象是任意合法的表达式 关系表达式的值为逻辑值 一般形式为:( 表达式 ) 关系运算符 (表达式) 注意: 1、不能将赋值号“=”用作关系运算符“==” 2、尽量避免使用浮点数进行“==”或“!=”的比较 逻辑运算符 逻辑表达式 由逻辑运算符和运算对象组成 运算对象是任意合法的表达式 一般形式为: 表达式 逻辑运算符号 表达式 用关系表达式和逻辑表达式描述复杂的关系 例1:能被7或11整除,但不能同时被7或11整除的表达式怎么写? 例2:表示水仙花数的表达式怎么写?(假如我们用X来表示该数) 说明: 水仙花数是指这样的一个数:它的个位数的立方加上十位数的立方加百位数的立方之和,恰好等于这个数本身。比如:153=13+53+33 例2:判别某一年是否为闰年。 判断闰年的条件为下面的两者之一: (1)能被4整除但不能被100整除; (2)能被400整除。 假设我们用一个变量y来表示该年份,则表达式该如何书写? 4-2 if语句和用if语句构成的选择结构 If 语句 不含else子句的if语句 含else子句的if语句 不含else子句的if语句 语句形式: if (表达式) 语句; 例如: if (ab) {t=a;a=b;b=t; } 说明: if是关键字 表达式是实现逻辑判断的条件 圆括号不能少 圆括号后不能加“;” 可用{}将多条语句组成“一条语句” 实例4.1 :解释执行过程 含else子句的语句 一般形式: If (表达式) 语句1; else 语句2; 说明: - if和else是关键字 - “ 语句1”称为if子句 - “ 语句2”称为else子句 -else必须和if配合使用 实例4.3 解释执行过程 If语句说明: 1、表达式为任意合法的c语言表达式 2、无论是否有else子句,if子句的“;”都不能省略 嵌套的if语句: If和else子句中又包含了if和else子句 可以嵌套在if子句中,也可以嵌套在else子句中 分类: 1、在if子句中嵌套具有else子句的if语句 嵌套的if语句: 2、在if语句中嵌套不含else子句的if语句 嵌套的if语句: 3、在else子句中嵌套if语句 b:嵌套if语句不带else If (表达式1) 语句1; else if (表达式2) 语句2; 建议: 通过比较a和b两种形式可以看出,内嵌在else子句中的if语句无论是否有else子句,在语法上都不会引起误会。因此,我们在书写内嵌的if语句时,尽量把内嵌的if语句嵌在else子句中。 阶梯型的嵌套if语句:不断在else子句中嵌套if语句 第一种写法: If (表达式1) 语句1; else if (表达式2) 语句2; else if (表达式3)
原创力文档

文档评论(0)