早教吧 育儿知识 作业答案 考试题库 百科 知识分享

关于c语言问题已知各变量的类型如下:inti=8,k,a,b;unsignedlongw=5;doublex=1.42,y=5.2;则以下符合C语言合法的表达式是()A.a+=a+2-=(b=4)*(a=3)B.a=a*3+2C.x%(-3)D.y=float(i)答案是B,请教下是为什么啊

题目详情
关于c 语言问题
已知各变量的类型如下:
int i=8,k,a,b;
unsigned long w=5;
double x=1.42,y=5.2;
则以下符合C语言合法的表达式是( )
A. a+=a+2-=(b=4)*(a=3)
B. a=a*3+2
C. x%(-3)
D.y=float(i)
答案是B ,请教下是为什么啊
▼优质解答
答案和解析
A选项中a+2-=(b=4)*(a=3)是将-=b=4)*(a=3)的结果给a+2,这中写法是错误的,赋值运算符左边只能是变量,不能是其他表达式
C中%号是求余运算符,不能和负数进行运算,D中强制类型转换时括号应加在float上