logo
0
0
WeChat Login

QEMU 训练营基础阶段 C 语言习题

这个目录把 OpenCamp 的两套 C 训练营题目合并成了一套连续编号的 40 题题库,作为 QEMU 训练营基础阶段的 C 语言练习。

  • 基础阶段题库保留为 01-20
  • 专业阶段题库顺延为 21-40
  • 40 道题,每题 5 分,满分 200
  • 仓库已切换为 GitHub Actions 自动评测,并支持把成绩回传到 OpenCamp

上游题库来源:

题目列表

01-20 基础阶段

  1. 01_insert_sort - 插入排序
  2. 02_merge_sort - 归并排序
  3. 03_quick_sort - 快速排序
  4. 04_linear_search - 线性查找
  5. 05_binary_search - 折半查找
  6. 06_stack_maze - 栈解决迷宫问题
  7. 07_queue_maze - 队列实现广度搜索迷宫问题
  8. 08_circular_queue - 环形队列实现约瑟夫环问题
  9. 09_word_counter - 统计单词个数
  10. 10_my_strcpy - 字符串拷贝
  11. 11_command_interpreter - 命令解释器
  12. 12_student_management - 学生信息管理
  13. 13_universal_sorter - 通用排序接口
  14. 14_calculator - 四则运算
  15. 15_url_parser - URL 参数解析器
  16. 16_mysed - 简单流处理器
  17. 17_myfile - ELF 文件头查看
  18. 18_mywc - 词频统计器
  19. 19_mytrans - 查字典翻译
  20. 20_mybash - 命令解释器项目

21-40 专业阶段

  1. 21_singly_linked_list_josephus - 单链表约瑟夫环
  2. 22_doubly_circular_queue - 双向循环链表队列
  3. 23_circular_linked_list_josephus - 环形链表约瑟夫环
  4. 24_prev_binary_tree - 二叉树前序遍历
  5. 25_counter_letter - 排序二叉树字母统计
  6. 26_hash_counter - Hash 表词频统计
  7. 27_asm_gcd - 内联汇编求最大公约数
  8. 28_operator_overflow - 无符号运算溢出检测
  9. 29_swap_endian - 字节序转换
  10. 30_debug_print - 调试宏 DEBUG_PRINT
  11. 31_event_handler - 简单事件处理器
  12. 32_container_of_macro - container_of 宏实现
  13. 33_garray_dynamic_array - 动态数组
  14. 34_protocol_header_parser - 协议头解析器
  15. 35_elf_info_parser - ELF 信息查看工具
  16. 36_lru_cache - LRU 缓存淘汰算法
  17. 37_bitmap_operations - 位图操作
  18. 38_thread_safe_ring_buffer - 线程安全环形缓冲区
  19. 39_strtok_r_thread_safe - 线程安全字符串分割器
  20. 40_bloom_filter_bitmap - Bloom 过滤器

快速开始

GitHub 自动评分

当你把代码推送到 main 分支时,GitHub Actions 会自动:

  1. 编译 c-checker
  2. 执行 ./c-checker check-all
  3. 生成 test_results_summary.json
  4. 生成 GitHub Job Summary 和测试产物
  5. 在配置好 OpenCamp secrets 后,把分数回传到 OpenCamp 榜单

当前 workflow 同时支持:

  • 普通 GitHub 仓库直接 push main
  • GitHub Classroom 生成的学生仓库直接 push main
  • pull_request 场景下只做评测,不回传 OpenCamp

工作流文件在 .github/workflows/opencamp-autograding.yml

About

No description, topics, or website provided.
Language
C92.7%
Makefile6.4%
Shell0.9%