《程序设计基础》课程是计算机及相关专业、以及新工科各专业大一学生的基础必修课程,也是大学其他理工科各专业的公共计算机基础课程。《程序设计基础》课程在“工程师思维”理念下,将一些使用计算机进行计算的基本原理和方法,以及如何使用C++语言去实现他们等内容进行了有机地结合,避免了以往单纯地学习一门高级程序设计语言、而忽略了主动去思考为什么要学习、在学习什么等问题的弊端。 《程序设计基础(上)》已经学习了程序设计的基本思想,以及基于C++语言的结构化程序设计方法。通过《程序设计基础(下)》课程的学习,能够使同学们了解和掌握使用C++语言进行面向对象程序设计的基本方法;了解和掌握基于C++语言实现的几种基本的数据结构:线性表、队列、二叉树、图等;更重要的是培养同学们主动运用“计算”的思想去思考和解决问题的意识和能力,为未来使用计算机解决专业问题打下一个良好的思维和能力的基础。
Overview
Syllabus
- 拓展学习
- C++的常见错误
- MFC入门
- STL及使用示例
- 算法设计与算法分析基础
- 算法设计基本方法与策略基础
- 计算机前沿问题思考
- QT编程入门
- C++中的string类
- 面向对象方法应用实例
- 继承与多态应用实例
- 排序算法
- C++常见问题汇总
- 南开大学往届学长课程学习感悟
- 学习感悟(1)
- 学习感悟(2)
- 学习感悟(3)
- 学习感悟(4)
- 优秀大作业展示
- 第一章 面向对象方法
- 1.1面向对象方法的基本概念
- 1.2 C++中类的定义
- 1.3C++中对象的定义和访问
- 1.4类成员的访问控制
- 1.5析构函数
- 1.6拷贝构造函数
- 1.7 类声明与类实现的分离
- 1.8类的静态成员
- 1.9类的常量成员
- 1.10this指针
- 1.11类的友元
- 1.12类的对象成员
- 1.13自定义类的运算符重载
- 第二章 继承与多态
- 2.1 派生类的定义和继承方式
- 2.2 派生类中函数的重定义
- 2.3派生类的构造函数和析构函数
- 2.4多继承
- 2.5多态
- 2.6抽象类
- 第三章 输入输出流
- 3.1cout和cin对象及插入和提取运算符
- 3.2 使用put和get函数进行标准输出和输入
- 3.3使用getline函数进行标准输入
- 3.4 文件流对象
- 3.5文件流对象及插入和提取运算符
- 3.6文件流对象及put、get和getline函数
- 3.7按数据块进行输入输出
- 3.8按数据块进行输入输出实例
- 3.9文件的随机读写
- 3.10用户自定义数据类型的输入输出
- 第四章 模板
- 4.1函数模板
- 4.2类模板
- 第五章 概论
- 5.1数据结构基本概念(一)
- 5.2数据结构基本概念(二)
- 第六章 线性表
- 6.1线性表及其抽象数据类型
- 6.2顺序表类模板
- 6.3顺序表的实现
- 6.4简单数据元素顺序表的应用问题
- 6.5复杂数据元素顺序表的应用问题
- 6.6单向链表及其类模板
- 6.7单项链表的实现(一)
- 6.8单项链表的实现(二)
- 6.9单向链表的应用
- 6.10循环链表及双向链表
- 第七章 栈和队列
- 7.1栈及顺序栈
- 7.2 顺序栈的实现
- 7.3顺序栈的应用
- 7.4 链接栈及其实现
- 7.5队列及其顺序存储
- 7.6 顺序循环队列的实现
- 7.7顺序循环队列的应用
- 7.8链接队列及其实现
- 第八章 树和二叉树
- 8.1树的基本概念
- 8.2二叉树及其性质
- 8.3二叉树的抽象数据类型和顺序表示
- 8.4二叉树的链式表示
- 8.5二叉链表的实现(一)
- 8.6二叉链表的实现(二)先序和中序遍历
- 8.7二叉链表的实现(三)后序和逐层遍历
- 8.8二叉链表的实现(四)
- 8.9 二叉排序树
- 8.10哈夫曼树和哈夫曼编码
- 第九章 图
- 9.1图的基本概念及其特征
- 9.2图的抽象数据类型和表示方式
- 9.3图的邻接矩阵表示法的实现
- 9.4图的广度优先遍历
- 9.5图的深度优先遍历
- 9.6图的应用
- 例题及视频讲解
- 面向对象方法
- 继承与多态
- 输入输出流
- 模板
- 期末考试
- 百年南开 风华正茂
- 百年沧桑到民族复兴
Taught by
Hong Zhao, , , Kai Wang, and Min Li