C语言ppt课件 (运算符和表达式).ppt

上传人:飞****2 文档编号:82447498 上传时间:2023-03-25 格式:PPT 页数:29 大小:245.50KB
返回 下载 相关 举报
C语言ppt课件 (运算符和表达式).ppt_第1页
第1页 / 共29页
C语言ppt课件 (运算符和表达式).ppt_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《C语言ppt课件 (运算符和表达式).ppt》由会员分享,可在线阅读,更多相关《C语言ppt课件 (运算符和表达式).ppt(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、运算符与表达式运算符与表达式运算符和表达式运算符和表达式第二讲第二讲 运算符和表达式运算符和表达式引例引例概念及分类概念及分类优先级和结合性优先级和结合性算术运算算术运算关系运算关系运算逻辑运算逻辑运算位运算位运算赋值运算符赋值运算符逗号运算符逗号运算符条件运算符条件运算符运算符和表达式运算符和表达式引例引例引例引例问题问题输入一个四位的正整数,反序输出该四位数的四个数字字符。输入一个四位的正整数,反序输出该四位数的四个数字字符。设计设计用一个无符号整型变量用一个无符号整型变量number保存输入的四位正整数。保存输入的四位正整数。依次分解出个位数字、十位数字、百位数字和千位数字,并分别放依次

2、分解出个位数字、十位数字、百位数字和千位数字,并分别放到字符变量到字符变量c1、c2、c3和和c4中。中。怎么分解?怎么分解?利用除法、取模等运算。利用除法、取模等运算。顺序输出变量顺序输出变量c1、c2、c3和和c4中的字符。中的字符。运算符和表达式运算符和表达式引例引例引例引例源程序源程序(cw04-01.c)#include void main()unsigned number;char c1,c2,c3,c4;printf(请输入一个四位的正整数:请输入一个四位的正整数:);scanf(%u,&number);c1=number%10+0;/得到个位数字得到个位数字 c2=number

3、/10%10+0;/得到十位数字得到十位数字 c3=number/100%10+0;/得到百位数字得到百位数字 c4=number/1000+0;/得到千位数字得到千位数字 printf(n%c%c%c%cn,c1,c2,c3,c4);请输入一个四位的正整数请输入一个四位的正整数:12344321运算符和表达式运算符和表达式相关概念相关概念运算符运算符 在在C语言中用来表示某种计算的符号。语言中用来表示某种计算的符号。操作数操作数 运算符操作的对象,可以为变量(已赋值)、常量或其他运算符操作的对象,可以为变量(已赋值)、常量或其他有切确值的表达式。有切确值的表达式。表达式表达式 运算符和合适的

4、操作数组成的具有切确值的式子称为表达运算符和合适的操作数组成的具有切确值的式子称为表达式。式。运算符和表达式运算符和表达式运算符分类运算符分类单目运算符(一元运算符)单目运算符(一元运算符)只有只有1个操作数。个操作数。双目运算符(二元运算符)双目运算符(二元运算符)具有具有2个操作数。(主要类型)个操作数。(主要类型)三目运算符(三元运算符)三目运算符(三元运算符)需要需要3个操作数。(唯一:条件运算符个操作数。(唯一:条件运算符?:)运算符和表达式运算符和表达式运算符的优先级和结合性运算符的优先级和结合性运算符的优先级运算符的优先级某些运算符先于其他运算符被执行。某些运算符先于其他运算符被

5、执行。例如,例如,x+y*4,先乘除后加减。,先乘除后加减。必要时可以用必要时可以用圆括号圆括号()()改变计算顺序。改变计算顺序。例如,求三个数的平均值。例如,求三个数的平均值。错误的写法:错误的写法:a+b+c/3 正确的写法:正确的写法:(a+b+c)/3运算符的结合性运算符的结合性当出现并列的运算优先级别相同的运算符时,由运算符的当出现并列的运算优先级别相同的运算符时,由运算符的结合性决定计算的次序。结合性决定计算的次序。例如,例如,x*y/z运算符和表达式运算符和表达式算术运算符算术运算符常用的算术运算及运算符常用的算术运算及运算符说明说明取模运算(取模运算(%),结果是两个整数相除

6、的余数。),结果是两个整数相除的余数。例如,例如,7%5=2,-2%3=-2。运算符和表达式运算符和表达式运算符名称运算符名称算术运算符算术运算符代数表达式代数表达式C语言表达式语言表达式适用的数据类型适用的数据类型正号正号+a+a+a+a整数、字符、浮点数整数、字符、浮点数负号负号-b-b-b-b整数、字符、浮点数整数、字符、浮点数加加+f+7f+7f+7f+7整数、字符、浮点数整数、字符、浮点数减减-p cp cp cp c整数、字符、浮点数整数、字符、浮点数乘乘*bmbmb*mb*m整数、字符、浮点数整数、字符、浮点数除除/x/yx/yx/yx/y整数、字符、浮点数整数、字符、浮点数取模

7、取模%r mod sr mod sr%sr%s整数、字符整数、字符运算符和表达式运算符和表达式自增和自减运算符自增和自减运算符自增和自减运算符自增和自减运算符自增运算符:自增运算符:+将操作数的值增一。将操作数的值增一。自减运算符:自减运算符:-将操作数的值减一。将操作数的值减一。操作数必须是整型和字符型操作数必须是整型和字符型变量变量。单目运算符。单目运算符。优先级:优先级:2。结合性:从右往左。结合性:从右往左。运算符和表达式运算符和表达式运算符和表达式运算符和表达式算术运算符(特殊问题)算术运算符(特殊问题)除号运算符的使用问题除号运算符的使用问题 当除号前后操作数全为整型数(包括当除号

8、前后操作数全为整型数(包括char、int、long)时,)时,除号为整除运算。除号为整除运算。当有任一操作数为实型数时则为普通除法运算。当有任一操作数为实型数时则为普通除法运算。取模运算符的使用问题取模运算符的使用问题 操作数只能整型数据(操作数只能整型数据(char、int、long)。)。自加自加/自减运算符的使用问题自减运算符的使用问题 +(-)在前:先加(减)后用;)在前:先加(减)后用;+(-)在后:先用后加(减)。)在后:先用后加(减)。运算符和表达式运算符和表达式自增和自减运算自增和自减运算举例举例(cw0404.c)#include void main()int i=6,a,

