欢迎来到优知文库! | 帮助中心 分享价值,成长自我!
优知文库
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 优知文库 > 资源分类 > PPT文档下载
    分享到微信 分享到微博 分享到QQ空间

    C语言程序设计课件ppt及程序代码第5章.ppt

    • 资源ID:173886       资源大小:325.50KB        全文页数:31页
    • 资源格式: PPT        下载积分:7金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录
    二维码
    扫码关注公众号登录
    下载资源需要7金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言程序设计课件ppt及程序代码第5章.ppt

    if (50) y=1;if (1=53) y=1;else y=-1;5.1.1 关系运算符及其优先次序关系运算符及其优先次序 关系运算符含义优先级与结合方向小于优先级相同(高)结合方向(从左向右)大于=大于或等于=等于优先级相同(低)结合方向(从左向右)!=不等于关系运算符与算术运算符、赋值运算符的优先关系运算符与算术运算符、赋值运算符的优先级关系级关系 ca+b 等效于 c(a+b) ab!=c 等效于 (ab)!=c a=bc 等效于 a=(bc 等效于 a=(bc) 关系表达式的一般形式为关系表达式的一般形式为: 表达式表达式 关系运算符关系运算符 表达式表达式 表达式可以是算术表达式、逻辑表达式、赋值表达式、字符表表达式可以是算术表达式、逻辑表达式、赋值表达式、字符表达式达式 a+bc-d x3/2 a+1(bc) a!=(c=d)关系表达式的值是关系表达式的值是“真真”和“假假”,用“1”和“0”表示。例、 a=3, b=2, c=1, 则:则: ab 真,表达式的值为真,表达式的值为1(ab) = = c 真,表达式的值为真,表达式的值为1b+cbd的值等于的值等于1假,表达式的值为假,表达式的值为05_1_1.cpp5_1_2.cpp if (ab AND xy) printf(“OK”); 用逻辑运算符将关系表达式或逻辑量连接起来的式子就是。 如果ab且xy,则上述逻辑表达式的值为“真”。5.2.1 逻辑运算符及其优先次序逻辑运算符及其优先次序&逻辑“与”(AND)“双目运算符”:要求两个操作数,如:(ab) & (xy)|逻辑“或”(OR)!逻辑“非”(NOT)单目运算符,要求一个操作数,如:!(ab)a & b (若a和b均为真,逻辑表达式a&b为真)a | b (若a或b为真,逻辑表达式a|b为真)!a (若a为真,逻辑表达式!a为假)a ab b!a!a!b!ba & ba & ba | ba | b真真假假真真真假假真假真假真真假假真假假真真假假 在一个逻辑表达式中,包含多个逻辑运算符在一个逻辑表达式中,包含多个逻辑运算符 ,按如图优先级运算按如图优先级运算:f=!a & b | xy+2 & cf=(!a) & b | xy+2 & cf=(!a) & b | x(y+2) & cf=(!a) & b | (x(y+2) & cf=(!a) & b | (x(y+2) & c) C语言语言真真假假计算逻辑表达式的值10判断量的真假非00 逻辑表达式的值应该是一个逻辑量逻辑表达式的值应该是一个逻辑量“真真”或或 假假”。c语言编译系语言编译系统在给出逻辑运算结果时,以数值统在给出逻辑运算结果时,以数值1代表代表“真真”,以,以0代表代表“假假”,但在判断但在判断个量是否为个量是否为“真真”时,以时,以0代表代表“假假”,以非,以非0代表代表“真真”。即将一个非零的数值认作为。即将一个非零的数值认作为“真真”。5_2_1.cpp 编译器在求解逻辑表达式的值时,采用“非非完全求解完全求解”的方法 1、a & b & c 只有a为真时,才判别b的值;只有a和b均为真时,才判别c的值。 只要a为假,就不再判别b和c的值,直接求得表达式的值为假。5_2_2.cpp2、a | b | c只有a为假时,才判别b的值;只有a和b均为假时,才判别c的值。只要a为真,就不再判别b和c的值,直接求得表达式的值为真。5_2_3.cpp5.3.1 if语句的三种形式语句的三种形式1. 第一种形式为基本形式第一种形式为基本形式: if (xy) printf(“%d”,x); 语句可以是用括起来的复合语句, 表达式可以是常常量、变量、量、变量、 表达式表达式。 其类型可以是整、实、字符型。语句可以是一句或复合语句。 其语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。其过程可表示为下图。2. 第二种形式为第二种形式为: if-elseif(表达式表达式) 语句语句1; else 语句语句2;其语义是:如果表达式的值为真,则执行语句1,否则执行语句2 。其执行过程可表示为下图3. 第三种形式为第三种形式为if-else-if形式形式if(表达式表达式1) 语句语句1;else if(表达式表达式2) 语句语句2;else if(表达式表达式3) 语句语句3; else if(表达式表达式m) 语句语句m;else 语句语句n; 其语义是:依次判断表达式的值,当出现某个值为真时,则执行其对应的语句。然后跳到整个if语句之外继续执行程序。 如果所有的表达式均为假,则执行语句n。然后继续执行后续程序。 5_3_2.cpp说明:说明:1.执行if语句时,先判断表达式的值,为真时(非0),执行其后语句,为假(0)时不执行其后的语句,表达式可以是常量、变量、表达式(关系、逻辑、算术、赋值)。 2.if的各内嵌语句用“ ; ”号结束。 3.if和else后面的内嵌语句若有多句,用 括起构成复合语句。 嵌套嵌套:在if语句中,又包含1到多个if 语句 一般形式:一般形式: if( ) 条件成立时的内嵌语句条件成立时的内嵌语句 if( ) 语句1 else 语句2 else 条件不成立时的内嵌语句条件不成立时的内嵌语句 if( ) 语句3 else 语句4 使用内嵌的if语句时,应区分表面形式与实际作用 if( ) if( ) 语句1 else if( ) 语句2 else 语句3 在C语言中,if与else 的配对原则是: 从最内层开始,从最内层开始,else总是与它上面最近的,未曾配对的总是与它上面最近的,未曾配对的if配对配对。因此,上述问题在编译时的真正效果是: 为了使程序清晰,不至出错,采取的方法是: 用 实现,如上述问题可进行如下描述: if( ) if( ) 语句1 else if( ) 语句2 else 语句3 )说明:说明:1、条件运算符的执行顺序: max=(ab)?a:b;If (ab) max=a;else max=b2、条件运算符的优先级高于赋值运算符,低于算术运算符和关系运算符。max = ab?a:b max = (ab)?a:b)ab?a:b+1 (ab)?a:(b+1)3、条件运算符的结合方向:从右向左 ab?a:cd?c:d a,b,c,d的取值9,8,4,3,求表达式的值?5_2_4.cpp4、表达式2和表达式3不仅可以式是数值表达式,还可以是赋值表达式或函数表达式。例如:main( ) int a,b; scanf(“%d,%d”,&a,&b); ab ? printf(“max=%xn”,a) :printf(“max=%dn”,b); 输入:3 , 5 输出:max=55、表达式1,2,3类型可以相同,也可不同,如果类型不同时,低类型向高类型转换 main( ) int x=-1, y=5, z=6; printf (“%cn” , x ? a : b ); printf (“%f n”, yz ? 1 : 1. 5); 输出结果?输出:a 1.0000005_3_7.cpp switch(表达式表达式) case 常量表达式常量表达式1: 语句语句1; case 常量表达式常量表达式2: 语句语句2; case 常量表达式常量表达式n: 语句语句n; default : 语句语句n+1; 1、switch后的表达式,新的ANSI C标准中允许表达式的类型为任何类型。 2、每个case后的常量表达式只能是常量组成的表达式,当switch后的表达式的值与某一个常量表达式的值一致时。程序就转到此case后的语句开始执行。如果没有一个常量表达式的值与switch后的值一致,就执行default后的语句。 3、第个case后的常量表达式的值必须互不相必须互不相同同,不然的话程序就不知该跳到何外开始执行。 4、在执行完一个case后面的语句后,程序流程转到下一个case后的语句开始执行 程序清单运行结果 x=B;switch(x) case A:printf(Grade is An); case B:printf(Grade is Bn); case C:printf(Grade is Cn); case D:printf(Grade is Dn);Grade is BGrade is CGrade is D5_3_6.cpp 6、如果只想执行某个case后的语句,那么就要在case的语句的最后使用break语句以跳出switch语句。程序清单运行结果 x=B;switch(x) case A:printf(Grade is An);break; case B:printf(Grade is Bn);break; case C:printf(Grade is Cn);break; case D:printf(Grade is Dn);break; Grade is B 7、default这一行可以省略。 8、多个 case可以共用一段程序。 比如我们给判定学生的成绩等级,只区分及格和不及格的。程序清单运行结果main()char x; scanf(“%c”,&x); switch(x) case A: case B: case C:printf(“及格及格.n”); break; case D:printf(“不及格不及格n); A及格及格._B及格及格._D不及格及格._

    注意事项

    本文(C语言程序设计课件ppt及程序代码第5章.ppt)为本站会员(王**)主动上传,优知文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知优知文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 yzwku网站版权所有

    经营许可证编号:宁ICP备2022001189号-2

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。优知文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知优知文库网,我们立即给予删除!

    收起
    展开