C语言赋值语句右侧为括号,C语言 第三章 运算符和表达式.ppt

C语言 第三章 运算符和表达式

第三章 运算符和表达式 掌握:算术、关系、逻辑等常见运算符 掌握:各种运算符的优先级 掌握:各种表达式的组成及运算过程 重点:运算符的优先级及表达式分析计算 难点:自增、自减运算符 §3.1 算术运算符和算术表达式 算术运算符 算术表达式 定义:算术表达式是由算术运算符和括号将运算对象连接起来的式子,其中运算对象可以是常量、变量、函数、数组元素等内容。 形式: 表达式1 算术运算符 表达式2 … 【例3.1】若a 5,b 3,c 2,x 1.5,则算术表达式a*x*x+b*x+c的结果是多少? 注意: (1)当运算符“/”两侧的操作数为整型时,计算结果为整型,如19/2 9。 (2)运算符“%”两侧的操作数必须是基本整型、短整型或长整型数,而不能是浮点型数字。 (3)运算符“++”、“--”只能用于变量,而不能用于常量或表达式,如:i++、--j均是正确的,而++10、(a+b)++则是错误的。 §3.2 赋值运算符和赋值表达式 赋值运算符 举例 【例3.4】已知int a 5,b 3,x 10,计算如下表达式的值。 a a*8 表达式值为40,a 40 b% 2 表达式值为1,b 1 x* a+b 表达式值为410,x 410 a b c 5 表达式值为5,a,b,c值为5 a b 5 b 5,a 5 a 5+ c 6 表达式值为11,c 6,a 11 a b 4 + c 6 表达式值为10,a 10,b 4,c 6 a b 10 / c 2 表达式值为5,a 5,b 10,c 2 注意: (1)对于简单赋值运算符和复合赋值运算符,等号左侧的操作数只能为变量,而不能是常量或表达式,如a 5是正确的,而10 3+2以及a+b 8都是错误的。 (2)赋值运算符具有右结合性,因此a b c 10是正确的,等价于a b c 10 。 (3)当等号“ ”两侧的类型不同时,将要进行数值类型的转换 赋值语句 在赋值表达式的基础上添加“;”就构成了赋值语句。如x a 4 +8;计算时先计算右侧括号中的内容,然后与8相加,并将结果赋给变量x。 【例3.5】已知华氏温度与摄氏温度之间的转换公式为C 5/9* F-32 ,编写程序将输入的华氏温度转换为摄氏温度输出 #include "stdio.h" void main int f; float c; scanf "%d",&f ; /*输入华氏温度*/ c 5/9* f-32 ; printf "c %f\n",c ; /*输出结果*/ §3.3 关系运算符和关系表达式 关系运算符 C语言提供了6种关系运算符 关系表达式 定义:关系表达式是由关系运算符和括号将运算对象连接起来的式子,其中运算对象可以是常量、变量、函数、数组元素等内容。 一般组成形式: 表达式1 关系运算符 表达式2 … 注意: 关系表达式的结果是1或0,前者对应于关系成立,后者对应于关系不成立。如: 5 8 关系成立,表达式的值为1 30 31 关系不成立,表达式的值为0 3+7 ! 2+8 关系不成立,表达式的值为0 【例3.6】若有int a 3,b 2,c 1,d,f; 则 a b //表达式值1 a b c //表达式值1 b+c a //表达式值0 d a b //d 1 f a b c //f 0 注意: (1)表达式1和表达式2还可以是常量、变量的形式,也可以是赋值表达式、逻辑表达式、关系表达式等表达式嵌套的形式。 (2)关系表达式的值为0或1。 §3.4 逻辑运算符和逻辑表达式 逻辑运算符 逻辑运算的值为“真”和“假”两种,用“1”和“0”来表示。 逻辑运算表 逻辑表达式 定义:逻辑表达式是由逻辑运算符和括号将运算对象连接起来的式子。其中运算对象可以是常量、变量、函数的形式,也可以是关系表达式、算术表达式等表达式嵌套的形式,逻辑表达式的结果为1或0。 逻辑表达式的一般形式为 表达式1 逻辑运算符 表达式2 【例3.7】判断某年的天数。 分析:判断某年的天数,实际是判断该年是闰年还是平年,而闰年的判断条件是:该年能被4整除,但不能被100整除,或者能被400整除。很显然,前面两个条件是并列的关系,用逻辑与运算符连接,而与后者的关系是或的关系,因此可以用逻辑或运算符来连接前后两个表达式。 注意: (1)在逻辑运算值时,以“1”代表“真”,“0”代表“假”;但在判断一个量是为“真”还是为“假”时,以“0”代表“假”,以非“0”的数值作为“真”。如3 && 0.5,结果为1。 (2)在逻辑与&&和逻辑||运算中,存在一种短路效应。 【例3.8】以下程序的输出结果是什么? #include "stdio.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值