1          运算符表达式和语句

1.1       基本运算符

1.1.1          =

数据对象:泛指数据在内存的存储区域

左值:表示可以被更改的数据对象

右值:能赋给左值的量

1.1.2          +

1.1.3          –

1.1.4          *

1.1.5          /

1.1.6          %

取余数

1.1.7          +=

加等于

1.1.8          -=

减等于

1.1.9          *=

乘等于

1.1.10      /=

除等于

1.1.11      %=

取余等于

1.1.12      ++

自加1

,i++先计算表达式的值,然后再++

,++i是先++,再计算表达式的值

1.1.13      --

自减一

1.1.14      逗号运算符

int a = 2;

int b = 3;

int c = 4;

int d = 5;

int i = (a = b, c + d);

 

逗号表达式先求逗号左边的值,然后求右边的值,整个语句的值是逗号右边的值。

1.1.15      运算符优先级

优先级

运算符

结合性

1

++(后缀),--(后缀),()(调用函数),{}(语句块),.,->

从左到右

2

++(前缀),--(前缀),+(前缀),-(前缀),!(前缀),~(前缀),sizeof,*(取指针值),&(取地址),(type)(类型转化)

从右到左

3

*, /, %

从左到右

4

+,-

从左到右

5

<< >>

从左到右

6

< > <= >=

从左到右

7

== !=

从左到右

8

&

从左到右

9

^

从左到右

10

|

从左到右

11

&&

从左到右

12

||

从左到右

13

?

从右到左

14

=,*=,%=,+=,-=,<<=,>>=,&=,|=,^=

从右到左

15

,(逗号运算符)

从左到右

1.2       复合语句

{}代码块

1.3       空语句

只有一个;号的语句就是空语句,空语句在C语言里面和合法的,并且是在某些场合必用的

1.4       类型转化

double f = (double)3 / 2;

()为强制类型转化运算符

#include <stdio.h>

int main01()
{
int a = ;
int b = ;
int c = a % b;
printf("c = %d\n", c); //a = a + 5;//语法正确,但是是个菜鸟
a += ; a = a + ;
a += ;
a++;
a = a - ;
a -= ;
a--;
return ;
} int main02()
{
int i = ;
//i++;
//++i; //int a = ++i;
//int a = i++;
int a = i++ + ++i;
//i = i + 1;
//int a = i + i;
//i = i + 1; printf("%d\n", a);
printf("%d\n", i);
return ;
} int main03()
{ int a = ;
int b = ;
int c = ;
int d = ;
int i = (a = b, a + d); printf("i = %d\n", i); a = ; b = ; c = ; d = ;
i = (a + (b - c)) * d;
printf("i = %d\n", i); a = ;
b = ;
c = ; i = a = b = c;
printf("i = %d\n", i); {
i = ;
a = ;
} ;//空语句 printf("i = %d\n", i); for (; ; )//循环语句,代表复合语句内部的代码要执行3次
{
printf("hello\n");
} return ;
} int main()
{
//double f = 3 / 2;//c语言两个整数相除的结果自动转化为一个整数
//double f = (double)3 / 2;//(double)3,意思是将整数3强制转化为double型
//double f = 3.0 / 2; int a = ;
int b = ;
double f = (double)a / b;
printf("%f\n", f);
return ;
}

资料来源:传智播客 仅供学习研究

最新文章

  1. wex5 实战 手指触屏插件 hammer的集成与优劣
  2. 传感器之超声波测距HC-SR04
  3. [知识点]计算几何I——基础知识与多边形面积
  4. eclipse创建web项目
  5. JQuery基础一
  6. 关于UID和GID的创建、修改、删除;简要举例
  7. Git合并开发代码分支到测试代码分支
  8. C 栈 链式存储
  9. python基础教程_学习笔记1:序列-1
  10. 抽出SqlHelper
  11. U盘安装Centos后拔除U盘无法启动问题解决方法
  12. Jetty入门(1-2)eclipse集成jetty插件并发布运行应用
  13. [HEOI2014]平衡(整数划分数)
  14. JS数据交换的三种方式
  15. 【batch】批处理文件多参数处理和for循环字符串连接
  16. 使用springboot actuator监控应用
  17. post方式接口测试(二)_参数化
  18. MyEclipse2014安装插件的几种方式(适用于Eclipse或MyEclipse其他版本)
  19. Python 中的map、reduce函数用法
  20. Python中赋值、浅拷贝与深拷贝

热门文章

  1. The Master of Science degree in Computer Scienc
  2. 铁乐学python_day03-作业
  3. javascript Spline代码
  4. September 11th 2017 Week 37th Monday
  5. .Net开发八年,坐标杭州,上个月换工作感觉现在.Net岗位很少,希望和同在杭州的同行们交流一下
  6. [转]Hadoop 读写数据流
  7. Extjs TreePanel API详解
  8. C# 通过word模板动态生成Word
  9. django admin自定义
  10. 错误检查roswtf