第 12 届蓝桥杯 C++ 青少组中 / 高级组省赛 2021 年 4 月 24 日真题
一、选择题
第 1 题 单选题
题目:在 C++ 中下列哪个不属于字符型常量 ( )。
A. ‘a’
B. ‘\x2A’
C. ‘@’
D. “F”
答案:D
解析:字符型常量使用单引号括起单个字符(如 A、C),或转义字符(如 B 中的十六进制转义字符)。D 选项 “F” 使用双引号,属于字符串常量,而非字符型常量。
第 2 题 单选题
题目:以下变量定义不正确的是 ( )。
A. int a=8, b, c;
B. float c=1.233;
C. int if;
D. char d='i';
答案:C
解析:C 选项中 “if” 是 C++ 的关键字(用于条件判断),不能作为变量名。其他选项均符合变量定义规则:A 定义多个整型变量;B 定义浮点型变量并初始化;D 定义字符型变量并赋值。
第 3 题 单选题
题目:已知 “int n=9;”,则执行语句 “n*=n+=n%=2;” 后,n 的值为 ( )。
A. 4
B. 1
C. 8
D. 18
答案:A
解析:运算符优先级从右到左(赋值运算符结合性为右结合):
n%=2
:n=9%2=1,n=1;n+=1
:n=1+1=2;n*=2
:n=2×2=4。
最终 n=4,选 A。
第 4 题 单选题
题目:二进制加法 11010 + 10110 的和为 ( )。
A. 110000
B. 11000
C. 101110
D. 111010
答案:A
解析:二进制逐位相加(逢二进一):
plaintext
11010(26)
+ 10110(22)
= 110000(48)
计算过程:最低位 0+0=0,次低位 1+1=10(写 0 进 1),第三位 0+1+1=10(写 0 进 1),第四位 1+0+1=10(写 0 进 1),最高位 1+1+1=11(写 1 进 1),最终结果 110000,选 A。
第 5 题 单选题
题目:C++ 中函数的返回值类型是由 ( )。
A. 调用该函数的主调用函数类型决定的
B. return 语句中的表达式类型决定的
C. 定义该函数所指的数据类型决定的
D. 系统自动决定的
答案:C
解析:函数定义时声明的返回值类型(如int fu