c语言中x+= y和x-= y的区别是什么?
作者&投稿:公石 (若有异议请与网页底部的电邮联系)
x+=y 等价于x = x + y
x-=y 等价于 x = x - y
同理x*=y 等价于x = x * y。
如以下代码:
int main()
{
int a = 1;
int b = 2;
int c = 1;
a+=b; //等价于a = a + b
c = c + b; //等价于c+=b
printf("%d %d" ,a ,c); //输出a和c
return 0;
}
结果图:
扩展资料:
C语言特性:
C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
C语言传递参数均是以值传递(pass by value)[3],另外也可以传递指针(a pointer passed by value)。
不同的变量类型可以用结构体(struct)组合在一起。
只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
部分的变量类型可以转换,例如整型和字符型变量。
透过指针(pointer),C语言可以容易的对存储器进行低级控制。
编译预处理(preprocessor)让C语言的编译更具有弹性。
照侵亚硝:[答案] x+=y 就相当于 x=x+y 其他的类似
新会区17130392639: x*y和(x)*(y)在c语言中有什么不同 - ?
照侵亚硝: 这是一个三目运算符,如果 --x 与 y++相等的话,把--x的值赋给a,否则,将++y的值赋给a; 在这里,--x是先对x进行自减1再执行语句,y是再执行完语句再执行y自加1,也就是说现在解析出来的表达式为 x - 1 == y ,后面同理!
新会区17130392639: c语言中X+=Y是什么意思?X - =Y呢?x,y可以是变量吗? - ?
照侵亚硝: 相当于 x =x+y x = x-y; 可以是变量
新会区17130392639: c语言语句:x+=y;y=x - y;x - =y怎么解读,有什么功能 - ?
照侵亚硝: +=; -= 是复合的赋值运算符 x += y; 等价于 x = x + y; x -= y; 等价于x = x - y;C语言采用复合运算符 一是简化程序.二是为了提高编译效率,能产生质量较高的目标代码
新会区17130392639: C语言的x+=y;y=x - y;x - =y 怎么运算的 - ?
照侵亚硝: 按照下面的算: 第一个式子转化为:x=x+y;第三个转化为:x=x-y 这样就可以算出来x和y的值了
新会区17130392639: C语言中,x - =y+1是x=x - y+1,还是x=x - (y+1)呢? - ?
照侵亚硝: 在赋值语句中,表达式是从右边开始计算的,也就是说 x-=y+1,先计算tmp=(y+1),然后x-=tmp.所以说结果是 x=x-(y+1)
新会区17130392639: c语言中y=x+++x是什么意思?若x=1,则y=? - ?
照侵亚硝: 首先,等号是右结合,故先算x+++x,再复制给y;+是左结合且优先级比++低,故先算x++;x++结果是1,但运算完后x自增变为2.具体过程如下:1、t = x++ = 1( 结束后t=1, 但x = 2);2、t2 = t+x = 1 + 2 = 3;3、y = t2 = 3.即 y = 3
新会区17130392639: c语言中x+=y是什么意思 - ?
照侵亚硝: x=x+y的缩写形式
新会区17130392639: c语言中x+=y -- 是什么意思 - ?
照侵亚硝: 实际效果就是一次执行 x = x + y; y = y - 1;
新会区17130392639: 关于c语言的一道题 执行以下语句:x+=y,y=x - y;x - =y;的功能是( ) - ?
照侵亚硝:[选项] A. 把x和y按从大到小排列 B. 把x和y按从小到大排列 C. 无确定结果 D. 交换x和y的值