09 算数运算符

1,算数运算符是对数值类型的变量进行运算的

2,算数运算符一览

  

 3,自增:++

  作为独立的语句使用:i++和++i 都完全等价于 i=i+1

  作为表达式使用:i++ 先赋值后自增

          ++i 先自增后赋值

 1 #include<stdio.h>
 2 
 3 void main() {
 4     double d1 = 10/ 4;
 5     double d2 = 10.0 / 4;
 6     printf("d1=%f,d2=%f\n", d1, d2);  //2.000000   2.500000
 7     //10/4=2.5 ==>截取整数 ==>2 ==>2.000000
 8     //如果希望保留小数,参与运算数必须有浮点数
 9 
10 
11 
12     int res1 = 10 % 3;
13     int res2 = -10 % 3;
14     int res3 = 10 % -3;
15     int res4 = -10 % -3;
16     printf("res1=%d,res2=%d,res3=%d,res4=%d\n", res1, res2, res3,res4); //1  -1  1  -1
17     //取模公式:a%b=a-a/b*b
18     //res1=10-10/3*3=1
19     //res2=-10-(-10)/3*3=-1
20     //res3=10-10/(-3)*(-3)=1
21     //res4=-10-(-10)/(-3)*(-3)=-1
22 
23 
24 
25     int i = 10;
26     int j = i++;  //运算规则是 int j=i; i=i+1;  =>j=10 i=11
27     int k = ++i;  //int k=i+1; i=i+1;  => k=12  i=12
28     printf("i=%d,j=%d,k=%d", i, j,k); //12 10 12
29     
30 }

  细节说明:

    ①对于除号 “ /” ,它的整数除和小数除是有区别的,整数之间做除法时,只保留整数部分而舍弃小数部分。

    ②当对一个数取模时,可以等价 a%b=a-a/b*b,这样我们可以看到 取模的一个本质运算

    ③当自增当做一个独立语言使用时,不管是 i++ 还是  ++i  ,都是一样的。 i= i+1

    ④当自增当做一个表达式使用时 j=++i  等价 i=i+1   j=i+1

    ⑤当自增当做一个表达式使用时 j=i++ 等价 j=i ; i=i+1;

猜你喜欢

转载自www.cnblogs.com/shanlu0000/p/12339954.html