学习C语言 7.25

运算符

  一.算术运算 + - * / % ++ --

1.对除法

(1).如果是两个整型数相除,此时相当于是整除的效果

(2).除法运算中 除数不能为 0

2.对取余

(1).除数不能为0

(2).求余运算,运算数不能是小数。必须是整数

(3).结果的符号 ,取决于 左操作数 的符号

3.在混和运算时注意优先级和结合性

优先级 --- 不同优先级的运算 混合运算时,高优先级的先结合

结合性 --- 同一优先级的运算 混合运算时,按照结合性进行结合。

运算的对象的个数     //单目

                     //双目

 //三目

4.在运算时会发生隐式转换

从右到左是必转,从下到上是低精度到高精度

5.强制类型转换

(类型)运算数  

    //强制类型转换 需要注意 ,并不会影响运算数本身

6.++自增 --自减

++  自增  --- 表示一次增加1  

    int a = 1;

a++   //后置加加  --- 先用(表达式的结果) 后加(让i自增)

++a   //前置加加  --- 先加(让i自增) 后用(表达式的结果)

注意:

1. a++ ++a如果单独使用,效果上没有区别

2. 先用后加 或 先加后用,是参与到别的运算中时,才发挥作用

3. 运算数,必须是一个可修改变量

4. 浮点类型也可以自增自减

5. ++a相比于 a++效率要高一些,因为a++在运算时会开辟一块临时地址存放表达式结果

6. 计算机在运算时使用贪心法:

   从左到右逐个扫描,将字符尽可能多的结合成c语言运算符

   Eg:i+++++i

      i ++ ++ + i

       ((i++)++) + i

  二.赋值运算 =   +=  -=  *=  /=

1.int a;

a = 10; //赋值运算

         //赋值表达式

   //结果 就是a的值

//类型 就是a的类型

a=(b=(c=10))  //可以连续赋值

2.+= //赋值运算

a += 1  // a = (a + 1)

a -= 1  // a = a - 1

3.不同类型间混合赋值:

int a;

a = 1.23;

//高进度 => 低精度

double/float => 整型  ==> 精度丢失

//低精度 => 高精度

整型 //int => short

     //long => int

     //short => char

    长类型=>短类型   //高位截断

    短类型=>长类型

无符号短类型 =>长类型  //高位补0

          有符号短类型 =>长类型  //符号位扩展 (高位补符号位)

           

三.逗号运算(顺序求值运算符):  ,

1.语法:

   表达式1,表达式2,表达式3, ...,表达式n

常见于for(sum = 0,i =0,j = 0;2;3)

  

2.逗号运算的过程:

1+2,a++,3+4 //从左到右,挨个运算

            //逗号运算表达式的结果 --- 是整个式子中最后一个表达式运算的结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值