桓楠百科网

编程知识、经典语录与百科知识分享平台

C语言基础:表达式(1)_c语言表达式怎么写

表达式:由运算符和运算对象(操作数)组成的有意义的运算式子,它的值和类型由参加运算的运算符和运算对象决定。

运算符:具有运算功能的符号

运算对象:常量、变量和函数等表达式

表达式有算术表达式、赋值表达式、关系表达式、逻辑表达式、条件表达式和逗号表达式等。

  1. 算术表达式

(1)算术运算符:

有++、--、+、-、*、/、%,还有正+、负-。

其中++、--、+、-为单目运算符,意思是只有一个操作数。

其它为双目运算符,运算符左右各有一个操作数。

(2)结合性:从左算到右。

(3)优先级:单目运算优先于双目运算,单目运算中*、/、%优先于+、-。

(4)自增运算符++(自减运算符—和自增运算符++类似用法,以下只讲++)

++是使变量的值增1。

++n和n++一样,都是n = n + 1的意思。

如果作为独立语句使用,则++n和n++一摸一样。

但是如果不是独立语句,a=n++和a=++n的用法有所区别。

a=n++:先把n的值赋给a,然后n再加1,执行后a的值比n的值小1。

a=++n:n的值先加1,然后再把n的值赋给a,执行后a的值和n的值是一样的。

程序1:

运行结果:

a=n++: n先用,再加;

a=++n: n先加,再用。

  1. 赋值表达式

简单赋值运算符:=

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

赋值表达式语法格式:变量 赋值运算符 表达式

  1. 简单赋值表达式

语法:变量 = 表达式;

含义:计算赋值运算符右侧表达式的值,将该值赋给左侧的变量,整个赋值运算符的值是左侧的变量的值。

(I)赋值运算符 =

x = 3*4;

将赋值号=右边表达式的值赋予左边的变量。

(II)结合性从右向左,如以下语句:

x = y = 3;

是先执行y=3,然后再执行x=y。

(III)类型转换:右侧表达式的类型自动转换成左侧变量的类型。

如若有定义:

int n;

double x, y;

则执行:

n = 3.14 * 2;

后,n的值为6。

而如果后面再执行:

x = n;

后,x的值为6.0。

程序2:

运行结果:

(2)复合简单赋值表达式

语法:

变量 += 表达式;

变量 -= 表达式;

变量 *= 表达式;

变量 /= 表达式;

变量 %= 表达式;

含义:

x += 表达式;

等价于:

x = x + 表达式;

如:

x *= y – 3;

等价于:

x = x * (y-3);

所以如果你以后看到程序里有这样的语句:

sum += x ;

那你就知道这是:

sum = sum + x;

的意思了。

3、关系表达式

(1)关系运算符有6个:

<、<=、>、>=、==、!=

(2)关系表达式:用关系运算符将2个表达式连接起来的式子。

(3)关系运算的结果:1(真)、0(假)。

(4)关系运算的结合性:左结合(从左开始算到右)。

4、逻辑表达式

(1)逻辑运算符有3个:!、&&、||。

(2)逻辑运算结果:1(真)、0 (假)。

(3)逻辑运算对象:关系表达式或逻辑量(1或0)。

如:

x >= 3 && x <= 5

!x

判断逻辑量的真假:非0 (真) 0 (假)

(4)逻辑运算的规则:

严格来说,真值表应该是这样:

(5)逻辑运算符的优先级:

!优先于&&,&&优先于||。

(6)逻辑运算的结合性:

左结合(从左开始算到右)。

5、算术运算、赋值运算、关系运算、逻辑运算的优先级:

最高:逻辑非(!)

第2: 算术运算符(单目运算优先于双目运算,双目运算中*、/由优先于+、-)

第3:关系运算符(其中优先于==、!=)

第4:逻辑与(&&)

第5:逻辑或(||)

第6:赋值运算符(=)

6、总结

今天讲了算术运算、赋值运算、关系运算、逻辑运算,给出各个运算的运算符和表达式,并给出各种运算的优先级。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言