C语言问题:设有如下的变量定义

发布网友 发布时间:2022-04-22 01:21

我来回答

5个回答

热心网友 时间:2023-07-16 21:32

A是正确的
A、 a+=a-=(b=4)*(a=3) 是从右往左执行的b=4 a=3 ->a=a-4*3->a=a+a
B x%(-3); x是个double,模运算是整数的运算
C a=a*3=2 a*3=2这个是错误的 a*3是个右值,不可寻址的,所以是不能被赋值的
D y=float(i) 这个类型转换在C语言里是错误的,但是在c++里是正确的

热心网友 时间:2023-07-16 21:32

A、 a+=a-=(b=4)*(a=3) 是一个合法的C语言表达式。
它等价于:
b=4; a=3;
a-=4*3;
a+=a;
但是前面的double x=1,42,y=5.2; 这一行倒是有错的。

热心网友 时间:2023-07-16 21:33

热心网友 时间:2023-07-16 21:34

A
浮点型不能进行求余运算 //B错
不能对表达式赋值//C错
强转数据格式位(数据类型)+变量或者数据//D错

热心网友 时间:2023-07-16 21:34

肯定是D啊

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com