Git & 编程基础

欢迎来到Git & 编程基础部分,这是一套比较考验综合能力的C/C++题目,在任意一小节停下都是可以接受的,享受解题的过程吧!

安装 Ubuntu 及环境配置

这一部分是为了检验你的基本文档阅读能力和 Windows 操作能力。同时,安装 Ubuntu 也是为了之后的题目以及开发环境做准备。

如果你使用的 Mac 或者其它非 Windows 系统,相信你已经有了类似的经验,理所当然,你可以跳过这一部分。

启用 Windows 功能

启用或关闭 Windows 功能 选项卡(可以搜索得到)中打开 虚拟机平台(Virtual Machine Platform)适用于 Linux 的 Windows 子系统 选项,重启电脑。

更新 WSL 内核并安装 Ubuntu22.04

打开 PowerShell,依次运行:

1
2
3
4
5
6
wsl --set-default-version 2

wsl --update

# 这里使用 22.04
wsl --install -d Ubuntu-22.04

过程中会要求给 Ubuntu 取个用户名和密码(密码不会显示你输入的,输入完直接回车即可)

配置 VSCode

下载 VSCode 并安装

打开,在扩展选项卡(几个小方块那个图标)中的搜索栏搜索 Chinese,选择简体中文插件安装;然后搜索 WSL,选择 WSL 插件安装。右下角会提示重启 VSCode,点击重启即可。

然后点击 VSCode 左下角的><状图标,在顶部选择连接到 WSL(也可能是英文的),即可进入刚安装好的 Ubuntu 环境(以后打开 VSCode 也可以用同样的方式进入)。

配置题目所需环境

此时按下ctrl + ~ 即可打开终端,输入

1
2
sudo apt update
# 会提示你输入密码,密码就是创建 ubuntu 时你取的那个,密码不会显示在屏幕上
1
sudo apt upgrade -y
1
sudo apt install -y git gh build-essential cmake

以上几个过程都可能需要一些时间,请耐心等待。在开始本步骤之前,建议搜索并配置镜像源(关键词:Ubuntu 换源)。

此时终端环境为 Ubuntu 环境,是一种 Linux 环境,建议你自行了解并熟悉一些基本的 Linux 命令(如 cd, ls 等等),这对面试是加分项。

本部分到此结束。

具体题目

Git 操作题-克隆

如你所见,这个文档是被放在网上的仓库中的,现在我们希望你能将这个仓库复制一份拉至本地,这样你就能修改其中的文件了。

任务链接: https://git.ptroc.cn/ptroc/2025_pioneer_pretest

进入上方网址之后,你将会看到本次任务的仓库,点击右上角的派生按键(需要先注册一个账户并登录)。

命名空间选择自己的用户名、可见性级别选择私有(毕竟你也不想别人看到你的答案吧),然后点击下方的派生项目按钮,一个属于你自己的私有仓库就出现了。

之后你需要将你的仓库克隆到本地。在你的作业仓库页面复制仓库地址,打开vscode的终端,输入以下命令:

1
git clone <你的作业仓库地址>

例如:

1
2
# 仅供参考
git clone git@git.ptroc.cn:<你的用户名>/2025_pioneer_pretest.git

这里可能会有一些关于SSH的配置问题,你需要自行查找相关资料解决。

然后点击vscode左上角,文件->打开文件夹,选择你刚克隆的仓库文件夹,点击确定。

注意:你最好进行完本节之后再继续进行后续小节

C 语言编写

请在补全exercise目录下的 exercise-1.cexercise-2.c 的 C 语言程序,具体要求文件内均有给出。

不要改动test目录下的文件。

注意:你不需要完成本节也可进行下一节

makefile编写

请在完成exercise目录下的exercise-3文件夹中的要求的任务,具体要求文件夹内README.md里有给出。

不要改动test目录下的文件。

注意:你不需要完成本节也可进行下一节

Rust + C 混合编程

请在完成exercise目录下的 exercise-4 文件夹中的要求的任务,具体要求文件夹内 README.md 里有给出。

不要改动test目录下的文件。

注意:你不需要完成本节也可进行下一节

Git 操作题-提交与推送

在本文档的上方有一栏填写你的学号,请将其填写完整。

现在你需要将你完成的修改提交到仓库中。

然后你需要将你本地的提交推送到你自己的远程仓库中。

注意:这里没有给出具体的步骤,你需要自行查找相关资料。

Git 操作题-合并冲突

你需要在这个仓库中制造一个合并冲突,并将其解决。然后同样的,将你本地的提交推送到你自己的远程仓库中,我们需要看到记录。

注意:你不需要完成本节也可进行下一节

恭喜🎉🎉🎉

你已经成功完成了此题!你应该会在你的仓库的流水线页面看到你exercise部分的通过率(可以自己找一找:>)

请记住,我们注重的不只是结果,还有你探索的过程和解决问题的能力,面试见

Enjoy!


本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

本站由 @NEUP 2025 创建,使用 Stellaris 作为主题。

Hexo 强力驱动