1 / 27
文档名称:

C语言程序设计100913PPT课件.pptx

格式:pptx   大小:223KB   页数:27页
下载后只包含 1 个 PPTX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C语言程序设计100913PPT课件.pptx

上传人:wz_198613 2021/6/29 文件大小:223 KB

下载得到文件列表

C语言程序设计100913PPT课件.pptx

相关文档

文档介绍

文档介绍:1
内容提要
表达式体现对数据的处理,由运算符和运算对象组成
掌握每种运算符的以下知识:
对运算对象的要求
运算符的结合性
运算符的优先级
运算结果的特性
有多种运算符的复杂表达式的计算顺序及计算结果
数据类型的自动转换规则及强制转换的方法
第1页/共27页
2
表达式的组成
表达式实现对数据的处理,每个表达式都有唯一的值
表达式由运算对象和运算符组成
运算对象的种类:常量、变量、有返回值的函数调用、其它表达式
例:2 a rand() (2+a)*rand( )
运算符:共34种,分为15个不同的优先级
可以理解成是不带运算符的最简单表达式
常量表达式
变量表达式
函数表达式
带运算符的表达式
第2页/共27页
3
左值与右值
每个表达式都有唯一确定的值,表达式不是左值就是右值
右值:只能出现在赋值号(=)右边的表达式
左值:不是右值的表达式就是左值
左值与右值的关系:右值只能出现在赋值号的右边;而左值既可以出现在赋值号的左边,又可以出现在赋值号的右边。左值可以取地址,右值不可以取地址.
例: 2 a rand() (2+a)*rand( ) a=b
常量表达式只能作为右值
例:a=2;(右值)
变量表达式为左值,既可在赋值号左边也可以在右边,例:a=5;(左边) b=a;(右边)
此函数表达式为右值
例:a=rand( )右值)
此表达式只能作为右值
例:b=(2+a)*rand( ); (右值)
赋值表达式只能作为右值
例:c=a=b;(右值) (a=b)=c;(出错)
第3页/共27页
4
算术运算符
算术运算符主要完成数值计算问题,具体如下表所列
运算符
优先级
结合方向
对运算对象的要求
运算结果特性
特殊说明
- 取负
2
从右到左
整、实型值
运算对象的相反数
单目运算符
++ 自增
整,实,字符,指针型变量
结果与变量的值可能一致
单目,分为前++ 后++
-- 自减
单目,分为前++ 后- -
* 乘
3
从左到右
允许整型与实型数混合
只要有1个实对象结果实型,否则整型结果
/ 除
两个整数相除只能得到整数商
% 取余
仅限整型数
整除的余数
正负号同第1数
+ 加
4
从左到右
允许整型与实型数混合
只要有1个实对象结果实型,否则整型结果
- 减
例:int a=3,b,c;
a++的表达式结果是3,变量a的值是4;
++a的表达式结果是4,变量a的值是4;
因此,c=a++执行后, c的值是3,a的值是4 b=++a执行后,b的值是4,a的值也是4
例:int a=3;
-a结果为-3,但是变量a的值仍为3
-
例:int a=3,b,c;
a--的表达式结果是3,变量a的值是2;
--a的表达式结果是2,变量a的值是2;
因此,c=a--执行后, c的值是3,a的值是2 b=--a执行后,b的值是2,a的值也是2
例:int a=27,b=5,c;
表达式a/b结果是5,

.4
例:int a=27,b=5,c;
表达式a%b结果是2,
表达式-a%b结果是-2
%b是错误的
例:表达式2+3结果是5
表达式2+
+
例:表达式3-2结果是1
-
-
第4页/共27页
5
算术运算符
赋值表达式及算术运算符示例
#include<>
#include<> //包含随机函数rand的声明
int main( )
{ int a=5,b=6,c=7;
printf(“%d\n”,rand()); //显示随机数
print("%d\n",a*(b+c)/2-2); //显示算术表达式的值
printf("%d\n",a=b); //显示赋值表达式即a的值
b=rand()%10; //混合表达式赋0至9之间的1个随机数
printf(“%d\n”,c=a=b); //显示赋值表达式的值即c的值
return 0;
}
<运行结果>
41
30
6
7
动态
演示
过程