www问答网
所有问题
C语言 赋值 编程 正确的表达式
int a; long b; double x,y;
A :a=x!=y 为什么这个是正确的啊??
B y=x+y=x 为什么这个就不正确呢??
帮我指点一下谢谢哦~~
举报该问题
推荐答案 2012-02-28
分析一下:
a = x! = y,你可以这样理解,首先判断x!= y是否正确,如果其为真,a = 1,如果其为假,a = 0;
y = x+y = x,这个主要原因出在了,x + y = x上,这是个赋值运算符,它前面应该是一个变量,而这里是两个变量的和,所以运行的时候,编译器不知道该把x的值赋给谁?故出错!你可以这样:
int x = 2;
int y;
int z;
z = y = x;
上面的运算时正确,这样y和z都是2!只不过一般不推荐这样写程序!
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://www.wendadaohang.com/zd/K431145K3.html
其他回答
第1个回答 2012-02-29
a = x != y的意思是,如果x != y,则将1(true)赋给a,否则0(false)赋给a.
在y = x + y = x中,x的值不能赋给x + y,这是因为赋值运算的左值必须是变量,而不能是表达式。
第2个回答 2012-02-28
这里遵循的是右结合性 从右至左赋值 把x赋值给x+y 但是x+y是一个赋值表达式 不可以做左值 所以B是错误的
就好像a=(b=3*4)可以 却不可以a=(a=b)=3*4一样 括号中的a=b就相当与算数表达式 不可以当左值
相似回答
C语言
-
赋值表达式
答:
在
C语言编程
中,
赋值
公式是基础语法的关键,它的形式为 变量名 =
表达式
。但请注意,这里的“=”并非数学中的等号,它具有独特的运算规则和作用。首先,我们要明确赋值运算的顺序:自右向左进行,即先计算出表达式的值,然后将这个值赋予左边的变量。例如,a = b = 1 是
正确的
,因为会先计算b的值...
...
正确的
的
赋值赋值表达式
是() A、pb=&x B、pb=x
C
、*pb=&x D、*...
答:
选项C,C选项中的赋值语法是错误的,
正确的赋值语法应该是和A选项相同
。D选项的错误类型和C选项的类似,所以综合以上分析,正确的答案为A。
C语言
中,设变量已正确定义并
赋值
,则
正确的表达式
是?
答:
C
中x=y*5=x+z等效于x=(y*5)=x+z,
赋值
运算符的左操作数必须是左值,故C也不对 答案是A
C语言正确的赋值
是哪一个:y++;++y;a=3,b=3;a=b=2;a=b==3;在这几项赋 ...
答:
1.y++是先使用y然后自身加1,;2.++y是y先自身加1然后再使用y;3.a=3,b=3
;就不用解释了是基本的赋值。4.a=b=2如果是在定义时这样:int a=b=2;就会显示b未定义,很明显不能这样;如果是这样int a,b;a=b=2;这样就没任何问题了;5.a=b==3如果在定义时这样:int a=b==3;同4...
c语言
题:符合
C语言
语法的
赋值表达式
是
答:
- 赋值仅仅是一种
表达式
,也有值和类型a = 1。的值是1类型是int,所以完全可以赋值给另一个int类型变量b = (a = 1)也就是b = a = 1。不存在不可以连续
赋值的
说法。括号表达式也是一样。只要有类型和值就能赋值给对应的变量这是赋值的原则。B和
C的
写法在标准C编译器上都是可以编译通过的。
符合
C语言
语法的
赋值表达式
是: A.a=9+b+c=d+9 B.a=(9+b, c=d+9) C...
答:
1.)赋值操作符的优先级比“+”更低.2.) 赋值操作符的返回值是赋值后的左操作数的值.3.) 常量和
表达式
不能作为左值,不能作为左操作数(即不能放在二元运算符的左边).A出现9+b+
c
=d+9这样的式子是不能完成
赋值的
,可以改为a=9+b+(c=d+9)D的错误与A相同
C
是三条语句,a=9+b;b++...
c语言正确
定义
赋值
答:
C
)x=n=1 //很明显,缺少分号,一个语句的最基本要求就是,以分号结束.如果做为一个
表达式
是合法的,x=n=1同等于 x=1,n=1;D)x=5=4=1;//错误,
赋值的
最基本要求,被赋值的一定是变量,不能是常量,也就是说左边是变量,右边可以是常量,或者已经被赋值的变量, 因为5 4 都不是变量,故错误.
符合
C语言
语法的
赋值表达式
是A、d=9+e+f=d+9 B、d=9+e,f=d+9 C、d...
答:
A:可以分割为两个连续的
赋值
操作,连续赋值操作从右至左执行,第一个执行赋值操作左边为(9+e+f)是
表达式
,错误。编译器应该报错。可以修改为d=9+e+(f=d+9)。B:
正确
。
C
:d+9是要干什么?也没有赋值。语法错误。D:同A 建议写出来编译一下。映像会深刻些。某些教材是比较简略的,建议查查...
c语言
中a=a b=b 这个
表达式正确
吗?
答:
如果 ab 之间没有空格: a=ab=b 是
正确的表达式
, a=ab=b; 是正确的
赋值
语句。例如:int a,ab,b=2;a=ab=b;printf("%d %d %d\n",a,ab,b);如果 ab 之间有空格: a=a b=b 是错误的表达式。如果 是 a=a; b=b; 是正确的赋值语句 ...
大家正在搜
c语言正确的赋值表达式
c语言赋值表达式和赋值语句
C语言语法的赋值表达式
符合c语言语法的赋值表达式
c语言赋值表达式的作用
赋值表达式的返回值
C语言 表达式
c语言的表达式有几种
赋值表达式的条件