C语言基础题 以下合法的C语言赋值语句是 A.a=b=58 B.k=int(a+b) C.a=58,b=58 D.--i
问题描述:
C语言基础题 以下合法的C语言赋值语句是 A.a=b=58 B.k=int(a+b) C.a=58,b=58 D.--i
答
A 语法错误:不能连续赋值.
B 强制类型转换运算符必须用小括号括起来 比如 (int)(a+b).
C 不是语句,只是表达式,要用分号才正确.
D 是自减语句,等同i=i-1.
正确的确是D.连续赋值其实可以的,书上有个例子是a=b=c=100好吧,至少BC一定错,现在用的习惯不能连续赋值。
A好像是因为少了分号。好像是的,再问你个问题 强制类型转换(int)(x*1000+0.5)/((float)1000)只强制转换分子吗 全部括起来才是强制转换整体对 要括起来,(float)1000这部分已经错了。
应该(int)( (x*1000+0.5)/(float)(1000)) 要是我记得没错。你的意思是比如把1000.0强制转化为整型,那么int和1000.0都得括起来?(int)(1000.0)?对
通常是 (类型说明符)(表达式) 这样来转换的