C语言中“a+=a-=a*a”和"z+=x++||y++||++z"什么意思

如题所述

第一个
分开看
a+=()是a=a+()
a-=()是a=a-()
这个应该从右向左看
先看后半部分:a=a-a*a
再看前面:a=a+a-a*a=2a-a*a;

第二个
或者关系分开看
z+=x++:z=z+x++(x++自增,每次加一)
y++:自增,例如y=0,y++后y仍然=0,下次再执行时会每次加一(常用于for循环中)
++z:也是自增但与z++的区别就在于当出现++z后z的值已经=z+1.
或者关系三个表达式只要有一个成立其总体就成立
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-01-05
=赋值表达式的结合方向是从右到左的
z+=x++||y++||++z这个意思是:
z=z + x++;追问

那如果x=5,y=7,z=8,经过这个计算后x,y,z分别等于多少啊

追答

x=6,
y=7,
z=13;

第2个回答  2013-01-05
第一部分等价a+=(a-=a*a); a-=a*a等价a=a-a*a
下一个雷同

C语言中“a+=a-=a*a”和"z+=x++||y++||++z"什么意思
z+=x++:z=z+x++(x++自增,每次加一)y++:自增,例如y=0,y++后y仍然=0,下次再执行时会每次加一(常用于for循环中)++z:也是自增但与z++的区别就在于当出现++z后z的值已经=z+1.或者关系三个表达式只要有一个成立其总体就成立 ...

c语言中a+和a-是什么意思?
双引号里面的是字符串, 而单引号里面的代表字符。2、输出区别 str = “a”输出的就是a这个字母;str = ‘a’输出的测试65 3、底层区别 用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。

C语言中z+=x<y?x++:y++的意思
为真 则 z=z+(x++);为假 则 z=z+(y++);

国家计算机二级C语言考试题
正确答案: C 11)以下说法错误的是 A)高级语言都是用接近人们习惯的自然语言和数学语言作为语言的表达形式 B)计算机只能处理由0和1的代码构成的二进制指令或数据 C)C语言源程序经过C语言编译程序编译之后生成一个后缀为.EXE的二进制文件 D)每一种高级语言都有它对应的编译程序 正确答案: C (12...

问下,c语言里x+=y+=z是什么意思啊?
x+=y+=z相当于这个语句:y=y+z,x=x+y;我写下执行过程,楼主看看就应该明白了。x+=y+=z;那么y=y+z,所以y==2;x=x+y,所以x==5。执行printf();由于x<y为假,所以x<y==1,输出1\\n。z=y=x++*3;那么y=y+x++*3,相当于y=y+x*3,x++;所以y==15,x==6;z=y,那么z==15;...

C语言 main() {int x,y,z x=y=1 z=x+(++y||++z)这里面,这个(++y||...
|| 是或运算,若两边的表达式一个为真则整个表达式为真,++y的值是2,即为真,不必判断++z,所以(++y ||++z)表达式的值为1,则z = x+1 = 2。

c语言中a-=a是什么意思
a-=a的意思为a=a-a,先用a减a,然后再将得到的结果赋值给a。-=实际上是一种缩写形式,使得对变量的改变更为简洁。运算时,可以将其写成熟悉的形式,从右向左依次计算,注意在每次计算时,变量的值会发生改变, 如不注意,就会导致错误的情况发生。

c语言中*z++与++*z的区别
由运算符结合性可知 z++等效于*(z++) 即表达式的值为*z,且引起指针z指向后一元素 ++*z等效于++(*z) 即表达式的值为z指针所指当前元素的值自增一后的值,且指针z指向不变

c语言中"z+=y"是什么意思啊?
和z=z+y;一样的 是程序语言中的一种赋值方式。

c语言编程中z=(x++,y++)是什么意思? 如果x=1 Y=2 那么z是几 z是按 ...
逗号也是c++中的一种运算符,返回逗号右边表达式的值。所以上述使用方法等价于z=(1,2) = 2。即y++的值赋值给z。注意后自增而不是前自增,后自增优先级高于逗号运算符就可以了。

相似回答