CS100

计算机编程

CS100 计算机编程是计算机科学与技术专业的核心基础课程,采用“先 C 后 C++”的教学结构。课程覆盖数据类型、控制结构、函数、指针、数组、结构体、内存管理、面向对象编程、模板、异常处理和 STL 标准库等内容,并通过在线评测作业和 recitation 环节强化实践能力。

授课教师
张芯韵

CS100 Lectures 与 Recitations · 2026 Fall

CS100 · 2026 Fall

课程信息

16 周教学:C 语言(第 1–5 周)→ C++(第 6–16 周);期中考试在第 13–15 周,无期末考试。

info-lecture

上课时间

每周两讲:周二 13:00–14:40、周四 13:00–14:40,教学中心 302。

info-recitation

习题课(Recitation)

每周一 18:00–19:40,信息学院 1D-107,共约 15 次:编程工具介绍、知识扩展、作业/小测/考试讲解与编程示例,录像上传 Bilibili。

CS100 · 2026 Fall

课程平台

所有课程通知、资料与答疑均通过 Piazza 进行,建议每 12 小时查看一次;作业一律通过 Gradescope 提交。

platform-piazza

Piazza 讨论区

课程通知、课件资料发布与师生问答的唯一平台。

platform-oj

Gradescope

作业通过 Gradescope 提交。HW0、HW1 使用文件上传;HW2–HW7 使用 Git 提交。具体要求见各次作业题面。

platform-integrity

学术诚信提醒

严禁抄袭,处罚严厉。AI 工具(GPT、Copilot 等)产出的内容视同互联网资料:两人提交相同代码即构成抄袭,「用了同一个 ChatGPT 账号」「Copilot 生成了相同代码」等理由均不被接受。

CS100 · 2026 Fall

考核方式

作业 72% + 期中考试 22% + 小测 6%,无期末考试(比例可能微调)。

grade-homework

作业 · 72%

共 7 次,通过 Gradescope 提交,每题以最后一次提交的分数为准。

grade-midterm

期中考试 · 22%

第 13–15 周进行,范围覆盖课堂与习题课全部内容(除非另有说明)。

grade-quiz

小测 · 6%

1–2 次,随堂进行,时间不提前通知。

CS100 · 2026 Fall

Lecture 课件

课件随课程进度陆续上传;习题课(Recitation)资料将另行发布。

l0

Lecture 0: Introduction

l1

Lecture 1: The First C Program

l2

Lecture 2: Variables I and Arithmetic Types

l3

Lecture 3: Operators and Control Flow I

l4

Lecture 4: Operators and Control Flow II, Functions

l5

Lecture 5: Variables II, Pointers and Arrays I

l6

Lecture 6: Pointers and Arrays II

l7

Lecture 7: Pointers and Arrays III, Dynamic Memory, Strings

l8

Lecture 8: struct, Recursion

l9

Lecture 9: Dynamic Memory and Strings Revisited

l10

Lecture 10: C Summary

l11

Lecture 11: C++ Introduction, Strings

l12

Lecture 12: References, std::vector

Recitation 课件

r3

R3:Git基础

主讲
李宇轩
时间
10月12日(周一)晚

概括

Git版本管理基础与常用操作,学习使用版本库记录和管理代码修改。

r5

R5:C语言内存管理

主讲
李超凡
时间
10月26日(周一)晚

概括

从指针与生命周期出发,理解堆栈、动态分配、内存区域与释放责任,附指针和宏练习。

r6

R6:从C到C++

主讲
蒋烨
时间
2026年秋季

概括

从C过渡到C++17,介绍输入输出、std::string、std::vector,以及容器资源管理、容量增长和访问失效。

PDF 课件

课程视频

视频敬请期待

CS100 · 2026 Fall

Homework

Assignment handouts and starter files. Submit through Gradescope.

hw0

HW0: A + B / Environment Smoke Test (Ungraded)

不计入课程成绩。配置好编程环境后完成的冒烟测试,用于确认 C17 编译、运行及 Gradescope 文件提交正常;平台显示的分数仅作为测试反馈。

hw1

HW1: Basic Knowledge and First C Programs

首次计分作业:P1 客观题(Gradescope 在线作答,30 题共 100 分);P2–P5 编程题各 100 分,上传 p2.c–p5.c 单个源文件或 Git 仓库均可;附起步包(命名骨架 + 编译命令说明)。9 月 28 日中午发布,10 月 13 日 23:59 截止。

hw2

HW2: Bash, Git and C Programs

P1 客观题(C 语言基础 II,100 分)与 P2 客观题(Bash 与 Git,100 分)分别在 Gradescope HW2_p1 与 HW2_p2 在线作答;P3–P5 编程题(多项式求值 / GCC 参数描述 / CPU 模拟器)各 100 分,通过 GitHub 仓库提交 p3.c–p5.c;附起步包(命名骨架 + 编译命令说明)。10 月 13 日 20:00 发布,10 月 22 日 23:59 截止。

hw3

HW3: Palindrome, Strings and Memory

P1 客观题(C 语言基础 III:函数、字符串、动态内存,100 分)在 Gradescope HW3_p1 在线作答;P2–P4 编程题(回文判定 / 字符串与字符函数 / 内存泄漏检测器)各 100 分,通过 GitHub 仓库提交 p2.c–p4.c(不支持文件上传);附起步包(命名骨架 + 编译命令说明)。10 月 23 日 12:00 发布,11 月 4 日 23:59 截止。

CS100 · FALL 2026

Teaching Team

授课教师与助教团队