C++语言的功能和方便性都强于C语言,只是由于其面向对象的特性比较复杂,因此很少被选为入门语言。实际上,C语言是C++的子集,C++对C语言的扩充可以分为与面向对象无关的新语法特性、面向对象的特性,以及泛型特性三个部分。如果放弃其中复杂的面向对象特性,以及泛型的绝大多数特性(但保留其中极其有用的标准模板库STL中的部分算法和容器),则剩余部分也十分适合做为入门语言来学,而且用这样的“简化”C++语言编写程序,既比用C语言更为方便和高效,又无需掌握写大型程序才会用到的庞杂的面向对象的特性 --- 学习成本增加很少而编程效率提高很多。
基于上述考虑,本课程虽然是面向中学生的零基础的编程课,还是选用C++作为编程语言。实际上,本课程并没有因为面向中学生而作了简化,也适合大学生、上班族等所有希望编程入门的学习者。课程内容有13周,主要为以下三部分:
1) 11.5周: C++结构化程序设计(基本等同于C语言程序设计)。
2) 1.5周: 基本算法思想,包括算法的时间复杂度的概念、简单排序,二分查找。
3) 1周:用C++的STL(标准模板库)轻松实现高效的排序和查找。这部分内容虽不多,但对于提高编写程序的效率极其有用。
总之,本门课最大的特点是:让学习者花费比学习C语言多不到10%的时间,就能享受C++语言带来的更多方便与效率。
零起点课程,基本上不需要预备知识,初中生也可以学习。
完成作业和考试,达到要求后,可以获得课程主讲教师签名颁发的合格证书或优秀证书。总成绩算法如下:
考核 | 成绩 |
作业和测验 | 40/100 |
考试 | 50/100 |
参与讨论 | 10/100 |
60-84分:合格证书
85-100分:优秀证书
![]()