新死亡实验:C语言题目

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/14 20:11:21
若变量a、i已正确定义,且i已正确赋值,合法的语句是
A)a==1
B)++i;
C)a=a++=5;
D)a=int(i);

选B是对的,但是楼上几位解释的有些错误。
A错误,原因同楼上。
C错误,a++不能作为左值,也就是说不能被赋值,因为a++不是变量(a是变量)。例如a=a++;是对的而a++=5; 是错误的。
d错误,正确的是(int)i.

B

B是对的

A:因为a没有赋值,不能比较
C: a没有赋值,不能执行自加操作
D: 语法错误。

语句的标志是以分号结尾
楼上第一个解释是不对的,没有赋值只能说其值是内存中的随机值,没意义,而并不是不能比较,不能进行运算.

补充一下:
A:没有以分号结束
C:整形没有++=操作符

B是对的

A:判断语句只能作为条件存在,没有赋值的时候A为NULL
C: 语法错误
D: 语法错误 正确的应该是 a=(int)i;