浙江大学

图片
课程概述

课程以一个Windows下的图形游戏程序入手,借助一个C语言图形库,展开全部的教学内容。

作为计算机的基础语言,C语言有许多独特的地方。从1970年代诞生起,它的历史使命就是编写系统程序,它被设计成非常贴近底层、贴近硬件。它的很多独特的设计都是为了能够准确地反映硬件操作。但是历史又和C语言开了一个玩笑,它被当作了第一个通用型语言,曾经广泛地用于各种场合,解决各种问题。可是它之后的语言,再也没有像它那样贴近硬件,它们拿掉了那些硬件相关的东西,变得越来越远离底层了。

这门课,就是要告诉你C语言到底有哪些独特的地方,为什么能长期占据15%上下的编程语言份额。它是在前序课程——《程序设计入门-C语言》或《程序设计入门-Java语言》的基础上,让你完全掌握C语言本身的课程。

虽然我们会借助一个Windows下的图形库来展开教学内容,但是用C语言写Windows程序已经是过去式了,我们并不是要教大家如何用C语言来写Windows程序,只是借一下故事而已。

证书要求

课程的总分达到60分以上,可以获得本课程的合格证书。

课程的总分达到85分以上,可以获得本课程的优秀证书。


预备知识

本课程是《程序设计入门-C语言》的后续课程,对前序课程的学习是必须的。

授课大纲

第一周:课程介绍,指针深入理解

第二周:一个图形库

第三周:结构类型

第四周:链表

第五周:程序结构

第六周:搜索与排序

第七周:文件

第八周:交互图形程序设计(函数指针、MVC设计模式)


参考资料

何钦铭、颜晖,《C语言程序设计(第3版)》,高等教育出版社,2015年,ISBN 978-7-04-043128-3

颜晖、张泳,《C语言程序设计实验与习题指导(第3版)》,高等教育出版社,2015年,ISBN 978-7-04-043563-4


常见问题

Q:我需要特殊版本的计算机吗?

A:任何计算机都可以用于C语言编程,包括但不限于各个版本的MS Windows、各个版本的Mac OS X、各种发行版本的Linux。有的手机有app也能实现C语言编程,不过我们不推荐那么小的屏幕。

Q:我需要安装特定的软件才能做这门课的作业吗?

A:任何C语言的开发工具都可以。课程演示会使用Dev C++及命令行环境,但是你使用任何其他开发工具都不会影响做作业的正确性。可以使用的其他工具包括但不限于MS Visual Studio、C-Free等。

Q:每周会发布多少时间的视频?我需要花多少时间来学习?

A:我们按照90分钟的授课时间来设计课程。但是发布的视频肯定小于90分钟,一般在50到70分钟左右。因为在线下上课时,老师可能会回顾一下上周的内容、某些内容会看学生的反应重复几遍、会当堂问做一些提问,以及在各种软件等教学工具之间切换,这些都要花点时间,而这些在线上课程中都不存在了,所以视频的时间不会正好是90分钟。但是一般我们设计课程需要1:1.5到1:2的课后学习时间,这包括预习、作业、练习和复习的时间,所以每周大约需要花费三到五小时的时间。

授课老师
翁恺

翁恺

教师

分享