第2章运算符与表达式优秀课件.ppt
《第2章运算符与表达式优秀课件.ppt》由会员分享,可在线阅读,更多相关《第2章运算符与表达式优秀课件.ppt(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2章运算符与表达章运算符与表达式式第1页,本讲稿共25页2.1 C语言运算符简介语言运算符简介初初等运算符等运算符()()-.1 1自左至右自左至右(一)(一)单目运算符单目运算符!+-(!+-(类型类型)*&sizeof)*&sizeof2 2自右至左自右至左算算数运算符数运算符*/%*/%3 3自左至右自左至右+-+-4 4自左至右自左至右 (左移右移运算符)左移右移运算符)5 5自左至右自左至右关关系运算符系运算符 =6 6自左至右自左至右=!=!=7 7自左至右自左至右&(按位与运算符)(按位与运算符)8 8自左至右自左至右 (按位异或运算符)(按位异或运算符)9 9自左至右自左至
2、右|(按位或运算符)(按位或运算符)1010自左至右自左至右逻逻辑运算符(不包括!)辑运算符(不包括!)&1111自左至右自左至右|1212自左至右自左至右(挑)条(挑)条件运算符件运算符?:?:1313自右至左自右至左(胡)赋(胡)赋值运算符值运算符=+=-=*=/=%=9的值为的值为0,97的值为的值为1,7+9的值为的值为162.1 C语言运算符简介语言运算符简介第4页,本讲稿共25页5.5%22.22.2算术运算符和算术表达式算术运算符和算术表达式基本算术运算符:+-*/%取整取整(/):两整数相除,结果为整数(两整数相除,结果为整数(两整数相除,结果为整数(两整数相除,结果为整数(去
3、掉小数部分去掉小数部分去掉小数部分去掉小数部分)例例例例:5/2=2 3/4=0 (“/”:5/2=2 3/4=0 (“/”左右两侧均为整型数据左右两侧均为整型数据左右两侧均为整型数据左右两侧均为整型数据)除除法法(/)只要有实型数据就是除法运算只要有实型数据就是除法运算只要有实型数据就是除法运算只要有实型数据就是除法运算例:例:例:例:-5/2.0=-2.5 3.0/4=0.75-5/2.0=-2.5 3.0/4=0.75取余取余(%):两整数相除,结果为他们的余数;两整数相除,结果为他们的余数;要求要求要求要求“%”%”两侧必须都为整型数据两侧必须都为整型数据两侧必须都为整型数据两侧必须都
4、为整型数据 如:如:如:如:-5%2=-1 1%10=1 5%1=0-5%2=-1 1%10=1 5%1=0区别:(int)5.5/2第5页,本讲稿共25页例:求出整数例:求出整数457的个位、十位、百位。的个位、十位、百位。分析:分析:1.求个位的方法:求个位的方法:457%10 2.求十位的方法:求十位的方法:457/10%10 3.求百位的方法:求百位的方法:457/100 或或457/10/10%102.2算术运算符和算术表达式定理:1.任何一个整数除以10取整则去掉这个整数的个位 推理:除以100取整则去掉个位和十位 2.任何一个整数除以10取余则得到这个整数的个位 推理:除以100
5、取余则得到个位和十位#includemain()int a=457;printf(去掉个位后的数=%d,a/10);printf(n去掉个位和十位后的数=%d,a/100);printf(n得到个位的数=%d,a%10);printf(n得到个位和十位的数=%dn,a%100);“%d”为格式符,表示:屏幕输出显示时出现“%d”的地方用逗号后面的一个整数值替换。第6页,本讲稿共25页v自增自减运算符自增自减运算符 2.2算术运算符和算术表达式作用:使变量的值增1或减1。前置:(先执行i=i+1或i=i-1,再使用i值)如:i=1;a=+i;a=2;(i=2)i=1;a=-i;a=0;(i=0)
6、后置:(先使用i值,再执行i=i+1或i=i-1)如:i=1;a=i+;a=1;(i=2)i=1;a=i-;a=1;(i=0)+-不能用于常量和表达式如:5+,(a+b)+#includemain()int a,i=1;a=+i;printf(前置时前置时:a=%d i=%d,a,i);i=1;a=i+;printf(n后置时后置时:a=%d i=%dn,a,i);第7页,本讲稿共25页2.32.3赋值运算符和赋值表达式赋值运算符和赋值表达式简单赋值运算符简单赋值运算符简单赋值运算符简单赋值运算符 =如:如:如:如:a=9a=9a=9a=9复合赋值运算符:复合赋值运算符:复合赋值运算符:复合赋
7、值运算符:+=-=*=/=%=&=|=+=-=*=/=%=&=|=+=-=*=/=%=&=|=+=-=*=/=%=&=|=例:例:例:例:a a a a=5=5=5=5 a=a a=a a=a a=a a*=ca*=ca*=ca*=c5 5 5 5 a=a*(c+5)a=a*(c+5)a=a*(c+5)a=a*(c+5)=左侧必须是变量,不能是常量或表达式左侧必须是变量,不能是常量或表达式左侧必须是变量,不能是常量或表达式左侧必须是变量,不能是常量或表达式结合方向:自右向左结合方向:自右向左结合方向:自右向左结合方向:自右向左例:int x,y;x=3;y=5;表达式 x=y/=2的值为?x%
8、=y/=2x%=y/=2先算先算y/=2y/=2 y=5/2 y=2y=5/2 y=2再算再算 x%=2 x%=2 x=3%2 x=1 x=3%2 x=1 第8页,本讲稿共25页2.32.3赋值运算符和赋值表达式赋值运算符和赋值表达式求表达求表达a+=a-=a*=a的值,其中的值,其中a的初值的初值12。分析:先算a*=a -a=a*a=144(a的值已经被修改为144)再算 a-=a*=a 因为a*=a的值为144 所以化简为 a-=144-a=a-144=0(a的值已经被修改为144)最后算a+=0 所以 表达式a+=a-=a*=a的值为0第9页,本讲稿共25页v赋值运算中的类型转换赋值运
9、算中的类型转换 2.3赋值运算符和赋值表达式(1)当实型数据赋值给整型变量时,将实型数据的小数部分截断。当实型数据赋值给整型变量时,将实型数据的小数部分截断。如如int x;,执行执行“x=5.21;”后,后,x的值为的值为5。(2)当整型数据赋值给实型变量时,数值不变,但以浮点数形当整型数据赋值给实型变量时,数值不变,但以浮点数形式式存储到实型变量中。存储到实型变量中。如如float x=45;输出输出x 的结果为的结果为45.000000。(3)当整型、短整型、长整型数据赋值给一个当整型、短整型、长整型数据赋值给一个char类型变量时,类型变量时,将其低将其低8位原封不动地送到位原封不动地
10、送到char类型变量中类型变量中(即截断即截断)。第10页,本讲稿共25页2.4逗号运算符和逗号表达式逗号运算符和逗号表达式v逗号运算符(逗号运算符(,)和逗号表达式)和逗号表达式一般形式为一般形式为 表达式表达式1,表达式表达式2,表达式表达式3,表达式表达式n逗号表达式的值:逗号表达式的值:等于表达式等于表达式等于表达式等于表达式n n的值的值的值的值如:如:x=(7+8,9,80)x的值为的值为80(x=7+8,9,80)x的值为的值为15 括号内的值为括号内的值为80第11页,本讲稿共25页2.4 位运算位运算 位运算就是指对存储单元二进制位的运位运算就是指对存储单元二进制位的运 ,只
11、能对整型或字符型数据进行位运算,只能对整型或字符型数据进行位运算,不能用于实型数据。不能用于实型数据。第12页,本讲稿共25页“按位与按位与”运算符运算符(&)1 1)规则:)规则:)规则:)规则:参与运算的两数(负数以补码方式出现)参与运算的两数(负数以补码方式出现)参与运算的两数(负数以补码方式出现)参与运算的两数(负数以补码方式出现)各对应的二进位各对应的二进位各对应的二进位各对应的二进位相与相与相与相与,只有对应的两个二进位均为,只有对应的两个二进位均为,只有对应的两个二进位均为,只有对应的两个二进位均为1 1时,结果位才为时,结果位才为时,结果位才为时,结果位才为1 1,否则为否则为
12、否则为否则为0 0,它是双目运算符。,它是双目运算符。,它是双目运算符。,它是双目运算符。即:即:即:即:0&0=00&0=0;0&1=00&1=0;1&0=01&0=0;1&1=11&1=1。例如:例如:例如:例如:9&59&5可写算式如下:可写算式如下:可写算式如下:可写算式如下:9 9的二进制:的二进制:的二进制:的二进制:0 0 0 0 1 0 0 10 0 0 0 1 0 0 15 5的二进制:的二进制:的二进制:的二进制:0 0 0 0 0 1 0 10 0 0 0 0 1 0 1&_&_ 0 0 0 0 0 0 0 10 0 0 0 0 0 0 1可见可见可见可见9&5=19&5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 运算 表达式 优秀 课件
限制150内