最简单的C程序设计.ppt_第1页
最简单的C程序设计.ppt_第2页
最简单的C程序设计.ppt_第3页
最简单的C程序设计.ppt_第4页
最简单的C程序设计.ppt_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

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

文档简介

1、第5章 选择结构程序设计,学习内容,选择结构是C语言程序的三种基本结构之一 作用:根据所指定的条件是否被满足,在给定的若干组操作中,选择一组操作执行 如何来表达指定的条件以及如何用C语句来实现选择结构? C语言用关系表达式或逻辑表达式表示条件,用if语句或switch语句实现选择结构,6/20/2020,2,6/20/2020,3,1966年提出用三种基本结构可以表示所有算法 顺序、选择、循环,5.1 关系运算符与关系表达式,关系运算是逻辑运算中最简单的一种,也称为“比较运算”,即将两个值进行比较,判断其结果是否符合给定的条件 如,“num 0”是一个关系表达式,其中“”是一个关系运算符 该表

2、达式的含义为,当num是一个正数的时候,关系表达式的值为“真”(即“条件满足”);当num是一个负数或者0的时候,关系表达式的值为“假”(即“条件不满足”),6/20/2020,6,1. 关系运算符,C语言提供6种关系运算符。 (1) (大于) (4) = (大于或等于) (5) = (等于) (6) != (不等于) 注意:“等于”运算符是“=”,而不是“=”。例如, a=18 该表达式是赋值表达式 a=18 该式是关系表达式 (变量a是否等于18),6/20/2020,7,2. 关系运算符的优先级,与不同的算术运算符可能具有不同的优先级一样,不同的关系运算符也具有不同的优先级 在关系运算符

3、中,前四个(“”和“=”) 优先级相同,后两个(“=”和“!=”) 优先级相同。但前四个关系运算符的优先级高于后两个关系运算符 如,计算a b = c;先判断“a b”是否成立,然后,进一步判断“(a b) = c”是否成立 3种运算符优先级从高到低为: 算术运算符 关系运算符 赋值运算符 结合方向是“自左至右”。,6/20/2020,8,3. 关系表达式,用一个关系运算符将两个表达式(可以是算术表达式、逻辑表达式、赋值表达式或字符表达式) 连接起来的式子,称为关系表达式 如,a b,a + b 5,a b) =(c 0”的值为“真”。而关系表达式“a + 1 n2 表达式的值:0。 (n1n

4、2)!=n3 表达式的值:1。 n1 ( num2 + num3 )的值为0, 因为表达式的值为“逻辑假” ( num2 + 27 ) = num3的值为1, 因为表达式的值为“逻辑真”,4. 关系表达式的值,4. 关系表达式的值,关系表达式的值,还可以参与其它种类的运算,例如算术运算、逻辑运算等。 (n1 5)的值为2, 2 +(3 = 5) 的值为3,6/20/2020,12,5.2 逻辑运算符与逻辑表达式,用逻辑运算符将关系表达式或逻辑量连接起来的式子,称为逻辑表达式,6/20/2020,13,要描述“5=1 n=0) a=25.28; b=52.78; !a 表达式的值: 0 !(A)

5、 表达式的值: 0 a11.564 temp= a+6b ,写出满足要求的表达式,1、ch是小写英文字母 2、X为零 3、 X不为零 4、X、Y同时为零 5、X、Y不同时为零,6/20/2020,24,1、ch=a printf(n input two numbers: ); scanf(%d%d, ,6/20/2020,37,例5.4: 输入两个整数,输出其中的大数。 main() int a, b; printf(input two numbers: ); scanf(%d%d, ,6/20/2020,38,例5.5:从键盘输入两个数,按升序输出两个数 #include main() fl

6、oat a, b, t; scanf(%f,%f, ,6/20/2020,39,6/20/2020,40,1. if语句的形式三,6/20/2020,41,(1) 语句格式 if (表达式1) 语句组1 else if (表达式2) 语句组2 else if (表达式3) 语句组3 else if (表达式4) 语句组4 else 语句组5 若 语句组5 又是一条 if 语句,整个语句最少是一个6个分支的多分支 if 语句。,第三种if语句的含义,第一步,表达式1的值为“真”(即非零) 时,执行语句组1,其他的else语句不用判断,程序直接转到if语句的外边 第二步,i=2 第i步,表达式i的

7、值为“真”时,执行语句组i,表达式i以后的表达式不用判断,程序直接转到“其他语句组”处 若表达式i的值为“假”,不执行语句组i 若所有的表达式的值都为“假”,转到“其他语句组”处,6/20/2020,42,6/20/2020,43,注意事项,(1) 三种形式的if语句中,if后面的小括弧里面都有“表达式”,一般为逻辑表达式或者关系表达式 在执行if语句时,先求解表达式。若表达式的值为0,按“逻辑假”处理;若表达式的值为非零,则按“逻辑真”处理,执行指定的语句 (2) 第二、三种形式的if语句中,都包含一个else子句。else子句不能单独使用,它是if语句的一部分,与if配对使用 (3) 在i

8、f和else后面可以含有一个语句,此时,包含该语句的一对花括弧“”可以省略;也可以含有多个语句,这些语句组成一个复合语句,此时包含这些语句的花括弧“”不能省略 (4) 每一组花括弧中,“”的后面不需要加分号“;”,6/20/2020,44,3. if语句的嵌套,在一个if语句中又包含一个或多个if语句的称为if语句的嵌套 if语句嵌套的一般形式为 if(表达式1) if(表达式11) 语句组11; else 语句组12; else if(表达式21) 语句组21; else 语句组22; ,6/20/2020,45,注意,if语句嵌套时,需要注意else子句与if语句的匹配 匹配的原则是: else子句与在它上面且距它最近的尚未匹配的if配对,6/20/2020,46,6/20/2020,47,6/20/2020,48,6/20/2020,49,条件书写形式,If(x2) if(x1) y=x+1; else y=x+2; else if(x=0 ,例,编写程序,输入三个整数,作为三个线段的边长,判断这三个线段能否构成三角形,如果能构成三角形,则指出其是哪一类三角形(锐角三角形、直角

温馨提示

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

评论

0/150

提交评论