资源描述:
《数据类型运算符》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1运算符的种类2算术运算符3自增自减运算符4表达式第二章数据类型、表达式退出1.目的、要求掌握C的各种数据运算符及优先级;2.重点、难点自增、自减运算;算术运算符用于各类数值运算,包括加(+)、减(-)、乘(*)、除(/)、求余%(或称模运算)。它们是双目运算符,在使用时需要两个运算量参与运算。关系运算符用于比较运算,包括大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)和不等于(!=)六种。逻辑运算符用于逻辑运算。包括与(&&)、或(
2、
3、)、非(!)三种。1运算符的种类自增、自减运算符包括++与--。*位操作运算符参与运算的量,按二进制位进
4、行运算。包括位与(&)、位或(
5、)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。赋值运算符用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)。条件运算符这是一个三目运算符,用于条件求值(?:)。逗号运算符用于把若干表达式组合成一个表达式(,)。指针运算符用于取内容(*)和取地址(&)二种运算。求字节数运算符用于计算数据类型所占的字节数(sizeof)。特殊运算符包括括号(),下标[]等。加法运算符“+”加法运算符为双目运算符,即有两个量参与加法运算。如x+y,5+6等。这与一般的数学加法运算相一致。减法运算符“-”作为减法
6、运算符时为双目运算符,如x-y,6-5等。作为负值运算符时为单目运算,如-y,-8等。乘法运算符“*”双目运算,如x*y,5*6等。2算术运算符除法运算符“/”除法运算符与我们在中学数学中所学的计算规则有很大的不同,与参与运算量的数据类型有关。其一,参与运算量均为整型时,结果也为整型,舍去小数。其二,如果运算量中有一个是实型,则结果为双精度实型。求余运算符(模运算符)“%”该运算的实质是求余数。参与运算的量必须均为整型。求余运算结果的符号与被除数相同(这一点应特别注意),其值等于两数相除后的余数。对于求余运算,应该从其结果的符号和值两方面来理解。不同数值类型间的混
7、合运算整型、单精度型、双精度型的不同数值类型可以进行混合运算。因为字符型数值可以看作整型,故整型、实型(包括单精度型与双精度型)及字符型之间可进行混合运算。但是,在运算时,不同类型数值必须转换为同一类型数值。其转换规律是:自动转换(由系统自动进行,无须干预),就高不就低(把低级类型转换为高级类型,再进行运算)。转换等级如下:低级──────────→高级字符型<整型<浮点型<双精度型不同类型数据的转换doublefloatlongunsignedintchar,short高低例.50L+5*’a’-30.0longintcharfloat①int②longdoub
8、le③double自增运算符“++”(两个加号),其作用是把变量的值增加1。自减运算符为“--”(两个减号),其作用是使变量值减少1。自增自减运算符均为单目运算,只需要一个运算量。++ii自增1后再参与其它运算。先加后用。--ii自减1后再参与其它运算。先减后用。i++i先参与运算后,i的值再自增1。先用后加。i--i先参与运算后,i的值再自减1。先用后减。3自增自减运算符取变量的值作为表达式的值:++n:n=n+1,取n的值作为表达式++n的值n++:取n的值作为表达式n++的值,n=n+1例:inti,k;i=2;k=++i;i=i+1;k=i;i=3k=3k
9、=i;i=i+1;inti,k;i=2;k=i++;i=3k=2在使用自增自减运算符时应注意以下几点:只能用于变量,不能用于常量。因为常量的值不能改变。所以不能使用如:10++、8--、--6。如果字符a表示一个常量,则也不能使用a++这样的形式;对于多个变量的运行结果,也不能使用。例如,(x+y+z)++是不能使用的,因为其结果不能保存在其中的任何一个变量中;当自增自减运算符与其他运算符结合使用时,应注意其具有“自右向左”结合的特性。例:自增及自减运算#includemain(){intx=6,y;printf("x=%d",x);y=++
10、x;printf("y=++x:x=%d,y=%d",x,y);y=x--;printf("y=x--:x=%d,y=%d",x,y);}/*若改为(y=x++;),结果如何?*//*若改为(y=--x;),结果如何?*/7,76,77,66,6例:分析下面程序段的运行结果:#includemain(){intx,y,z;x=3;/*整数3赋给变量x*/y=++x+3;/*计算赋值号右边的表达式,值赋给y变量*/printf("%d%d",x,y);/*按整数格式输出x和y的值*/z=x+++5;/*计算赋值号右边的表达式,值赋给z变
11、量*/pr