202508(第16届)蓝桥杯C++编程青少组(省赛_初/中级)真题以及答案解析
202508(第16届)蓝桥杯C++编程青少组(省赛_初/中级)真题考试时间:60分钟 总分:400 及格分:240一、单选题 (共5题,每题20分)1、下列C++运算符中,优先级最高的是?( )A:+B:-C:*D:=【正确答案】D【试题解析】C++运算符,算数运算符优先级高于赋值运算符,排除选项D;算术运算符中,乘除高于加减,答案为C。2、运行c++语句 cout (char)('F'+4);的结果是?( )A:IB:JC:kD:j【正确答案】B【试题解析】字符'F'参与算术运算时,使用ASCII码计算。(char)('F'+4)即字符F后面的第四个字符,根据字母表可知为大写字母 J。3、运行以下c++程序,输出的结果是?( )int i = 1, t = 0; while(i * i 30){ t +=1; i +=2; } cout t;A:3B:4C:9D:16【正确答案】A【试题解析】i初值为1,t初值为0;循环第1次,i*i30成立,执行t+=1后t为1,执行i+=2后i为3;循环第2次,i*i30成立,执行t+=1后t为2,执行i+=2后i为5;循环第3次,i*i30成立,执行t+=1后t为3,执行i+=2后i为7;此时i*i30不成立,循环终止,输出t为3。4、关于C++中的 new 和 delete 关键字,以下说法【错误】的是?( )A:使用 new int[10] 分配的数组内存必须使用 delete[] 释放B:int *p = new int;语句中分配的整型内存默认会被初始化为0C:对空指针(nullptr)使用 delete 是安全的,不会引发错误D:new 在内存分配失败时默认输出 std::bad_alloc 异常,而非返回空指针【正确答案】B【试题解析】对于内置类型(如 int),new 不会进行默认初始化,其值是未定义的。如果要初始化为0,应使用 new int() 或 new int(0)。5、运行以下c++程序,输出的结果是?( )int func(int y){ y -=5; cout "X"; return 0; } int main(){ int x = 10, y = 5; if(x y || func(y)) cout y; return0; }A:X0B:X5C:5D:0【正确答案】B