003-C运算符

运算符

C语言有34种运算符,常见的有加减乘除。

1>算术运算符

1、加

  10+2

2、减

  20-2

3、乘

  12*2

4、除

  10/2

5、取余

  10%3 = 1;
  10%-3 = 1;
  -10%3 = -1;
  -10%-3 = -1;

  取余结果只和左边的数值相关,和右边数值无关。
注意:类型转换

  自动类型转换

  int a = 10.99;//a为10,会弹出警告信息

  强制类型转换

  int a = (int)10.99;//这个也是10,没有警告信息

  自动类型提升

  doble d = 10.99 + 6;//运算时会将6转换为double型进行运算

赋值运算 =

  int a = 10;//=就是赋值运算符

  等号左边不能是常量。

 复合赋值运算符 +=,-+,*=,/=,%=

  int a =10;

  a +=10;//相当于a = a +10;

  a *=20;//相当于a = a * 20;

  a+= 2+2+10;// a+= (2+2+10);右边默认当作一个整体

自增自减运算符 -- ++

  int a=10;

  int b;

  b = a++;//先使用a然后自增,故b为10,a变为11

  b = ++a;//先自增再使用a,故a先变为12,b为12

 

sizeof运算符

计算变量所在内存字节数

  int a =10;

  int size = sizeof(a); // sizeof a;也可以这样写

  printf("%d",size);

关系运算

  1、条件判断

  判断条件是否成立,成立为真,不成立为假。

  任何非0值都为真,只有0为假。任何数值都有真假性。

  2、关系比较

   >,<,>=,<= ,==,!=

  条件成立返回1,不成立返回0.

注意:优先级

  [<,<=,>,>=]  >  [!=,==],运算从左到右

  int a = 10>9+1;// 0  , + 的优先级比 > 高,所以先计算加法运算,然后比较,最后赋值

逻辑运算符

  与&&,或||,非!

  1、逻辑与 &&

  条件1 && 条件2;//同时成立返回1,否则返回0

  只有条件1成立才会执行条件2

  2、逻辑或 ||

  条件1 || 条件2;//只要有一个成立就返回1,都不成立返回0

  只要条件1成立,条件2就不会执行

  3、逻辑非 !

  !条件1;//取反

  int a = !!10;//可以连续使用

三目运算符 条件?数值2:数值3;

  如果条件成立,就返回数值2,否则返回数值3.

  int a = 10>8?10:8;

 

                                                  未完待续......

你可能感兴趣的:(运算符)