江苏广播电视大学

《 C++语言程序设计》课程教学大纲

第一部分    大纲说明

     1.课程性质、任务与目的

     《C++语言程序设计》是江苏电大计算机应用专业的一门专业基础课。主要任务是介绍C++语言中的数据类型,运算,语句结构及其程序设计的基本方法。目的是使学生掌握一门高级程序设计语言,了解面向对象程序设计的基本概念与方法,进而学会利用C++语言学会解决一般应用问题,并为后续的专业课程奠定程序设计基础。

     2.与其他课程的关系

    《C++语言程序设计》的先修课是《计算机入门及操作技能训练》和《计算机组成原理与汇编语言》,它们为本课程提供计算机硬软件基础知识,本课程又为《数据结构》等软件课程提供程序设计基础。

     3.课程特点

     《C++语言程序设计》是一门实践性很强的课程,必须通过上机操作才能掌握所学的知识,所以要特别强调讲授与上机操作相结合,要保证学生有充分的上机条件。

     4.教学要求

    教学要求在每一章教学内容之后给出,大体分为三个层次:了解、掌握和熟练掌握。它们的含义大致为:了解就是掌握概念,掌握就是能够理解和分析现有知识,熟练掌握就是会运用所学知识解决实际问题。

第二部分   媒体使用和教学过程建议

     1.学时分配

     本课程共90学时,5 学分。电视、实验和面授各占36、36和18学时,具体学时分配如下表所示:

序号

内容

电视学时

实验学时

面授学时

  一

C++ 语言概述

2

2

   1

  二

基本数据类型与表达式

4

4

2

  三

C++ 程序的流程控制

6

6

2

  四

数组

3

3

2

  五

C++ 函数

6

6

2

  六

指针、引用和动态空间管理

5

5

3

  七

结构与联合

4

4

2

  八

类与对象

4

4

2

  九

C++ 流

2

2

2

    2.多种媒体教材的说明及教学环节

    本课程文字教材、实验教材及电视讲课均由江苏广播电视大学统一提供。文字教材应包含所有教学内容,叙述要条理清楚,详略得当,注意对C++语言内容的取舍,所有程序都要上机调试通过,内容组织要深入浅出,适合自学;音像教材应突出重点和难点,二者可以相互补充配合,但电视讲课仍应以文字教材为主要依据。

    面授应指导和帮助学生掌握重点,突破难点,分析编程的思路与方法,指出常见的错误。上机操作应有实验教师指导。

    3.考核

    本课程考核包括笔试和上机两部分。笔试由江苏电大统一命题,上机考核由各地方电大组织,上机合格者方可参加笔试。

第三部分   教学内容和教学要求

第一章   C++语言概述

   (一) 教学内容

    1   C++ 语言的简史与特点

    2   一个简单的 C++ 程序

    3   程序的编辑、编译、链接和运行

   ( 二 ) 教学要求

了解 C++ 语言的特点及 C++ 简单程序的构成,掌握 C++ 程序的编辑、编译、链接和运行的过程。

第二章   基本数据类型与表达式

   ( 一 ) 教学内容

    1   C++ 数据类型概述

2  C++ 的基本数据类型(整型、字符型、枚举型、实型)

3  常值变量

4  宏定义的使用

5  操作符与数值表达式

6  关系运算符和逻辑运算符

7  关系表达式和逻辑表达式

8  表达式的副作用和表达式语句

9  typedef 定义

   ( 二 ) 教学要求

    掌握整型、字符型、枚举型、实型等基本数据类型的概念以及 typedef 定义的使用,熟练掌握这些类型的常量和变量的使用及其运算操作,熟练掌握关系运算符和逻辑运算符的使用、关系表达式和逻辑表达式的求值,了解运算符的优先级和结合性,以及表达式的副作用。

第三章   C++ 程序的流程控制

   ( 一 ) 教学内容

1 用 if 语句实现的分支控制

2  用 switch 语句实现的多分支控制

  4   用 while 语句实现的循环控制

     5   用 do...while 语句实现的循环控制

    6   用 for 语句实现的循环控制

     7   continue 和 break 在循环控制中的作用

     8   多重循环

    9   goto 语句

  ( 二 ) 教学要求

    熟练掌握 if 语句和 switch 语句的使用,会在程序中利用它们实现单分支或多分支控制。熟练掌握 while , do...while 和 for 这三种循环语句的结构和执行过程,会在程序中利用它们实现单重或多重循环控制,掌握 continue 语句和 break 语句的作用。

