C语言选择题(悬赏30)

来源:百度知道 编辑:UC知道 时间:2024/06/13 15:12:03
有以下定义语句
double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是()
A.a=a+b=b++ B.w%(int)(a+b)
C.(c+w)%(int)a D.w=a==b;

题没抄错?选B和C

A.a=a+b=b++
错,因为赋值符不可以连续用
B.w%(int)(a+b)
正确,a和b虽然是double型,但在运算前已经强转为int型,因此可以取余
C.(c+w)%(int)a
正确,c和w在一起,根本c语言的原则,c和w都会变成long型,a变成int型,取余
D.w=a==b;
错,都无法经过编译