第四讲 C语言 表达式和条件语句.ppt_第1页
第四讲 C语言 表达式和条件语句.ppt_第2页
第四讲 C语言 表达式和条件语句.ppt_第3页
第四讲 C语言 表达式和条件语句.ppt_第4页
第四讲 C语言 表达式和条件语句.ppt_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

表达式和条件语句,3.1表达式3.2C语言中的算法3.3条件(if)语句3.4三目运算符3.5条件(switch)语句,3.1表达式,表达式由运算符、常量及变量构成。C语言的表达式基本遵循一般代数规则。例:表达式是由下面的操作符或者符号组成=a=5Trueifaisgreaterthanorequalto5=a=5Trueifaequals5a5Trueifaisgreaterthan,3.1表达式,1)表达式中的类型转换混合于同一表达式中的不同类型常量及变量,应均变换为同一类型的量。C语言的编译程序将所有操作数变换为与最大类型操作数同类型。,3.1表达式,例:转换规则:a)所有char及shortint型转为int型,所有float转换为double。b)如操作数对中一个为longdouble,另一个转换为longdouble。否则一个为double,另一个转为double。否则一个为long,另一个转为long。否则一个为unsigned,另一个转为unsigned。,3.1表达式,2)构成符cast()一般形式为:(type)expression通过称为cast的构成符“()”强迫一表达式变为特定类型。例:(float)x/2,3.1表达式,3)空格与括号为了增加可读性,可以随意在表达式中插入tab和空格符。冗余的括号可使执行顺序更清楚一些。例:x=y/2-34*tempelsemax=y;,3.3条件(if)语句,形式三:格式:if(expr1)statement1elseif(expr2)statement2elseif(expr3)statement3.elsestatementn,3.3条件(if)语句,执行过程:,3.3条件(if)语句,例:if(salary1000)index=0.4;elseif(salary800)index=0.3;elseif(salary600)index=0.2;elseif(salary400)index=0.1;elseindex=0;,说明:if后面的表达式类型任意;语句可以是复合语句if(x)if(x!=0)if(!x)if(x=0),3.3条件(if)语句,例:求一个数的绝对值。#includemain()intx,y;printf(Enteraninteger:);scanf(%d,运行:Enteraninteger:-12integer:-12-absolutevalue:12,3.3条件(if)语句,2.if语句嵌套:一般形式:,3.3条件(if)语句,3.3条件(if)语句,例:输入两数并判断其大小关系。,#includemain()intx,y;printf(Enterintegerx,y:);scanf(%d,%d,运行:Enterintegerx,y:12,23XYEnterintegerx,y:12,12X=Y,3.3条件(if)语句,ifelse配对原则:缺省时,else总是和它上面离它最近的未配对的if配对。,3.3条件(if)语句,例:if(a=b)if(b=c)printf(“a=b=c”);elseprintf(“a!=b”);,修改:if(a=b)if(b=c)printf(“a=b=c”);elseprintf(“a!=b”);,实现ifelse正确配对方法:加,3.3条件(if)语句,例考虑下面程序输出结果:main()intx=100,a=10,b=20;intv1=5,v2=0;if(a100)C=1;elseC=4;可改为:(A100)?C=1:C=4;,运行结果:a=2,b=1,3.5条件(switch)语句,switch语句(开关分支语句)一般形式:switch(表达式)caseE1:语句组1;break;caseE2:语句组2;break;.caseEn:语句组n;break;default:语句组;break;,3.5条件(switch)语句,执行过程:,3.5条件(switch)语句,说明:E1,E2,En是常量表达式,且值必须互不相同;语句标号作用,必须用break跳出;case后可包含多个可执行语句,且不必加;switch可嵌套;多个case可共用一组执行语句。如:caseA:caseB:caseC:printf(“score60n”);break;.,3.5条件(switch)语句,例switch(score)case5:printf(“Verygood!”);case4:printf(“Good!”);case3:printf(“Pass!”);case2:printf(“Fail!”);default:printf(“dataerror!”);,运行结果:score为5时,输出:Verygood!Good!Pass!Fail!dataerror!,3.5条件(switch)语句,例voidmain()intx=1,y=0,a=0,b=0;switch(x)case1

温馨提示

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

评论

0/150

提交评论