第四章   数组

( 一 ) 教学内容

    1   数组的基本概念:元素、下标、类型、维数

     2   一维数组

     3   二维数组和多维数组

     4   字符数组与字符串

   ( 二 ) 教学要求

    掌握数组的基本概念,熟练掌握一维数组和二维数组的使用,掌握字符数组与字符串的关系以及字符串的简单处理,会分析、编写利用数组进行数据存储和处理的简单程序。

第五章   C++ 函数

   ( 一 ) 教学内容

1  函数的定义

2  函数的调用与参数的传递

3  函数的原形与头文件

4  inline 函数

5  函数的重载

6  变量的作用域与生存期

7  函数的作用域

8  * 函数模板

   ( 二 ) 教学要求

    掌握函数的定义,函数的原形,函数的返回值,函数的调用,函数的形式参数和实际参数之间的关系;掌握函数重载的使用方法,关键字 inline 的含义与使用,掌握变量的作用域与生存期,了解函数的作用域。

第六章   指针、引用和动态空间管理

   ( 一 ) 教学内容

1  指针概述

2  指针的概念:地址、指针类型、 void 指针、空指针

3  指针变量的定义和初始化

4  指针的间接访问: *

5  判断一指针是否是空指针

6  指针操作符与指针表达式

7  指针与数组(含指针数组应用:命令行参数)

8  指针与函数

9  指针与字符串

10  指针与自由空间

11  引用的概念及应用

   ( 二 ) 教学要求

    熟练掌握指针、地址、指针类型、 void 指针类型、空指针等概念,熟练掌握指针变量的定义和初始化、指针的间接访问、指针的加减运算和指针表达式,掌握指针与数组、函数、字符串、自由空间等的联系,了解引用变量、值传送、引用传送的概念,掌握引用参数的使用。

第七章    结构与联合

   ( 一 ) 教学内容

    1   结构的基本概念

    2   结构的定义与初始化

3  结构成员的访问和结构变量的赋值

4  结构与指针

5  结构与函数

6  结构与操作符重载

7  联合的定义与使用

   ( 二 ) 教学要求

    掌握结构的概念,结构类型的定义,结构变量的定义和初始化,结构成员的表示,结构的赋值含义,结构与指针、函数、操作符重载的关系;掌握联合的概念,联合类型和变量的定义,联合成员的表示,联合在结构中的使用。

第八章   类与对象

   ( 一 ) 教学内容

1  面向对象技术的基本概念

2  类定义的格式

3  类成员的访问属性

4  成员函数与 this 指针

5  构造函数与析构函数

6  类对象数据成员

7  友元函数与友元类

8  类的继承

9  * 类的多态性与虚函数

10  * 静态数据成员

11  * 类模板

   ( 二 ) 教学要求

    掌握类的概念,类类型的定义格式,类与结构的关系,类与操作符重载,类的成员属性,类的封装性,类的继承性,构造函数和析构函数的作用, this 指针的含义,类对象的定义,友元函数与友元类的作用;了解 inline 成员函数,静态数据成员,类的多态性与虚函数,类模板等内容。

第九章   C++

   ( 一 ) 教学内容

    1   C++ 流概述

    2   标准输入输出的预定义流对象: cin 、 cout 、 cerr 、 clog

    3   文件流

    4   * 针对内存字符串缓冲区的流

    5   输入输出的格式控制

    6   输入流专门操作

    7   输出流专门操作   

   ( 二 ) 教学要求

掌握 C++ 流的概念,标准预定义流对象 cin,cout 和 cerr 的含义,文件流的定义和使用,了解输入输出的格式控制及专门操作。

第四部分    实验

    实验是学习该课程的非常重要的教学环节,通过上机实验能够加深理解和巩固书本上所学的知识,能够提高动手操作的能力以及分析问题和解决问题的能力。具体实验内容、实验要求和实验安排将在该课程的实验教材中给出,请各地教学班按照实验教材安排学生实验。