AI智能推荐题库-试题通 AI智能整理导入题库-试题通
×
首页 题库中心 c语言选择判断题库 题目详情
CA4E3A01C46000013755684012D01E55
c语言选择判断题库
379
单选题

1、〖第18题〗21) 以下不符合C语言语法的赋值语句是()。

A
 a=1,b=2
B
 ++j;
C
 a=b=5;
D
 y=(a=3,6*5);

答案解析

正确答案:A

解析:

这道题考察的是 C 语言中**语句(Statement)**与**表达式(Expression)**的区别,以及赋值语句的语法规范。 ### 正确答案分析 **答案:A** ### 详细解析 在 C 语言中,一个合法的**语句**通常以分号 `;` 结尾。我们需要逐一分析各个选项是否符合“赋值语句”或一般“语句”的语法结构。 #### 1. 选项 A:`a=1,b=2` * **分析**:这是一个**逗号表达式**。虽然 `a=1,b=2` 本身是一个合法的表达式,但在 C 语言中,如果要将其作为一条独立的语句执行,必须在末尾加上分号 `;`。 * **错误原因**:选项中缺少了结束符分号 `;`。因此,`a=1,b=2` 只是一个表达式,而不是一条完整的语句。正确的写法应该是 `a=1,b=2;`。 * **结论**:不符合语句语法(缺分号)。 #### 2. 选项 B:`++j;` * **分析**:这是一个自增表达式语句。`++j` 是前置自增运算,它是一个合法的表达式,后面加上了分号 `;`,构成了一条完整的表达式语句。 * **结论**:符合语法。 #### 3. 选项 C:`a=b=5;` * **分析**:这是连续赋值语句。赋值运算符 `=` 具有右结合性,等价于 `a=(b=5);`。先执行 `b=5`,再将结果赋给 `a`。整个表达式后面有分号 `;`,构成了一条完整的赋值语句。 * **结论**:符合语法。 #### 4. 选项 D:`y=(a=3,6*5);` * **分析**:这是一个包含逗号表达式的赋值语句。 * 括号内 `(a=3, 6*5)` 是一个逗号表达式。逗号表达式会先计算 `a=3`,再计算 `6*5`,整个逗号表达式的值是最后一项的值,即 `30`。 * 然后将 `30` 赋值给变量 `y`。 * 最后有分号 `;` 结尾。 * **结论**:符合语法。 ### 总结 题目问的是“不符合 C 语言语法的**赋值语句**”。 * B、C、D 都是带有分号的完整语句。 * **A 选项仅仅是一个表达式,缺少分号,不能独立构成一条语句。** 因此,选项 **A** 是不符合语法的。
题目纠错
c语言选择判断题库

扫码进入小程序
随时随地练习

关闭登录弹窗
专为自学备考人员打造
勾选图标
自助导入本地题库
勾选图标
多种刷题考试模式
勾选图标
本地离线答题搜题
勾选图标
扫码考试方便快捷
勾选图标
海量试题每日更新
波浪装饰图
欢迎登录试题通
可以使用以下方式扫码登陆
APP图标
使用APP登录
微信图标
使用微信登录
试题通小程序二维码
联系电话:
400-660-3606
试题通企业微信二维码