第15届蓝桥杯C++编程青少组中/高级选拔赛202403真题答案及解析
- 人工智能
- 2025-09-16 03:30:01

第 1 题 【 单选题 】
(110010)₂+(c3)₁₆的结果是( )。
A:(240)₁₀
B:(11110101)₂
C:(366)₈
D:(366)₈
解析:
(110010)₂ = (50)₁₀
(C3)₁₆ = (195)₁₀
所以(110010)₂+(C3)₁₆=(245)₁₀=(11110101)₂
答案:
B
第 2 题 【 单选题 】表达式1000/3的结果是( )。
A:333
B:333.3
C:334
D:333.0
解析:
C++ 中的除法规则:
如果两个操作数都是整数,那么结果也是整数(即截断小数部分)。 如果有一个操作数是浮点数,那么结果就是浮点数。答案:
A
第 3 题 【 单选题 】下列选项中,判断a等于1并且b等于1正确的表达式是( )。
A:!((a!=1)&&(b!=1))
B:!((a!=1)||(b!=1))
C:!(a==1)&&(b==1)
D:(a=1)&&(b=1)
解析:
选项 A:!((a!=1)&&(b!=1))
这个表达式的逻辑是“a 不等于 1 并且 b 不等于 1”的取反。 当 a == 1 或 b == 1 时,((a!=1)&&(b!=1)) 为假,取反后为真。 但这并不能保证 a == 1 并且 b == 1。 例如,当 a == 1 且 b == 2 时,表达式仍然为真。 因此,选项 A 错误。选项 B:!((a!=1)||(b!=1))
这个表达式的逻辑是“a 不等于 1 或者 b 不等于 1”的取反。 当 a == 1 并且 b == 1 时,((a!=1)||(b!=1)) 为假,取反后为真。 当 a != 1 或 b != 1 时,((a!=1)||(b!=1)) 为真,取反后为假。 因此,选项 B 正确。选项 C:!(a==1)&&(b==1)
这个表达式的逻辑是“a 不等于 1 并且 b 等于 1”。 这显然与目标不符。 因此,选项 C 错误。选项 D:(a=1)&&(b=1)
这个表达式使用了赋值运算符 = 而不是比较运算符 ==。 (a=1) 会将 a 赋值为 1,并返回 1(真);(b=1) 同理。 因此,这个表达式永远为真,但不能正确判断 a 和 b 是否等于 1。 因此,选项 D 错误。答案:
B
第 4 题 【 单选题 】定义 char a[]="His name is Jack",请问 sizeof(a)的结果是( )。
A:14
B:15
C:16
D:17
解析:
在 C++ 中,字符串常量(如 "His name is Jack")是以字符数组的形式存储的。 字符串的末尾会自动添加一个空字符(\0)作为结束符。 sizeof 用于计算变量或类型所占用的内存大小(以字节为单位)。 对于字符数组 char a[],sizeof(a) 会返回整个数组的大小,包括空字符 \0第15届蓝桥杯C++编程青少组中/高级选拔赛202403真题答案及解析由讯客互联人工智能栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“第15届蓝桥杯C++编程青少组中/高级选拔赛202403真题答案及解析”