9、b;printf(%dn,+i);printf(%dn,i+);a=-i;printf(%dn,a);b=i-;printf(%dn,b);printf(%dn,-i+);printf(i=%dn,i);7777-6i=?运算符和表达式运算符和表达式关系运算关系运算关系运算(比较运算)关系运算(比较运算)比较两个值,结果为比较两个值,结果为“真真”或或“假假”。举例:举例:a3如果如果a=8,则结果为,则结果为“真真”如果如果a=1,则结果为,则结果为“假假”用关系运算进行条件判断用关系运算进行条件判断关系表达式表示一个条件,根据其结果判断条件是否满足。关系表达式表示一个条件,根据其结果判断条

10、件是否满足。举例:举例:a3如果如果a=8,结果为,结果为“真真”,即条件满足,即条件满足如果如果a=1,结果为,结果为“假假”,即条件不满足,即条件不满足运算符和表达式运算符和表达式关系运算符关系运算符关系运算符关系运算符运算符运算符含含 义义优先级优先级结合性结合性 小于小于6 6左结合左结合=大于大于=大于或等于大于或等于=等于等于7 7!=!=不等于不等于运算符和表达式运算符和表达式关系表达式关系表达式关系表达式关系表达式 表达式表达式1和表达式和表达式2可以是任何表达式。可以是任何表达式。举例举例abm+nz)=(yz)运算符和表达式运算符和表达式关系表达式关系表达式关系表达式的值是

11、一个逻辑值:关系表达式的值是一个逻辑值:“真真”或或“假假”C语言没有逻辑类型,因此语言没有逻辑类型,因此用整数用整数 1 表示表示“真真”用整数用整数 0 表示表示“假假”即关系表达式的值是整数即关系表达式的值是整数 1 或或 0。举例举例若若a=1,b=2,c=3aba+bc)=(bc)Y!=y0111运算符和表达式运算符和表达式关系表达式的使用关系表达式的使用举例:写出下面各条件的关系表达式举例:写出下面各条件的关系表达式x为不小于为不小于-5 的整数的整数x为非零的数为非零的数x的平方大于的平方大于m与与n的和的和x=-5x!=0 x*x(m+n)运算符和表达式运算符和表达式关系运算的

12、不足关系运算的不足关系表达式只能表达一些简单的条件关系表达式只能表达一些简单的条件grade=60total1000每个判断只是对一个条件进行测试。每个判断只是对一个条件进行测试。如果要对多个条件进行测试就要在独立的语句或嵌套的如果要对多个条件进行测试就要在独立的语句或嵌套的if或或if-else结构中进行测试。结构中进行测试。例例1:10y5例例2:x0if(y5)if(y10);if(x0);运算符和表达式运算符和表达式逻辑运算逻辑运算逻辑运算逻辑运算通过逻辑运算符把简单的条件组合起来,能够形成更加复通过逻辑运算符把简单的条件组合起来,能够形成更加复杂的条件。杂的条件。例例1:10y5 的

