c语言程序设计 第02章.ppt



《c语言程序设计 第02章.ppt》由会员分享,可在线阅读,更多相关《c语言程序设计 第02章.ppt(27页珍藏版)》请在装配图网上搜索。
1、第二章 选择结构程序设计,2.1* 关系运算符和关系表达式 2.2 * 逻辑运算符和逻辑表达式 2.3 * if 语句 2.4 switch 语句 2.5 程序举例,,,,,关系运算符(共6种) 用于比较两个数据的大小,被比较的数据可以是数值型,也可以 是字符型等。,2.1 关系运算符和关系表达式, (大于) = (大于等于) = = (等于) 优先级相同(低) != (不等于) *优先级别:低于算术运算符,但高于赋值运算符。 结合方向:自左而右。,,,关系表达式 用关系运算符连接的两个表达式称为关系表达式。如: 3==3+53+2<4 关系表达式的值:1 或
2、0 (在C中,没有逻辑常量) *逻辑真 整型数据 1 *逻辑假 整型数据 0,例1:设a=3, b=2, c=1 则: ab 其值为? c == a b 其值为 ?,1,1,例2: 3==3+53+2<4--- --- --- ---,3==85<4,3==1<4,3==1,0,说明 *(1)区别: == 条件运算符 = 赋值运算符 (2)字符数据的比较按其ASCII码进行。 d E,,2.2 逻辑运算符和逻辑表达式,逻辑运算符 ! 逻辑非 高 (单目运算符,自右而左) printf( input score: ); scanf(%f, ,if(e1)
3、 if(e2) 语句1 else 语句2 else if(e3) 语句3 else 语句4,2、if语句的嵌套,if(e1) if(e2) 语句1 else 语句2 else if(e3) 语句3,说明 if与else配对问题,如: if(e1) if(e1) if(e2) if(e2) 语句1 语句1 else else 语句2 语句2,*C语言规定, else总是与上面最近的if配对。 若要改变这种默认的配对关系,在相应的if语句上加花括号。,,,例 有一函数,编一程序,输入一个x值
4、,输出y值。,程序1: main( ) int x,y; scanf(%d, scanf(“%d”, ,因此,在执行完一个case分支后,要想跳出switch语句,转到switch语句的后续语句去执行,应在下一个case开始前,插入一个break语句。,break;,若输入 1,说明 4.多个case的后面可以共用一组执行语句。 switch(n) case 1: case 2: case 3: x=10;break; ,5.switch语句允许嵌套。 switch( ) switch( ) ,例 根据考试成绩的百分制分数段打印出相应的等级。,main(
5、) float score ; int n; printf( input score: ); scanf(%f, ,#include main( ) float score ; printf( input score: ); scanf(%f, ,思考一下这条语句的作用?,例 根据考试成绩的等级打印出百分制分数段。,main( ) char grade ; printf( input AE: ); scanf(%c, ,程序举例 例 通过条件语句嵌套实现 在直角坐标系中有一个以原点为中心的单位圆,今任给一点(x,y),试判断该点是在单位圆内、单位圆上,还是单位圆外?若在单位圆外,那
6、么是在x轴的上方,还是在x轴的下方,还是在x轴上?,#include “math.h” main( ) float x , y , z; scanf(%f,%f, printf(% .2f ,% .2f,x,y); if (z=0) if (y0) printf(在单位圆外,x轴上方n); else printf(在单位圆外,x轴上n); else printf(在单位圆外,x轴下方n); ,,,,,main( ) int c; scanf(%d, 如果通过键盘输入分别输入:0, 1 ,2时,最后的输出结果分别为?,222,1111,00,作 业 课后习题18,要求: 1.15写书上 2.上机前,将68题的程序写在作业本上 3.上机时,调试程序直到调试出结果,
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。