csp 2023 入门级题解 上
- 第一题
- 第二题
- 第三题
- 结构体
- 联合体
- 第四题
- 第五题
- 第六题
- 第7题
- 第八题
第一题
unsigned
是指无符号,用于int
类型,是指自然数.
const
是定义常量,定义后的值不可修改.
static
是将系统栈中的变量放入内存,可以让其他程序调用
答案是c
第二题
答案d
第三题
struct
结构体
union
联合体
结构体
请看下面的代码:
struct tem{
int num;
float data
char tmp;
string s;
}
tem a;
对于结构体a
, 我们申请了内存, 我们可以给变量num
, data
, tmp
, s
赋值.
联合体
请看下面的代码:
union tem{
int num;
float data
char tmp;
string s;
}
union tem a
对于联合体a
, 我们申请了内存, 我们只能给变量num
, data
, tmp
, s
中的一个赋值.
答案:a
第四题
这道题考察的知识点是链表, 这里需要注意,新建节点newNode
需定义成链表第一个节点, 一定要仔细
答案:a
第五题
3
7
=
2187
≥
2023
.
\ 3^{7}=2187\ge2023\,.
37=2187≥2023.
因为根节点高度为1
所以答案是
7
+
1
=
8
.
\ 7+1=8 \,.
7+1=8.
答案:c
第六题
数学题
答案:b
第7题
c选项错误,乘法运算时间与两个整数长度都有关,
1
×
100
1 \times 100
1×100和
688
×
968
688 \times 968
688×968时间明显不一样.
答案:c
第八题
后缀转中缀相当于就是一个入栈,出栈的过程.当遇到数字时,入栈,当遇到符号时,出栈两个数字或算式即可.
遍历过程,
- 6入栈
- 2入栈
- 3入栈
- 3和2出栈,3+2入栈
- 6,(3+2)出栈,[6-(3+2)]入栈
省略
最后得出结果
(
(
6
−
(
2
+
3
)
)
×
(
3
+
8
/
2
)
)
2
+
3
((6-(2+3))\times(3+8/2))^2+3
((6−(2+3))×(3+8/2))2+3
答案:a