y=10-x能否用x+y=10代替

img


我想问一下,int y=10-x这一行为什么不可以使用int y+x=10呢?
如果在int x=0;的下一行添加了int y=10;也不可以

谢谢各位同志!

这个是C语言基础的理解问题了。像y=10-x,等号左边是变量名称,右边是计算公式,其计算结果会赋值给y。编程不是像数学里的加减可以换位。你写y+x=10的话,y+x就是变量名了,10是赋的值。你看下报错信息吧。大概不符合变量命名规范或者代码书写格式要求?

肯定是不能的,你要理解赋值语句的含义

也许有些语言可以,但你用C++目前不可以

楼上也说了,计算机语言虽然出身于数学家,但是又不完全是数学表达式的
比如:
a=a+1;数学表达式不能这么表达,俺们理解是赋值,纯数学表达式就得理解为函数,他会写成 y=a+1

你得问题:
y=10-x;我们计算机的人认为是把10-x的值赋值给y
如果你换数学家:他的命题是 如果X+Y=10,现在x为n,求y是多多少。这是解方程。那么他的用解方程的函数了,比如他会调用一个高斯消元函数解

ps:我上面也说了C++不行,但有些语言可以,比如lisp这种仙葩级别纯函数语言,你自己给自己造个函数当关键字完全可行

等式左边变量只能有一个啊

这个=号是赋值的意思,不是用来表示两边的值相等。


int y = 10 -x;// 定义了一个变量y 给它赋值 为10-x

int y + x = 10; // 就没这种定义方式

首先,你要理解y=10-x的意思
他的意思是,用10减去x的值,然后赋值给y变量

数据类型后面是变量,int y+x,程序不认识

当然不能了,这个等号不是表示相等,而是赋值