2.6 运算符和表达式

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Page 16
2.6.3 赋值运算符
例2-13 main( ) { float k, x, y; x = ( k = 9.8 ) +7; printf("k = %5.1f, x = %5.1f \n ", k, x ); y = k = 9.8 + 7; printf("k = %5.1f, y = %5.1f \n", k, y ); }
处理。算数运算符的结合方向都是“从左到右”,即“左结合性”。 有些运算符的结合方向为“从右到左”,即“右结合性”。
Page 8
2.6.2 自增/自减运算符
Page 9
2.6.2 自增/自减运算符
自增、自减运算符为“右结合性”,优先级为2。
例如: int k=10; 执行语句“k=k+1;”后变量k的值增加1,即为11。也可以用语句“k++;” 来替代。即“k++;”与“k=k+1;”等价。 同样“k--;”与“k=k-1;”等价。 “++”为自增运算符,“--”为自减运算符。 自增、自减运算表达式的结合方向都是自右至左。 但 ++k与k++ 的不同之处在于: 1. 前者先执行k = k + 1,然后再使用k的值; 2. 而后者则先使用k的值,再执行k = k +1。
int a,b,c; a=25; b= a++; printf("b = %d, a= %d", b, a ); c = --a; printf("\n c = %d, a = %d", c, a ); }
Page 14
2.6.3 赋值运算符
Page 15
2.6.3 赋值运算符
赋值运算符为“右结合性”,优先级为14。 赋值运算符号为“=”
Page 12
2.6.2 自增/自减运算符
作业:
有三个整型变量a,b,c;a的初始值为25。 ① 先将a的值赋给b,再进行自增,并且输出a和b的结果。 ② 将a的值进行自减,然后在赋值给c并输出a和c的结果。
Page 13
2.6.2 自增/自减运算符
作业答案: #include <stdio.h> main( ) {
int i, j, k; k = 30; i = k++;
/* 先将k值30赋给i,再使k值增1,此时k =31, i = 30 */ printf("i = %d, k = %d", i, k ); j = ++k;
/* k值先增1,再将k值赋于i,此时k =32, i = 32 */ printf("\n j = %d, k = %d", j, k ); }
Page 6
练 习:
1+3*2 5/2 5%(1+1)
2.6.1 算数运算符
2*(1+2) 5/2.0 8/(1+2.0)
Page 7
2.6.1 算数运算符
在表达式求值时,按运算符的优先级高低次序进行。如先乘除,后加减。 ( )可改变运算次序。 若在一个运算符对象两侧的运算符的优先级相同,则按规定的“结合方向”
值。在很多情况下,使用逗号表达式只是想求出各个表达式的值。
Page 20
2.6.4 逗号运算符
例如:
x=(i=1,j=2,k=3); 相当于执行语句: i=1; j=2; k=3; x=3;
又例如:
x=i=1,j=2,k=3; 相当于执行以下语句: i=1; x=1; j=2; k=3;
wk.baidu.comPage 21
表达式中可以包括运算符、常量、变量、函数调用等。 运算符包括算术运算符、自增/自减运算符、赋值运算符及逗号运算符。
Page 3
2.6.1 算数运算符
Page 4
2.6.1 算数运算符
运算符 () * / % + -
运算 圆括号 乘法
除法
模除 加法 减法
优先级 1 3
3
3 4 4
例子 5 /(1 – 3 ) 7 * 3 = 21 7 / 3 .0 = 2.333333 7/3=2 7%3=1 7 + 3 = 10
Page 10
2.6.2 自增/自减运算符
例如:
int a,b,c; c=5; a=c++; /*先使用c的值,a=5;然后在执行c=c+1=6;*/ b=++c; /*c的值先进行自增c=c+1=7;然后在进行赋值b=7;*/
Page 11
2.6.2 自增/自减运算符
例2-12
#include <stdio.h> main( ) {
编程语言基础--C语言
第二章 基本数据类型与简单程序设计
本节知识
算数运算符 自增自减运算符(难点)
Page 2
2.6 运算符和表达式
C语言由若干条语句组成,每条语句由变量、运算符、表达式、函数调用和控 制语句等构成。
C语言的运算符十分丰富,所包含的内容也很广泛。表达式是由运算对象(包 括常量、函数、变量)和运算符按一定规则连接起来的有意义的式子。
THANKS
Page 22
Page 17
2.6.3 赋值运算符
例 如: a=b=c=0; 等价于下列三条语句: c=0; b=c; a=b;
Page 18
2.6.4 逗号运算符
Page 19
2.6.4 逗号运算符
逗号运算符将两个表达式连接起来。其优先级15,最低。 格式:
表达式1,表达式2 功能:先求解表达式1,再求解表达式2。整个逗号表达式的值为表达式2的
7-3=4
Page 5
2.6.1 算数运算符
说明:
1. 模除运算是两个整数相除后取余数;要求 % 两边必须是整型数据。
2. 若算术运算符两边均为整数,则结果仍为整数。
例:
7/3=2
1/2=0
3. 若参加运算的两个数中有一个数为实数,则结果为double型。
4. 每个运算符都有一个优先级。如乘除的优先级高于加减。
相关文档
最新文档