c语言运算符与表达式

上传人:平*** 文档编号:48807342 上传时间:2018-07-20 格式:PPT 页数:21 大小:170.65KB
返回 下载 相关 举报
c语言运算符与表达式_第1页
第1页 / 共21页
c语言运算符与表达式_第2页
第2页 / 共21页
c语言运算符与表达式_第3页
第3页 / 共21页
c语言运算符与表达式_第4页
第4页 / 共21页
c语言运算符与表达式_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《c语言运算符与表达式》由会员分享,可在线阅读,更多相关《c语言运算符与表达式(21页珍藏版)》请在金锄头文库上搜索。

1、第三讲 运算符与表达式内容摘要:1,变量赋初值2,掌握C语言中的各种运算符3,掌握运算符的优先级与结合性教学重点:C语言中各种运算符的使用教学难点 :混合表达式中运算符的运算顺序运算符与表达式2.6 变量赋初值程序中常需要对一些变量预先设置初值。 C语言允许在定义变 量时对变量赋初值 -变量的初始化。int a=3; /* 指定a为整型变量,初值为3 */float f=3.56; /* 指定f为实型变量,初值为3.56 */char c=a; /* 指定c为字符变量,初值为a */1.可以对定义变量的一部分初始化如: int a,b,c=5;2.如果对几个变量赋以同一个初值,不能写成:int

2、 a=b=c=3;而应写成:int a=3,b=3,c=3;3. 初始化不是在编译阶段完成的,而是在程序运行时,执行函数时赋初值的,相当于有一个赋值语句。例如: int a=3;相当于:int a;a=3;2.7 运算符和表达式C的运算符有以下几类1算术运算符 (+ - * / % ) 2赋值运算符 (= 及其扩展赋值运算符)3. 逗号运算符 (,)4关系运算符 ( = | x=3.6;i=(int)x;printf(“x=%f,i=%d“x,i);运行结果如下: x=3.600000,i=32.7 运算符和表达式4,自增、自减运算符+ - 作用:使变量值加1或减1 种类: 前置 +i, -i

3、 (在使用i之前 ,先使i的值加(减)1) 后置 i+,i- (先使用i值, 再使i的值加(减)1 )例 j=3; k=+j; j=3; k=j+; j=3; printf(“%d”,+j); j=3; printf(“%d”,j+); a=3;b=5;c=(+a)*b; a=3;b=5;c=(a+)*b; /k=4,j=4 /k=3,j=4 /4 /3 /c=20,a=4 /c=15,a=42.7 运算符和表达式说明: + - 不能用于常量和表 达式,如5+,(a+b)+ + -结合方向: 自右 向左例 自增、自减运算符的用法与运算规则示例。 /*程序功能:自增、自减运算符的用法与运算规则示

4、例*/ main() int x=6, y;printf(“x=%dn“,x); /*输出x的初值*/y = +x; /*前置运算*/printf(“y=+x: x=%d,y=%dn“,x,y); y = x-; /*后置运算*/printf(“y=x-: x=%d,y=%dn“,x,y); 程序运行结果: x=6 y=+x: x=7,y=7y=x-: x=6,y=7 程序演示2.7 运算符和表达式1.赋值运算符(=)作用:将一个数据赋给一个变量,也可以将一个表达式的值赋给一个变量 。如:a=3 2.类型转换(1)将实型数据(包括单、双精度)赋给整型变量时,舍弃实数的小数部分 。 (2)将整型

5、数据赋给单、双精度变量时,数值不变,但以浮点数形式存储 到变量中。(3)将一个double型数据赋给一个float变量时,截取其前面的7位有效数字,存放到float变量的存储单元中(32位)。但应注意数值范围不能溢出。(4). 其它转换规则参考教材2.7 运算符和表达式 2.7.5 赋值运算符和赋值表达式3、赋值运算符 简单赋值运算符 符号: = 格式: 变量标识符=表达式 作用:将一个数据(常量或表达式 )赋给一个变量复合赋值运算符 在赋值运算符“=”之前加上其他预算符号,可 以构成复合的预算符。 例如,可以有:a+=3a=a+3 x*=y+8x=x*(y+8)x%=3x=x%32.7.5

6、赋值运算符和赋值表达式定义:由赋值运算符将一个变量和一个表达式连接起来的式子。形式: 求解过程:先求赋值运算符右侧“表达式”的值,然后赋给赋值运算符左侧的变量。例如:a=b=c=6;a=(b=4)+(c=6);(表达式值为10,a值为10,b等于4,c等于6)4、赋值表达式2.7.5 赋值运算符和赋值表达式说明: 1、赋值运算后,左边变量的值被右边表达式的值替换; 2、若右边表达式的值的类型与左边变量类型不一致,则以左边变量的类型为准,将表达式的类型转换为左边变量的类型。 3、赋值运算符的优先级仅高于逗号运算符。结合方向为“从右向左”。形式:表达式1,表达式2,表达式n 结合性:从左向右 优先

7、级: 所有运算符中优先级最低 逗号表达式的值:等于表达式n的值 求解过程:先求表达式1,再求表达式2,依 次求下去,直到求出表达式n,整个逗号表达式的值就是 表达式n的值 例 a=3*5,a*4a=3*5,a*4,a+5 例 x=(a=3,6*3)x=a=3,6*a 例 a=1;b=2;c=3;printf(“%d,%d,%d”,a,b,c); printf(“%d,%d,%d”,(a,b,c),b,c); /a=15,表达式值60 /a=15,表达式值20 /赋值表达式,表达式值18,x=18 /逗号表达式,表达式值18,x=3/1,2,3 /3,2,32.7.6 逗号运算符和逗号表达式求解

8、过程分析: 自左至右,依次计算各表达式的值,“表达式n” 的值 即为整个逗号表达式的值。 例如,逗号表达式“a = 3 * 5, a * 4”的值=60:先求 解a = 3 * 5,得a=15;再求a * 4 = 60,所以逗号表达式 的值=60。又例如,逗号表达式“(a = 3 * 5, a * 4), a + 5”的值 =20:先求解a = 3 * 5,得a=15;再求a * 4=60;最后求 解a + 5=20,所以逗号表达式的值=20。注意:并不是任何地方出现的逗号,都是逗号运算符 。很多情况下,逗号仅用作分隔符。2.7.6 逗号运算符和逗号表达式2.7.7 关系运算符及关系表达式1,

9、关系运算符及其优先次序在C语言中提供6种关系运算符关系运算符含义义优优先级级与结结合方向大于=大于或等于=等于优优先级级相同(低) 结结合方向(从左向右 )!=不等于关系运算符的优先级低于算术运算符 关系运算符的优先级高于赋值运算符2.7.7 关系运算符及关系表达式2,关系表达式 用关系运算符将两个表达式(算术表达式、关系表达式、逻辑表达 式、赋值表达式、字符表达式)连接起来的式子,称为关系表达式 。 如: a b , ( A = 3 ) ( B = 5 ) , A B 这些都是合法 的关系表达式。 在 C 语言中关系表达式的值是一个逻辑值,即“真”或“假”。 C 语言中以“1”代表“真”,以“0”代表“假”。例:若 a=3 , b=2 , c=1 则: a b 的值为“真”,此表达式的值为 1。 (ab) = c 的值为“真”,表达式的值为 1。(此处 ab 的值为 1 ,1= c 的值当然为1) f = abc f 的值为0 小结变量赋初值运算符与表达式算术运算符与算术表达式赋值运算符与赋值表达式逗号运算符与逗号表达式关系运算符与关系表达式运 算 符 与 表 达 式

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号