#CSPJ26D10. 2026 年 8 月 CSP-J 初赛 20 日打卡 Day10|线性结构:链表、栈与队列
2026 年 8 月 CSP-J 初赛 20 日打卡 Day10|线性结构:链表、栈与队列
Day 10 线性结构:链表、栈与队列
建议用时:28~32 分钟。请先打开今日知识卡完成复习,再独立提交本页答案。
今日学习资料
复习目标:理解数组与链表的存储差异,会追踪链表指针修改;分清栈与队列的进出顺序,并能独立模拟相关程序。
今日练习
- 【CSP-J 2022·第 3 题】运行下列代码后的行为是( )。
int x = 101, y = 201;
int *p = &x, *q = &y;
p = q;
{{ select(1) }}
- 将
x的值改为 201 - 将
y的值改为 101 - 将
q指向x的地址 - 将
p指向y的地址
- 【CSP-J 2022·第 4 题】链表和数组的区别包括( )。
{{ select(2) }}
- 数组不能排序,链表可以
- 链表比数组能存储更多信息
- 数组大小通常固定,链表大小可以动态调整
- 以上均正确
- 【CSP-J 2023·第 3 题】已有联合体对象
data,要修改它的value成员以存储3.14,正确写法是( )。
union Data { int num; float value; char symbol; };
Data data;
{{ select(3) }}
data.value = 3.14;value.data = 3.14;data->value = 3.14;value->data = 3.14;
- 【CSP-J 2023·第 4 题,版式整理】已有头指针
Node* head。要插入数据为 42 的新结点,并使它成为第一个结点,正确操作是( )。
{{ select(4) }}
newNode->data=42; newNode->next=head; head=newNode;head->data=42; newNode->next=head; head=newNode;newNode->data=42; head->next=newNode;newNode->data=42; newNode->next=head;
- 【CSP-J 2021·第 5 题】元素按
a,b,c,d,e的顺序入栈,下列不是合法出栈序列的是( )。
{{ select(5) }}
a,b,c,d,ee,d,c,b,ab,a,c,d,ec,d,a,e,b
- 【CSP-J 2024·第 13 题】元素按
1,2,3,4,5,6的顺序入栈,下列不可能的出栈顺序是( )。
{{ select(6) }}
6,5,4,3,2,11,6,5,4,3,22,4,6,5,3,11,3,5,2,4,6
- 【CSP-J 2022·第 6 题】中缀表达式
a+(b-c)*d的前缀表达式是( )。
{{ select(7) }}
*+a-bcd+a*-bcdabc-d*+abc-+d
- 【CSP-J 2023·第 8 题,版式整理】后缀表达式
6 2 3 + - 3 8 2 / + * 2 ^ 3 +对应的中缀表达式是( )。
{{ select(8) }}
((6-(2+3))*(3+8/2))^2+36-2+3*3+8/2^2+3(6-(2+3))*((3+8/2)^2)+36-((2+3)*(3+8/2))^2+3
- 【CSP-J 2022·第 5 题|选做】栈
S和队列Q初始为空。e1~e6按顺序入栈;从栈弹出的元素按e2,e4,e3,e6,e5,e1的顺序进入并离开队列,各种操作可以交错。栈S的容量至少为( )。
{{ select(9) }}
- 2
- 3
- 4
- 6
- 【CSP-J 2025·第 15 题】栈
S和队列P初始为空,依次处理7,5,8,3,1,4,2:奇数入栈;偶数且栈非空时,弹出栈顶并加入队尾;偶数且栈空时不操作。处理结束后,队列内容是( )。
{{ select(10) }}
5,1,37,5,33,1,55,1,3,7