欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!
专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。
适合人群:
- 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
- 希望系统学习C++/Python编程的初学者
- 想要提升算法与编程能力的编程爱好者
附上汇总贴:历年蓝桥杯青少组省赛国赛C++中/高级组真题解析 | 汇总
第1题
运行语句 cout << (char)(‘F’+4); 的结果是( )。
A.I
B.j
C.K
D.J
【答案】:D
【解析】
‘F’+4的结果ASCII自加4,再转成字符,结果为’J’
第2题
下列运算符中,优先级最高的是( )。
A.+
B.-
C.*
D.=
【答案】:C
【解析】
C++运算优先级
第3题
关于C++中的new和delete关键字,以下说法错误的是( )。
A.使用 new int[10] 分配的数组内存必须使用 delete[] 释放
B.int *p = new int; 语句中分配的整形内存默认会被初始化为 0
C.对空指针(nullptr)使用 delete 是安全的,不会引发错误
D.new 在内存分配失败时默认抛出 std::bad_alloc 异常,而非返回空指针
【答案】:B
【解析】
C++中基本类型(如 int)通过 new分配时不会自动初始化,除非显式指定,如 int *p = new int();
第4题
运行以下程序,输出的结果是( )。
int i=1, t=0;
while (i*i<30)
{
t += i;
i += 2;
}
cout << t;
A.3
B.4
C.9
D.16
【答案】:C
【解析】
i 为 1 3 5,t 为所有 i 的和,结果为9
第5题
运行以下程序,输出的结果是( )。
int func(int y)
{
y -= 5;
cout << "X";
return 0;
}
int main()
{
int x = 10, y = 5;
if (x>y || func(y))
cout << y;
return 0;
}
A.X0
B.X5
C.5
D.0
【答案】:C
【解析】
x > y,所以短路了后面的判断,直接输出 5