c语言中运算符与表达式

1.  变量赋值

      1、初始化 :在定义的是时候直接赋值,如 :int  a = 20;

      2、赋值 : 先定义,在赋值,如:  int a;     a = 20;

        c语言中初始化和赋值是不同的;

2. 运算符 

                                                  运算符和结合性

                                                   

 

               1.算术运算符

                  如果参加+、一、*、/运算的两个数中有一个数为实数或双精度数,则结果是 double型,因为所有实数都按 double 型进行运算。

                  c语言中任何表达式都有数据类型。

                   /   :除法运算符  ,需要说明,两个整数相除的结果为整数,如5/3的结果值为1,舍去小数部分。

                          分母不能为0,为0会导致程序崩溃。

                  %  :求余运算符     ,要求左右两个运算符必须是整形或与整形相兼容。

                          求余表达式的结果的符号与左操作数的的符号有关,与右操作数的符号无关。

                           求余表达式的结果一定小于右操作数。

                   编译器只做类型检查。

                   形参和实参,个数相等,类型匹配。

                   在运行时,表达式代表的是临时变量(匿名变量)。

                  练习  :从0到99中任意抽取10个数

                           

             算术表达式

               自增运算符和自减运算符只能用于变量,而不能用于常量和表达式

               ++i  :先加再用       运行时,效率更高。   

               i++ (临时变量) :先用再加

              结合方向:自右向左;

               left value      :左值    能放到赋值运算符的左边(变量)  能取地址

               right   value   : 右值   能放到赋值运算符的右边  (常量)  不能自增或自减     不能取地址

                所有的匿名变量都是右值

                自减运算符和自增运算符相同。

3.各类数值型数据间的混合运算

  

图 中横向向左的箭头表示必定的转换,纵向的箭头表示当运算对象为不同类型时转换的方向。

注意:箭头方向只表示数据类型级别的高低,由低向高转换。

         强制类型转换运算符

       可以利用强制类型转换运算符将一个表达式转换成所需类型。其一般形式为
(类型名)(表达式),如:

                                   (double)a    : 将a转换成 double类型);

      需要说明的是,在强制类型转换时,得到一个所需类型的中间变量,原来变量的类型未发生变化。

      如果已定义x为 float型,进行强制类型运算后得到一个int 型的中间变量,它的值等于x的整数部分,而x的类型不变(仍为float 型)。

4.赋值运算符和赋值表达式

      1.赋值运算符

            赋值符号“=”就是赋值运算符,它的作用是将一个数据赋值给一个变量。

       2.类型转换

         1.将浮点型数据赋值给整形变量时,舍弃浮点数的小数部分,称为小数部分截断。

          2.将整形数据赋值给浮点型变量时,数值不变,但以浮点数的形式存放进变量中。

          3.将整形数据赋值给短整型变量时,会出现高位截断。

          4.将短整型数据赋值给整型变量时,会发生符号位扩展。如果短整型数据为正,则在整型的高位补0,如果短整型数据为负,则在整型的高位补F.

          5.将unsigned short 型数据赋值给整型变量时,不会发生符号位扩展,只需将高位补0即可。

        3.赋值表达式

          由赋值运算符将一个变量和一个表达式连接起来的式子称为“赋值表达式”。它的般形式为
<变量><赋值运算符><表达式>

5.逗号运算符和逗号表达式

        1.逗号运算符

        C语言提供一种特殊的运算符,用它将两个表达式连接起来,又称为“顺序求值运算符”。

         2.逗号表达式

        逗号表达式的一般形式为表达式1,表达式2
        逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值    

       注意,并不是任何地方出现的逗号都是作为逗号运算符。如:

         printf("%d,%d,%d",a,b,c);

       其中的“a,b,c”并不是一个逗号表达式,它是printf函数的3个参数。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值