C语言中的运算符

C语言中的运算符

一、运算符

1、  算术运算符:+  -  *  /  %

2、  赋值运算符:赋值运算符用“=”来给变量赋值。注意,在C语言中“=”不表示相等,而只是一个运算符。

3、  增量和减量运算符:

在程序开发中,我们经常需要对一个变量的值执行加1或者减1的操作。例如:

 x = x + 1;

 x = x – 1;      

为简化这种操作,C语言提供了增量运算符“++”和减量运算符“- -”。

根据运算符与操作数在表达式中的位置关系,分为前缀形式和后缀形式两种用法。


(1)前缀形式(大于任何运算符)

当运算符出现在它作用的变量的前面,称为前缀形式,表示变量在使用前自动加1或减1。其语法形式为:

 + +变量

 - -变量     

(2)后缀形式(小于任何运算符)

当运算符出现在它作用的变量的后面时,称为后缀形式,表示变量在使用后自动加1或减1。其语法形式为:

 变量+ +

 变量- -     

使用自增自减运算符时应注意:

++,- -运算只能作用于变量,不能用于表达式或常量。

 

例题1:int  a = 6;

        a=(++a)+(a++); 

        求输出的a的值。      

分析:a、由于前缀形式大于任何运算符,所以优先计算++a,得出++a为7,此时的a也为7

            b、再者,由1知a为7,所以a++为7(a++意思是先将a赋值,最后再自加)

            c、根据1、2知最后结果为7+7+1

            计算如图所示:

例题2:int  a = 6;

        a=a+(++a)+(- -a)-(a++)

        求输出的a的值。

分析:a、由于前缀形式大于任何运算符,所以优先计算++a,得出++a为7,此时的a也为7

            b、由于计算机太“笨”,要从左到右以此计算,所以算出a+(++a)的值为7+7=14

            c、此时,在计算- -a的值,由1得a的值为7,所以- -a的值为6,a也为6,所以计算出a+(++a)+(--a)的值为14+6=20

            d、最后一步有一个(a++)表示将第3步中a的值6,先赋值给a后,自身在加1,所以得出的结果是20-6+1=15

            计算如图所示:


 例题3:如图所示:

 


4、  关系运算符

        = =等于  !=不等于  > 大于  < 小于  >= 大于等于  <= 小于等于


5、  逻辑运算符

         &&逻辑与(一错全错)

          || 逻辑或(两个错才全错)

         ! 逻辑非


6、  条件运算符

         一般形式为:  表达式1  ?  表达式2:表达式3

         解释:若满足表达式1,则执行表达式2,否则执行表达式3


7、数据类型强制转换运算符

(1)自动类型转换

          基本规则如下:

      a、当出现在表达式里时,有符号和无符号的char和short类型都将自动被转换为int,在需要的情况下,将自动被转换为unsigned  int。

      b、在包含两种数据类型的任何运算里,两个值都将被转换成两种类型里较高的级别

      c、类型级别从高到低的顺序是:double、float、long、int

      d、在赋值语句里,计算的最后结果被转换成将要被赋予值的那个变量的类型。

      e、当作为函数的参数被传递时,char和short会被转化为int,float会被转换为double。

(2)强制转换

         强制类型转换运算符的使用形式为:

       (type)表达式


8、特殊运算符

(1)长度运算符sizeof

(2)取址运算符&

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值