Info

2025 年 · 来源:群整理。本题由 2025 计算机学院转专业交流群整理并免费分享,群号:476972628

Warning

2025 年笔试/机试重要说明:程序设计部分 C++ 禁用 STL。多文件编程题中 main.c 和头文件由命题给定,考生只需实现头文件中声明的函数,基本相当于只允许使用 C 语言

1. 打印欢迎语

编写程序,使用 printf 输出英文句子:"Welcome to SYSU"


2. 红绿灯模拟

实现一个程序,定义枚举常量 redgreenyellow,根据用户输入的值匹配对应的枚举常量,并输出相应的结果。

多文件编程题:头文件中声明函数,接收上述 enum 类型并输出对应字符串。


3. k 进制数位和

给定一个十进制数 和一个进制 ,将 转换为 进制后,计算并输出其各个位数的和。

例如:输入 123 10,输出 6


4. 提取字符串中的数字

从输入字符串中提取所有数字,组成一个整数。若该整数小于 INT_MAX,则输出该整数;否则输出 OVERFLOW


5. 链表操作

给定一个从 0 开始的链表,完成以下两步操作:

  1. 将链表中奇数位置的节点移到前面。例如:0 -> 1 -> 2 -> 3 -> 4 变为 1 -> 3 -> 0 -> 2 -> 4
  2. 给定区间 ,将该区间内的节点反转,输出最终链表。

多文件编程题:头文件中声明的函数接收整数 ,完成上述两个操作。


6. 矩阵层和计算

给定一个 矩阵,按「每一层」(类似螺旋矩阵的层定义)计算元素和,并输出:

  1. 每层元素和的最大值和最小值;
  2. 每层元素和的最大值与最小值之差。

7. 链表奇偶与区间反转

给定一个链表:

  1. 将奇数位置的节点移到链表前面;
  2. 给定区间 ,将该区间内的链表部分反转。

(与第 5 题题型一致,可能为不同卷或表述略有差异。)


8. 动态数组合并

读入两个数组 ,完成以下操作:

  1. 合并两个数组;
  2. 对合并后的数组进行升序排序;
  3. 去除重复元素,输出最终结果。

提示:需实现冒泡排序(或其它排序)、去重,以及类似归并的合并操作。C++ STL 禁用,可使用 C 的 qsort

多文件编程题:实现头文件中声明的动态数组相关函数(内存分配与初始化、重新分配大小、销毁、增删、排序、合并两有序数组并去重等)。


9. 多项式减法

用链表实现多项式减法运算:输入两个多项式,输出它们的差。

多文件编程题,可能涉及多个头文件。


10. 淘金者问题

编写程序解决淘金者问题,涉及 extern 关键字的使用。题面较长,需实现多个函数,为大模拟题。

据回忆,需完成四个函数,题目描述约两屏,建议提前熟悉多文件与 extern 的用法。


相关链接