C语言,这两道选择题怎么样?第一题为什么选A,第二题C选项是什么意思?

如题所述

1 整型常数, 默认是int类型。 要写长整型, 必须在结尾加L
所以 只有A对。

2 赋值的时候 如果多个=符号。 那么左边的 都必须是变量
D选项 相当于
b+c=1
a=b+c;
明显 b+c=1这个是不合法的。
而C选项 是
k=i==j
根据优先级 等效于 k=(i==j)
即判断i j是否相等。 如果相等, k为1. 否则为0
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-01-09
(1)
long型常量,后面跟大写或小写的L,所以选择A
(2)
a=b+c=1
按照结合律,其实是:
a=(b+c)=1
b+c不能作左值,不能接受赋值。,所以D语句是错误的。
第2个回答  2017-01-09
C 语言 %l 有符号长整形
i==j运算的结果是0或1,

==的优先级比= 的优先级要高。
所以你懂没?
第3个回答  2017-01-09
整数后面加“L”表示长整形,不加的话只是整形
k=i==j这一句的意思是,k的值为i==j这个逻辑判断语句的值,0或者1