- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言基础教程第三章_运算符和表达式免费版
完全免费版
第三章??????运算符和表达式
?3.1.1算术运算符
?? 算术运算符分单目运算符和双目运算符两种。单目运算符只有求负数运算符(一),又称为负值运算符。与它对应的正值运算符(+)很少使用,这里不详述。负值运算符是用来改变一个操作数的正或负号的。在一个正数前加一负值运算符后,则该数变为负数;在一个负数前加一负值运算符后,则该数变为正数。
??? 双目运算符有如下5种:
??? +:加法运算符。如,3+9十I1.??? 一:减法运算符加,7一40??? *:乘法运算符。如,5*3??? /除法运算符。如,18/6??? %:求余运算符。如,12%5.
??? 这5种运算符都要求有两个操作数,故称双目运算符。
??? 说明:
??? (1)除求余运算符只适用整型数运算外,其余运算符可以作整数运算,也可以作浮点数运符。加、减法运算符还可作字符运算。
??? (2)两个整数相除其结果为整数。例如,8/5结果为1.小数部分舍去。如果两个操作数有一个为负数时,则舍入方法与机器有关。多数机器是取整后向零靠拢。例如,8/5取值为1.8/5取值为一1,但也有的机器例外。
??? (3)求余运算符的功能是舍掉两整数相除的商,只取其余数。两个整数能够整除,其余数为0,例如,8%4的值为0,当两个整数中有一个为负数,其余数如何处理呢?请记住,按照下述规则处理:
??? 余数=被除数-除数*商
??? 这里,被除数是指%左边的操作数,除数是指%右边的操作数,商是两整数相除的整数商。
??? 例如,-8/5的余数应该是
??? —5*(-1)=-3
??? 而8/一5的余数应该是
??? 8-(-5)*(-1)=3
??? (4)一个字符常量可与整数作加减运算。下列表达式是合法的:
??? C+A-a
??? 其中,c是一个字符变量,该表达式将c所存放的大写字母变成了小写字母。
3.1.2 增1减1运算符
?? 增1和减1运算符也是属于算术运算符,这是两个单目运算符,这两个运算符具有副作用,因此,单独列出讲解。
??? 增1运算符的作用是使被作用的变量值增1,而使其表达式的值或增1或不增1,这取决于前缀作用还是后缀作用。前缀作用时,则表达式值增1;后缀作用时,则表达式值不增to所谓前缀作用是指运算符作用在变量之前,后缀作用是指运算符作用在变量之后。增1运算符是由两个加号组成的:十+.例如:
??? int i=5
??? 执行++i后,i的值为6,而+十1的值也是6,执行i十+后,i的值为6,而i++的值为5.
??? 可见,增1运算符实际上有两个作用,除了可以产生一个表达式的值之外,还会改变其变量本身的值。一般的运算符只有产生表达式的值这一功能,而没有改变变量值的功能。例如,求负数运算符,在下述表达式中。没有改变变量本身的值:
??? int i=5;
??? 一i的值为一5,而i的值仍然是5e
??? 我们说增1运算符有副作用是指这种运算符除了产生表达式值的作用之外,还有一个改变变量的作用,后一个作用不是所有运算符都有的,故称为副作用.在C语言中,具有副作用的运算符除了增1减1运算符外,还有赋值运算符。
??? 总结一下增1运算符功能上的特点如下:
??? 增1运算符作用于一变量,可使该变量的值增i;如果前缀作用于变量,则其表达式的值为原变量值增1;如果后缀作用于变量,则其表达式的值为原变量的值。
??? 同样的道理,减1运算符功能上的特点如下:
??? 减1运算符作用于一变量,可使该变量的值减1;如果前缀作用于变量,则其表达式的值为原变量值减1;如果后缀作用于变量,则其表达式的值为原变量的值。例如:
??? int a=2;
??? 执行一一a后,a变量的值为l,一一a表达式的值为1;执行a一一后,a量的值为1,a一表达式的值为2.
??? 在学习和掌握增1和减1运算符时,应该搞清楚下列的两个不同。
??? .变量值和表达式值的不同;
??? .前缀作用和后缀作用的不同。
??? 在使用增1和减1运算符时应该注意:它只能作用于变量,而不能作用于常量和表达式,例如,下列写法都是不合法的:
??? int a=5,b=3;
??? +十一a, (a+b)++,++10,一一(a*b)等
??? 关于增1减1运算符组成表达式计算问题在本章后面还会讲述。
3.1.3关系运算符
??? 关系运算符都是双目运算符,其功能是用来对两个操作数的大小进行比较的。C语言提供了如下6种关系运算符:
??? :小于运算符。如,ab??? =:小于等于运算符。如,c=5??? :大于运算符。如,bc-??? =:大于等于运算符,如,b=o??? ==等于运算符。如,c==b??? !=;不等于运算符。如c! =l0
??? 在这6个运算符
文档评论(0)