C语言条件判断选择结构程序设计ppt课件.ppt_第1页
C语言条件判断选择结构程序设计ppt课件.ppt_第2页
C语言条件判断选择结构程序设计ppt课件.ppt_第3页
C语言条件判断选择结构程序设计ppt课件.ppt_第4页
C语言条件判断选择结构程序设计ppt课件.ppt_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 C语言 条件判断 选择结构程序设计 2 本次课程所讲内容 条件判断关系运算符与关系表达式逻辑运算符与逻辑表达式选择结构程序设计if语句条件运算符与条件表达式switch case语句 3 本次课程所讲内容 条件判断关系运算符与关系表达式逻辑运算符与逻辑表达式选择结构程序设计if语句条件运算符与条件表达式switch case语句 4 条件判断 如果明天天气好 我们就去踏青票卖完了的话 我们就看不成球赛了如果能早点下课 我们就可以抢到饭了如果a b 输出a 如果a b 输出b70岁以上的老人和10岁以下的儿童 入公园免票 5 本次课程所讲内容 条件判断关系运算符与关系表达式逻辑运算符与逻辑表达式选择结构程序设计if语句条件运算符与条件表达式switch case语句 6 关系运算符 关系运算是一种 比较运算 即用关系运算符对两个运算量进行比较 例如 关系表达式a bac a v 7 关系运算符及其优先次序 优先级相同 高 优先级相同 低 关系 算术和赋值运算符的优先级关系 例如c a ba b ca bcx a b c 算术运算符 关系运算符 赋值运算符 高 低 9 关系表达式 用关系运算符将若干表达式连接起来的式子 称为关系表达式a b b c a 3 b 5 a b b c2 a b c d 关系表达式的结果 在C语言中 关系表达式的结果为1或0关系表达式成立时 结果为1 表示 真 关系表达式不成立时 结果为0 表示 假 例如3b c a b cb c a 值为0 值为1 值为0 值为1 值为0 11 关系运算的结果可以参与运算若a 3 b 2 c 1d a be a b cf a b cb c b d 1 e 0 f 1 g 2 不推荐使用 12 本次课程所讲内容 条件判断关系运算符与关系表达式逻辑运算符与逻辑表达式选择结构程序设计if语句条件运算符与条件表达式switch case语句 13 有时需要判断的条件不是一个简单的条件 而是一个复合的条件例如a b和x y需要同时满足a b和x y至少有一个条件要满足70岁以上的老人和10人岁以下的儿童 入园免票 14 逻辑运算符 逻辑运算符优先级次序 15 逻辑 算术 关系和赋值运算符的优先级 低 高 16 运算符优先级举例 a b x y a b x y a a b a b x y a b x y a a b 逻辑表达式及其结果 用逻辑运算符将关系表达式或逻辑量连接起来的式子 称为逻辑表达式例如 a b a 0 b 0 在C语言中 逻辑表达式的结果为1或0逻辑表达式成立时 结果为1 表示 真 逻辑表达式不成立时 结果为0 表示 假 逻辑表达式的运算对象 在C语言中 对于逻辑表达式中的每个运算对象某个量的值为0时 表示 假 某个量的值为非0时 表示 真 例如4 a 逻辑表达式的结果为0 真 假 逻辑表达式的结果为0 真 19 逻辑表达式举例 1 a 4 b 5 aa ba b a b a b 值为0 值为1 值为1 值为0 值为1 20 逻辑表达式举例 2 a 4 b 5 x 6 6 y 3 6a b x ya b x y a a b x x y 4 0 2 值为0 值为0 值为0 值为1 值为1 21 逻辑表达式举例 3 5 3 8 4 01 8 4 11 8 31 00 逻辑表达式举例 4 用逻辑表达式来判别某一年是否为闰年 闰年的条件是符合下面条件中的任何一个 能被4整除 但不能被100整除能被400整除用变量year表示某一年 year 4 0 year 100 0 year 400 0 23 逻辑表达式总结 1 逻辑表达式中可以有多个逻辑运算符4 0 2 a a b逻辑表达式的结果只能是0或14 0 2的值为1 表示 真 a 4 b 5 a a b的值为0 表示 假 逻辑表达式总结 2 逻辑表达式中的运算对象可以是单个的量 也可以是表达式a b a b x y a b x y逻辑表达式中的运算对象可以是0和非0 也可以是字符型 实型或指针型4 0 3 6 A B a a b 逻辑表达式总结 3 在逻辑表达式的求解中 并不是所有的逻辑运算符都被执行 有时只需执行一部分运算就可以得出结果a b ca b c设m 1 n 1 a 1 b 2 c 3 d 4 m a b n c d m a b n c d 表达式值为0 m 0 n 0 表达式值为0 m 0 n 0 26 本次课程所讲内容 条件判断关系运算符与关系表达式逻辑运算符与逻辑表达式选择结构程序设计if语句条件运算符与条件表达式switch case语句 27 if语句有三种结构 if结构if else结构ifelse if结构 28 if结构 格式 if 表达式 语句例如if x y printf d x 关系表达式 一个语句 可以有多个语句 29 if结构举例 输入两个实数 按代数值由小到大的顺序输出这两个数分析问题假设两个数是a b比较两个数的大小如果a b a和b的值互换 之后输出a和b的值如果a b 直接输出a和b的值 30 includevoidmain doublea b t printf Pleaseenteraandb scanf lf lf if结构程序举例c6 1 c 将两个实数按照由小到大的顺序输出 程序运行结果 Pleaseenteraandb 3 6 3 2 3 20 3 60 多个语句 需要由花括号 括起来 31 if else结构 格式 if 表达式 语句1 else语句2 例如if x y printf d x elseprintf d y else不能单独使用 如果使用 必须与if配对 if else结构举例 输入矩形的两个边长 求矩形的面积 为了防止误输入 如果输入的边长小于或者等于0 要输出告错信息分析问题要定义三个变量 边长1 边长2 面积如果边长1和边长2大于0 计算矩形的面积并且输出面积的值否则 给出告错信息 33 includevoidmain doublea b area printf 请输入矩形边长a和b scanf lf lf if else结构程序举例c6 2 c 求矩形的面积 逻辑表达式 34 includevoidmain doublea b area printf 请输入矩形边长a和b scanf lf lf if else结构程序举例c6 3 c 求矩形的面积 用两个if语句代替if else语句 不好 35 if else结构举例 编写一段程序 完成以下任务 如右图所示 输入一个实数x 如果2 0 x 6 0 则整数y 1 否则 y 0 36 includevoidmain floatx inty printf Pleaseinputx scanf f 完成上页ppt中的任务 错误 无论x取什么样的值 y的值总是1 if else结构程序举例c6 4 c 37 includevoidmain floatx inty printf Pleaseinputx scanf f 正确 if else结构程序举例c6 5 c 38 if elseif结构 格式if 表达式1 语句1 elseif 表达式2 语句2 elseif 表达式n 1 语句n 1 else语句n 39 if elseif结构 40 if elseif结构举例 编写一段程序 完成以下任务 如下图所示 输入一个实数x如果x 2 0 则实数y 1 0如果 2 0 x 2 0 则y 0 5x否则 y 1 0 41 includevoidmain doublex y printf Pleaseinputx scanf lf if elseif结构程序举例c6 6 c 42 if elseif结构举例 编写一段程序 完成以下任务 43 includevoidmain doublenumber cost printf Pleaseinputnumber scanf lf if elseif结构程序举例c6 7 c 在if语句中 若括号内的表达式的值为0 按 假 处理 若表达式的值为非0 按 真 处理 所以 括号内可以是关系表达式 逻辑表达式或者单个的量或者算数表达式if a b if a b 45 if语句的嵌套 1 语句1 语句2 语句1 语句2 46 if语句的嵌套 2 else总是与它上面最近的未配对的if配对 if if 语句1 elseif 语句2 else语句3 if if 语句1 elseif 语句2 else语句3 47 if语句的嵌套 3 最好使外层if和内嵌if都包含else部分 这样if和else的数量相同 一一对应 不易出错如果if与else的数目不同 可以加花括号来确定配对关系 if if 语句1 else语句2 elseif 语句2 else语句3 if if 语句1 else语句2 48 if语句的嵌套举例 编写一段程序 输入一个实数x 按照如下的公式输出整数y的值 49 includevoidmain doublex inty printf enterx scanf lf if语句的嵌套程序举例c6 8 c 正确 50 includevoidmain doublex inty printf enterx scanf lf if语句的嵌套程序举例c6 9 c 正确 51 includevoidmain doublex inty printf enterx scanf lf if语句的嵌套程序举例c6 10 c 不正确 52 includevoidmain doublex inty printf enterx scanf lf if语句的嵌套程序举例c6 11 c 不正确 53 本次课程所讲内容 条件判断关系运算符与关系表达式逻辑运算符与逻辑表达式选择结构程序设计if语句条件运算符与条件表达式switch case语句 54 条件运算符和条件表达式 1 条件运算符 条件表达式表达式1 表达式2 表达式3 55 条件运算符和条件表达式 2 max a b a b if a b max a elsemax b 56 条件运算符和条件表达式 3 条件运算符优先级高于赋值运算符 但低于算术运算符 关系运算符 逻辑运算符a b a ba b a b 1b a 0 aa b a b a b a b a b a b a b 1 b a 0 a a b a b a b 57 条件运算符和条件表达式 4 条件运算符的结合方向为 自右向左 a b a c d c da b a c d c d 表达式1 表达式2 表达式3的类型可以不同 条件表达式的值的类型取表达式2和表达式3中较高的类型x a b x y 1 1 5 表达式的值的类型为浮点型 条件运算符和条件表达式 5 条件表达式中的表达式2和表达式3还可以是赋值表达式或者函数表达式 includevoidmain inta b printf enteraandb scanf d d temp8 c 59 includevoidmain inta b printf enteraandb scanf d d if a b printf maxisa d n a elseprintf maxisb d n b temp9 c 60 本次课程所讲内容 条件判断关系运算符与关系表达式逻辑运算符与逻辑表达式选择结构程序设计if语句条件运算符与条件表达式switch case语句 61 switch case语句 格式switch 表达式 不能为实型 不能为变量case常量表达式1 语句1 break case常量表达式2 语句2 break case常量表达式n 语句n break default 语句n 1 break switch语句 switch后面括号内的 表达式 可以是任何类型的表达式 值为离散型当表达式的值与某一个case后面的常量表达式的值相等时 就执行此case后面的语句 如果都不匹配 就执行default后面的语句各个case后面的常量表达式的值必须互不相同各个case和default的出现次序不影响执行结果 63 includevoidmain chargrade printf entergrade scanf c 如果grade的值为 B 则输出结果为 70 8460 69 60error 各语句后面没有break语句 c6 12 c 64 includevoidmain chargrade printf entergrade scanf c 如果grade的值为 B 则输出结果为 70 84 各语句后面有break语句 c6 13 c 65 includevoidmain inta 3 b 6 switch a b 1 2 cas

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论