从 Scratch 开始

是时候选择你自己的冒险了!你的作业很简单,就是在 scratch.mit.edu 上使用 Scratch 实现任何你选择的项目,可以是互动故事、游戏、动画、或其他任何内容,只需满足以下要求:

  • 你的项目必须使用至少两个角色,其中至少一个不能是猫。
  • 你的项目总共必须包含至少三个脚本(不一定每个角色三个)。
  • 你的项目必须使用至少一个条件、至少一个循环和至少一个变量。
  • 你的项目必须使用至少一个你自己创建的自定义积木(通过 Make a Block),并且该积木必须接受至少一个输入。
  • 你的项目应比课堂上展示的大多数项目更复杂(其中许多虽然有教学意义,但相当短),但可以比 OscartimeIvy’s Hardest Game 简单。

为了满足这些要求,你的项目整体上大概需要使用几十个拼图积木。理想情况下,你的代码不仅要正确,也要设计良好。如果某个脚本变得有点长,试着把它拆成多个脚本(每个脚本负责一件具体的事)。也尽量在合适的地方利用“抽象”:如果你能想象给一串积木起一个描述性的名字(例如 meow),那它们很可能可以移动到一个自定义积木里!

如果你想从往届学生的作品中获得灵感,下面是几个例子:

这些 tutorialsstarter projects 可能会有帮助。你也可以浏览 scratch.mit.edu 寻找灵感。但请尽量先自己想出一个点子,然后着手实现它。不要试图一次性完成整个项目:像课堂上一样,一次解决一小块。换句话说,循序渐进:写一点代码(也就是拖放几个拼图积木),测试,再写一点,再测试,如此往复。并且每隔几分钟选择 File > Save now,避免丢失进度!

如果在过程中发现某个功能太难实现,不必焦虑;可以调整设计,或换一种方式绕过问题。如果你实现的是一个自己觉得有趣的想法,满足上面的要求通常不会太困难。

如果你决定在项目中导入任何背景、造型或声音,请务必用注释标明它们的来源!

好了,开始吧。期待你的作品!

完成项目后,最后再选择一次 File > Save now。然后选择 File > Save to your computer,保存该文件以便提交。如果电脑提示你打开保存文件,请务必选择保存

如何提交

第 1 步,共 2 步

提交这份表单

提交这份表单后,你可能会在某个时间收到 GitHub Education 的邀请(由于这些邀请会人工批量处理,时间可能从几周到几个月不等),因为提交过程中需要提供你的 GitHub 用户名。这是正常现象!你可以在 github.com/education/students 了解更多。

第 2 步,共 2 步

这一步假设你已经把 Scratch 项目下载为一个文件名以 .sb3 结尾的文件。同时,这一步也假设你已经按照上面表单的要求注册了 GitHub 账号。

  1. 访问这个链接,使用 GitHub 账号登录,并点击 Authorize cs50
  2. 勾选表示你愿意授予课程工作人员访问提交内容权限的复选框,然后点击 Join 课程
  3. 前往 submit.cs50.io/upload/cs50/problems/2026/x/scratch
  4. 点击 “Choose File”,选择你的 .sb3 文件。点击 Submit

就是这样!提交上传完成后,你应会被重定向到提交页面。点击提交链接,然后点击 check50 链接,查看你的项目满足了哪些要求。你可以在截止时间前任意多次重新提交!注意,如果上传的文件大于 10MB(对于 Scratch 项目来说已经相当大),check50 可能难以处理。最好确保文件小于这个限制。

若要查看你在课程中的当前进度,请访问课程成绩册 cs50.me/cs50x