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

1、第151题 (1.0分) 题号:695 以下叙述中不正确的是()。

A
 表达式a&=b等价于a=a&b
B
 表达式a|=b等价于a=a|b
C
 表达式a!=b等价于a=a!b
D
 表达式a^=b等价于a=a^b

答案解析

正确答案:C

解析:

这道题考查的是 C 语言(或类 C 语言如 C++、Java 等)中**复合赋值运算符**与**关系/逻辑运算符**的区别。我们需要逐一分析每个选项,找出叙述不正确的一项。 ### 选项分析 **A. 表达式 `a&=b` 等价于 `a=a&b`** * **分析**:`&` 是按位与运算符。`&=` 是复合赋值运算符,其定义就是将左操作数与右操作数进行按位与运算,并将结果赋给左操作数。 * **结论**:叙述**正确**。 **B. 表达式 `a|=b` 等价于 `a=a|b`** * **分析**:`|` 是按位或运算符。`|=` 是复合赋值运算符,其定义就是将左操作数与右操作数进行按位或运算,并将结果赋给左操作数。 * **结论**:叙述**正确**。 **C. 表达式 `a!=b` 等价于 `a=a!b`** * **分析**: 1. `!=` 是**不等于**关系运算符,用于比较两个值是否不相等,返回布尔值(真或假,即 1 或 0)。它**不是**赋值运算符。 2. `a=a!b` 这个表达式在大多数标准 C 语言语境下是**语法错误**或含义完全不同的。 * 如果理解为 `a = a ! b`,`!` 是逻辑非运算符,是一元运算符,不能像二元运算符那样放在两个变量中间(除非 `b` 前面有其它含义,但通常 `a!b` 非法)。 * 即使假设存在某种简写,`!=` 永远不等价于任何形式的“赋值”操作(如 `a = ...`),因为 `!=` 只进行比较,不改变变量的值。 3. 正确的复合赋值对应关系应该是:没有所谓的 `!=` 复合赋值形式,因为“不等于”是一个比较操作,而不是一个可以累积的算术或位运算操作。 * **结论**:叙述**不正确**。 **D. 表达式 `a^=b` 等价于 `a=a^b`** * **分析**:`^` 是按位异或运算符。`^=` 是复合赋值运算符,其定义就是将左操作数与右操作数进行按位异或运算,并将结果赋给左操作数。 * **结论**:叙述**正确**。 ### 总结 选项 A、B、D 均正确描述了位运算对应的复合赋值运算符的含义。 选项 C 错误地将关系运算符 `!=`(不等于)等同于一个错误的赋值表达式。`!=` 仅用于判断,不执行赋值操作,且 `a=a!b` 本身也是非法或无意义的表达。 因此,不正确的叙述是 **C**。 **正确答案:C**
题目纠错
c语言选择判断题库

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

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