首页 运算符与顺序程序设计

运算符与顺序程序设计

举报
开通vip

运算符与顺序程序设计运算符计算机实现操作有两种方式:运算:数学中所规定的各种基本运算,由运算符来实现。函数:对于复杂的运算,需要编制子函数来实现。标准函数(库函数);用户自定义函数;目录算术运算符和算术表达式赋值运算符和赋值表达式关系运算符和关系表达式逻辑运算符和逻辑表达式不同类型数据的混合运算算术运算符和算术表达式计算机中的算术运算对应于现实世界的算术运算算术运算符:++、--自增、自减运算++%求余数--/÷*×C语言的运算符现实中的算术运算符计算机中的算术运算符:+-*/%加法运算或正号运算符减法运算或负号运算符乘法运算符除法运...

运算符与顺序程序设计
运算符计算机实现操作有两种方式:运算:数学中所规定的各种基本运算,由运算符来实现。函数:对于复杂的运算,需要编制子函数来实现。 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 函数(库函数);用户自定义函数;目录算术运算符和算术表达式赋值运算符和赋值表达式关系运算符和关系表达式逻辑运算符和逻辑表达式不同类型数据的混合运算算术运算符和算术表达式计算机中的算术运算对应于现实世界的算术运算算术运算符:++、--自增、自减运算++%求余数--/÷*×C语言的运算符现实中的算术运算符计算机中的算术运算符:+-*/%加法运算或正号运算符减法运算或负号运算符乘法运算符除法运算符求余运算符,或称模运算符完成现实世界的算术运算(加、减、乘、除)++、--自增、自减运算符1说明:关于C语言中的除法运算(/)(整除和实数除法):在C程序中,两个整数相除(整除),会自动舍去小数部分。在算术运算中,8÷5=?在C程序中,8/5——结果为Why?如果希望结果为1.6,则应写成:如果参加运算的两个数中有一个数为实数,则结果是实数(实数除法)。Why?8.0/5;1.6关于求余运算:求余运算的意义为:被除数除以除数所得的余数求余运算要求%两侧都是整型数据。A%B—意味着求A除以B的余数。8%5的运算结果为:结果?3关于求余运算举例:给定一个三位数,将三个数字分离出来。例,328→3,2,8,解答:用m表示一个三位整数;a表示百位;b表示十位;c表示个位。百位=m/100;a=a=3十位=(m/10)%10;b=b=2个位=m%10;c=c=8328/100;(328/10)%10;328%10;算术表达式:算术表达式:用算术运算符和括号将运算量连接起来的式子称为算术表达式。运算符有优先级和结合性:计算表达式的值时,按照优先级的高低依次计算;如果运算符优先级相同,则按规定的结合方向进行。算术运算符的结合性从左到右(1)求三个数的算术平均值代数表达式:ave=算术表达式:ave=(a+b+c)/3.0(2)根据三角形三边计算三角形面积代数表达式:算术表达式:sqrt(s*(s-a)*(s-b)*(s-c))(3)根据半径计算圆的周长代数表达式:C=2πr算术表达式:C=2*3.14159*r算术表达式算术运算符的优先级+、-(加减运算符)最低!*、/、%第二级!-(负号运算符)无括号时我最高!(、)(括号)最优先!自增(++)和自减运算(--)++运算符的作用:是使变量的值增1。--运算符的作用:是使变量的值减1。原始值原始值+1变量++变量变量原始值原始值-1变量--变量变量自增(++)和自减运算(--)自增和自减运算只能应用于整型变量和指针型变量。例,I++、P--等++和--可以写在变量的左侧或右侧;而且其意义不同。“变量名++”和“变量名--”:先取值,后做运算“++变量名”和“--变量名”:先做运算,后取值自增(++)和自减运算(--)举例N=I++变量N010变量I变量N??变量IN=++I变量N010变量I变量N??变量I11101111练习已知i=5j=i++;j=?i=?j=++i;j=?i=?5666关于自增和自减运算符的说明:自增和自减运算符只能用于整型变量。自增和自减运算符的结合方向是“自右向左”。例:-i++等价于-(i++);*i++等价于*(i++);++,--运算符举例:设x=5,问:下面各表达式的值?y=x++;y=(x++)+(x++);y=(x++)+(++x);y=(++x)+(x++);y=(++x)+(++x);++,--运算符举例:设x=5,问:下面各表达式的值?y=(x++)+(x++)+(x++);y=(x++)+(++x)+(x++);y=(++x)+(x++)+(x++);y=(++x)+(++x)+(x++);y=(++x)+(++x)+(++x);2.赋值运算符和赋值表达式赋值:在计算机程序中,要完成这样一种操作→将一个表达式的计算结果送到一个变量当中。赋值运算符:=赋值表达式:变量名=表达式赋值运算符的结合性:自右向左即:a=b=c相当于a=(b=c)赋值运算符简单的赋值运算符复合的赋值运算符=+=-=*=%=/=简单的赋值运算符——=代表一种操作。执行结果:将“=”右侧的表达式的值送入“=”的左侧的变量中。例:a=x+y;执行过程:计算表达式“x+y”的值;将计算结果送入变量名“a”中结果:x,y值不变;a的值变为x+y的值赋值运算符+=执行结果:将“=”左侧的变量与“=”右侧的表达式的值的和送入“=”左侧的变量中。例:a+=x+y;执行过程:计算表达式“a+(x+y)”的值;将计算结果送入变量名“a”中;结果:x,y值不变;a的值变为a+(x+y)的值;赋值运算符-=执行结果:将“=”左侧的变量与“=”右侧的表达式的值的差送入“=”左侧的变量中。例:a-=x+y;执行过程:计算表达式“a-(x+y)”的值;将计算结果送入变量名“a”中;结果:x,y值不变;a的值变为a-(x+y)的值;赋值运算符*=执行结果:将“=”左侧的变量与“=”右侧的表达式的值的积送入“=”左侧的变量中。例:a*=x+y;执行过程:计算表达式“a*(x+y)”的值;将计算结果送入变量名“a”中;结果:x,y值不变;a的值变为a*(x+y)的值;赋值运算符/=执行结果:将“=”左侧的变量与“=”右侧的表达式的值的商送入“=”左侧的变量中。例:a/=x+y;执行过程:计算表达式“a/(x+y)”的值;将计算结果送入变量名“a”中;结果:x,y值不变;a的值变为a/(x+y)的值;赋值运算符%=执行结果:将“=”左侧的变量除以“=”右侧的表达式的值的余数送入“=”左侧的变量中。例:a%=x+y;执行过程:计算表达式“a%(x+y)”的值;将计算结果送入变量名“a”中;结果:x,y值不变;a的值变为a%(x+y)的值;简单的赋值举例:就是把一个表达式的值赋给一个变量。如下图示:10变量ii=5;?变量i10变量ii=3+6;?变量i59赋值表达式由赋值运算符将一个变量和一个表达式连接起来的式子称为赋值表达式。格式:〈变量〉〈赋值运算符〉〈表达式〉对赋值表达式求解的过程:将赋值运算符右侧的表达式的值赋给左侧的变量。赋值运算符的结合性:结合性:从右向左例:a=b=c=8等价于a=(b=(c=8))即:第一步:c=8第二步:b=8第三步:a=8不同类型数据的混合运算C语言允许数据值从一种类型转换成另一种类型在进行运算时,不同类型的数据要先转换成同一类型,然后进行运算。转换的规则按图所示。int←char,short高低doublelongunsignedfloat强制类型转换强制类型转换运算符,将一个类型的变量值强制转换为另一种类型。一般格式为:(类型标识符)表达式例:k=(int)((int)x+(float)i)(float)(x=85)对一个变量进行强制转换后,得到一个新的类型的数据,但原来变量的类型不变。例:若x原为实型变量且值为2.6,在执行i=(int)x后得到一个整数2,并把它赋给整型变量i,但x仍为实型,值为2.6。写出下面算术表达式的值:x+a%3*(int)(x+y)%2/4,设x=2.5,a=10,y=4.7。x=2.5;a=10;y=4.7;a%3→10%3→1(int)(x+y)→(int)7.2→7[a%3]*[(int)(x+y)]→1*7→7{[a%3]*[(int)(x+y)]}%2→7%2→1{{[a%3]*[(int)(x+y)]}%2}/4→1/4→0x+{{[a%3]*[(int)(x+y)]}%2}/4→2.5+0最后结果:2.5练习:计算下列表达式的值(float)(a+b)/2+(int)x%(int)y设a=2,b=3,x=3.5,y=2.5二、关系运算符和关系表达式关系表达式:用关系运算符将两个表达式(可以是算术表达式、关系表达式、赋值表达式或逻辑表达式)连接起来的式子,称为关系表达式。关系运算符<、<=、>、>===、!=高低优先级关系表达式的值为逻辑值“真”或“假”;以1代表“真”,以0代表“假”。例如:关系表达式“8==4”的值为“假”;表达式的值为:关系表达式“5>0”的值为“真”;表达式的值为:结合性:从左向右01三、逻辑运算符和逻辑表达式逻辑表达式:是由逻辑运算符和运算量所构成的式子,其中运算量主要有关系表达式和逻辑量两种,也可以是C中任意合法表达式。逻辑运算符:||(逻辑或)&&(逻辑与)!(逻辑非)高低优先级逻辑运算的真值表ab!a!ba&&ba||b真真假假真真真假假真假真假真真假假真假假真真假假注意:1、C语言编译系统:以数值1代表“真”,以0代表“假”;2、若逻辑运算符左右连接的不是逻辑量或关系表达式时,C语言编译系统以其值非0代表“真”,以0代表“假”。例如:若x=10,则!x的值为_______。若a=3,b=2,则a&&b的值为____。5&&0||8的值为___________。011逻辑运算符的特点在逻辑表达式的求解中并不是所有的运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行下一个运算符。例如:1、a&&b&&c:只有a的值为逻辑真时,才计算b的值;也只有a与b的值都为逻辑真时,才计算c的值;2、a||b||c:只有a的值为逻辑假时,才计算b的值;也只有a与b的值都为逻辑假时,才计算c的值;举例:1、初始状态a=1;b=2;c=3;执行a++&&++b&&c--之后,a、b、c的值分别是多少?2、初始状态a=1;b=2;c=3;执行--a&&++b&&c--之后,a、b、c的值分别是多少?3、初始状态a=0;b=2;c=3;执行a++&&++b&&c--之后,a、b、c的值分别是多少?举例:1、初始状态a=1;b=2;c=3;执行a++||++b||c--之后,a、b、c的值分别是多少?2、初始状态a=0;b=2;c=3;执行a++&&++b&&c--之后,a、b、c的值分别是多少?3、初始状态a=1;b=2;c=3;执行++a||++b||c--之后,a、b、c的值分别是多少?条件运算符和条件表达式条件运算符:?:条件表达式的形式为:表达式1?表达式2:表达式3条件表达式的执行过程:先计算表达式1,若其值为非零,则结果为表达式2的值,否则就是表达式3的值。例:表达式y=a>b?a:b的执行结果是什么?逗号运算符:逗号表达式的形式为:表达式1,表达式2,表达式3逗号表达式的执行过程:先计算表达式1,然后计算表达式2,表达式3;整个表达式的结果为:最后一个表达式的值。例:y=(a=22,a+12,a+30);表达式的值为:,52!(非)算术运算符关系运算符&&||赋值运算符,各种运算符优先级:例如:x<y&&m<n等效于(x<y)&&(m<n)a==b||c==d等效于(a==b)||(c==d)!a&&b>c等效于(!a)&&(b>c)高低要求:深刻理解在计算机中各类型数据在内存中的存储形式、取值范围和能够对它进行的操作;深刻理解各基本类型作了short、long、unsigned扩展之后与原类型之间的区别;深刻理解各种整型常量的形式,字符常量、转义字符和符号常量的意义和作用。熟练掌握每一种变量的定义格式;深刻理解每一个算术运算符的功能、使用格式、计算结果,尤其是/、%、++、--;深刻理解赋值运算符(=)的意义、注意与数学中的等号相区别;复合赋值运算符的执行过程和执行结果。练习一、选择题:以下叙述中正确的是:(a)C程序由主函数组成(b)C程序由函数组成(c)C程序由函数和过程组成(d)C程序由子函数组成√一、选择题:以下符号中不能用作用户标识符的是:(a)_256、(b)void(c)scanf、(d)Struct√解答:c语言中的标识符分为三类:关键字、预定义标识符和用户标识符;规定:关键字不允许用作标识符一、选择题:以下不能正确表示算式———的是:(a)(a*b)/c*d(b)a*b/(c*d)(c)a/c*b/d(d)a*b/c/d√解答:c语言中表达式的计算是按算符的优先级来进行的。abcd一、选择题:以下的变量定义中合法的是:(a)float3_four=3.4;(b)int_abc_=22;(c)doublea=1+4e2.0;(d)shortdo=15;√一、选择题:C语言中运算对象必须是整型的运算符是:(a)%=(b)/(c)=(d)**√一、选择题:若有intk=11;则表达式(k++*1/3)的值是:(a)12(b)3(c)5(d)4√二、填空题:C程序中定义的变量,代表内存中的一个____________。存储单元一个C程序必须有一个_____函数。一个C程序必定从______函数开始执行。主主二、填空题:C语言中的标识符可分为_______、______________和预定义标识符三类。关键字用户标识符二、填空题:C语言程序中的数据,在计算机内存储器中最小的存储单位称为______,其中只能存放_______进制数。位二二、填空题:若k和j为int型变量,请写出执行表达式k=(j=3,j+2,++j,j++)后,表达式的值为_____,变量k的值_____变量j的值为______。445关于C优先级的口诀:应用这个口诀的前提是你必须认识所有的C语言的运算符。优先决 括号成员第一:括号运算符[]()成员运算符.->全体单目第二:所有的单目运算符比如++--+(正)-(负)指针运算*&乘除余三,加减四:这个“余”是指取余运算即% 移位五:移位运算符:<<,>>,关系六:关系:><>=<=等等于(与)不等排第七:(即==!=) 位与异或和位或,“三分天下”八九十:位运算:位与(&)异或(^)位或(|) 逻辑或跟与,十二和十一:逻辑运算符:||和&& //注意顺序:优先级(||)底于优先级(&&) 条件高于赋值,排到13位:三目运算符优先级只比赋值运算符和“,”高(需要注意的是赋值运算符很多!) 逗号运算级最低!:逗号运算符优先级最低
本文档为【运算符与顺序程序设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
正方体
暂无简介~
格式:ppt
大小:315KB
软件:PowerPoint
页数:64
分类:
上传时间:2022-05-10
浏览量:3