13、逻辑表达式的逻辑表达式(y5)&(y10)例例2:x0 的逻辑表达式的逻辑表达式(x0)逻辑运算符逻辑运算符!(逻辑非)(逻辑非)&(逻辑与)(逻辑与)|(逻辑或)(逻辑或)运算符和表达式运算符和表达式逻辑表达式逻辑表达式逻辑表达式逻辑表达式 表达式表达式1和表达式和表达式2可以是任何表达式。可以是任何表达式。举例举例(x5)|(x-5)!(ac)&(a+cb)&(b+ca)逻辑表达式的值逻辑表达式的值1:真:真0:假:假整数整数运算符和表达式运算符和表达式逻辑运算逻辑运算逻辑运算真值表逻辑运算真值表a!a1001aba&b111100010000aba|b111101011000!&|运算符

14、和表达式运算符和表达式逻辑表达式的使用逻辑表达式的使用将下面的条件用将下面的条件用C语言的逻辑表达式表示语言的逻辑表达式表示例例1:1x10且且x7x=1&x=65如果如果gender不等于不等于F,整个表达式的值就是假,求值过程结束。,整个表达式的值就是假,求值过程结束。例例2:average=90|finalExam=90如果如果average大于等于大于等于90,整个表达式的值就是真,求值过程结束。,整个表达式的值就是真,求值过程结束。运算符和表达式运算符和表达式程序设计举例程序设计举例举例举例(cw0602.c)问题:任意输入一个字符,判断它是字母还是数字。问题:任意输入一个字符,判断

15、它是字母还是数字。#include void main()char c;c=getchar();if(c=A&c=a&c=0&c=9)printf(“%c is a digit.”,c);else printf(“%c is neither a letter nor a digit.”,c);运算符和表达式运算符和表达式位运算位运算位左移位左移,位与,位与&,位或,位或|,位异或,位异或位运算按二进制数运算法则进行计算位运算按二进制数运算法则进行计算将另立专题讲解运算规则将另立专题讲解运算规则运算符和表达式运算符和表达式赋值运算赋值运算赋值运算符赋值运算符简单赋值运算符:简单赋值运算符:=复合

16、赋值运算符:复合赋值运算符:+=,-=,*=,/=,%=优先级:优先级:14结合性:从右往左结合性:从右往左赋值表达式赋值表达式 d=23作用:将表达式的值赋给变量。作用:将表达式的值赋给变量。赋值表达式的值就是被赋值的变量的值。赋值表达式的值就是被赋值的变量的值。运算符和表达式运算符和表达式运算符和表达式运算符和表达式简单赋值运算简单赋值运算简单赋值运算符:简单赋值运算符:=举例举例类型转换类型转换如果赋值运算符右边表达式的类型与左边变量的类型不一如果赋值运算符右边表达式的类型与左边变量的类型不一致,则把右边表达式值的类型按左边变量的类型进行转换,致,则把右边表达式值的类型按左边变量的类型进

17、行转换,然后再赋值。然后再赋值。例如,例如,int n=3.6;n的值为的值为3。运算符和表达式运算符和表达式c=a+ba=b=c=d=10 x=(a=5)+(b=8)a=(a+b)a=(b=(c=(d=10)a=5,b=8,x=a+b运算符和表达式运算符和表达式复合赋值运算复合赋值运算复合赋值运算符:复合赋值运算符:+=,-=,*=,/=,%=简化了赋值表达式简化了赋值表达式=由下面的表达式简化而来由下面的表达式简化而来=举例举例运算符和表达式运算符和表达式a+=5x*=y+7x+=x-=x*=xa=a+5x=x*(y+7)x=x+(x=x-(x=x*x)运算符和表达式运算符和表达式逗号运算

18、符逗号运算符逗号运算符:逗号运算符:,优先级:优先级:15。结合性:从左往右。结合性:从左往右。逗号表达式逗号表达式,x=1,(a=b+1),i+求解过程:先求表达式求解过程:先求表达式1的值,再求表达式的值,再求表达式2的值,的值,直至求出表达式,直至求出表达式n的值。的值。表达式的值为表达式表达式的值为表达式n的值。的值。运算符和表达式运算符和表达式条件运算符条件运算符条件运算符:条件运算符:?:三目运算符三目运算符右结合右结合条件表达式条件表达式?:举例举例printf(“%s”,(grade=60)?“Passed”:“Failed”);(grade=60)?printf(“Passed”):printf(“Failed”);c=ab?a:b;运算符和表达式运算符和表达式小结小结运算符的相关概念运算符的相关概念运算符的分类运算符的分类按操作数个数分按操作数个数分按操作类型分按操作类型分各类运算符及表达式知识各类运算符及表达式知识优先级和结合性总结优先级和结合性总结

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