(11)下列语句中符合 C 语言语法的赋值语句是______。
A
)
a
=7+b+c=
a+7
B)
a
=
a+7
C)
a
=7+b,b++,
a+7
; D)
a
=7+b,c=
a+7
;
a
=7+b,b++,
a+7
; D)
a
=7+b,c=
a+7
;
知识点:C 表达式类型
评析:本题的考查点是赋值语句。
C 语言中,赋值语句具有其他高级语言的赋值语句的一切特点和功能。但也有不同:
① C 语言中的赋值号“=”是一个运算符,在其他大多数语言中赋值号不是运算符。
② 关于“赋值表达式”这一概念,其他大多数高级语言并没有,但在 C 语言中必须区分:例如:i=i+1
是一个表达式,而不是语句;i=i+1;是一个语句。可以看到,一个表达式的最后加一个分号就成了一个语
句。
由于赋值语句是由赋值表达式加分号构成,而赋值表达式是赋值运算符“=”将一个变量和一个表
达式连接起来的式子,所以选项
A
、B 均不是合法的赋值语句;选项 C 中,存在两种运算符:逗号运算
A
、B 均不是合法的赋值语句;选项 C 中,存在两种运算符:逗号运算
符和赋值运算符,其中赋值运算符的优先级高,逗号表达式“
a
=7+b,b++,
a+7
”的值就是表达式“
a+7
”
a
=7+b,b++,
a+7
”的值就是表达式“
a+7
”
的值,即选项 C 也就可以表示为:
a+7
;。由此可见,选项 C 也不是一个合法的赋值语句。选项 D 是用逗
a+7
;。由此可见,选项 C 也不是一个合法的赋值语句。选项 D 是用逗
号运算符连接的两个赋值语句。因此符合题目要求的应该是选项 D。
(来自网络)
转载于:https://www.cnblogs.com/haohanlin/p/5294796.html