1、 课 程名称:C+ 程序设计 课程代码:4737(理论与实践相结合课程)第一部分 课程性质与目标(一)课程性质与特点C+程序 设计课程在软件工程专业(本科)的自学考试计划中,是一门重要的专业核心必考课。它是满足计算机应用领域对计算机应用人才的需要而设置的。本课程的任务是通过学习,使考生为以后学习软件工程和 Java 语言等后继课程及开展课程设计打下必备的基础,并且为以后从事应用软件开发提供合适的工具。(二)课程目标与基本要求学生应了解计算机程序设计的基本知识,掌握 C+语言程序设计的基本方法和使用计算机处理问题的思维方法,具有应用计算机编程的初步能力。 1、了解 C+语言的特点,掌握 语言的成
2、份及其使用方法,能 够阅读及编写简单的应用程序; 2、掌握最基本的算法和实现的方法; 3、掌握结构化程序 设计的方法,能编制出风格良好的程序; 4、掌握 C+语言程序 调试的基本技能。(三)与本专业其他课程的关系1本课程的先修课程为高级语言程序设计和计算机系统结构,以便对程序设计、计算机结构、软硬件等概念有一个初步了解。2本课程的后继课程是软件工程和 Java 语言。C+程序设计(实践)是课程设计的任选课程之一,学好本门课程将有助于课程设计。第二部分 考核内容与考核目标第一章 C+语言概述(一)学习目的与要求本章的目的是引入 C+如何兼容面向过程设计、C+的基本程序结构及开发环境与 C 语言的
3、异同。本章要求熟悉 C+的基本程序结构。初步理解面向对象程序设计的思想及 C+语言中的新思想和特点。要求初步掌握 Visual C+ 6.0 开发环 境。 (二)考核知识点与考核目标1、 C+程序的结构 (重点)识记: 预处理命令基本概念,C+中程序注释与 C 的不同 理解: 理解 C 与 C+语言的关系 应用: 熟练掌握 C+程序的基本结构,数据的输入/输出格式 2、 Visual C+ 6.0 的开发环境 (次重点)识记: Visual C+ 开发环境的特点 理解: Visual C+ 和工程和文件的产生方法 应用: 熟练掌握 C+语言程序的编写和运行 3、 C+语 言的发展及特点及程序设
4、计方法(一般)识记: C+语言及其发展历史 理解: C+语言的特点 应用: 熟练掌握面向对象程序设计方法的特点 第二章 数据类型、运算符和表达式(一)学习目的与要求本章的目的是引入 C+中数据类型及其特点、常量和变量、数值表达式、逻辑 型数据和逻辑表达式、自定义类型修饰符。本章要求熟悉数据类型及其特点。初步理解不同类型数据之间的转换规则。要求初步掌握运算符与表达式的规则和使用方法。 (二)考核知识点与考核目标1、 常量和变量 (重点)识记: 常量、变量和引用的定义 理解: 符号常量与常值变量的划分 应用: 熟练掌握常量和变量的具体应用 2、 运算符和表达式 (次重点)识记: 数据表达式与运算符
5、的概念 理解: 理解各表达式和运算符之间的关系 应用: 熟练掌握运算符与表达式的转换 3、 数据类型 (一般)识记: 数据类型的概念 理解: 基本数据类型的存储 应用: 熟练掌握各数据类型的分类及更快地识别他们 第三章 C+基本语句(一)学习目的与要求本章的目的是介绍各种语句,包括声明语句、输入输出语句、分支语句、循 环语句、 转 向语句。要求掌握他 们 的性质及使用主法。本章要求熟悉各种语句概念及其特点。初步理解选择型和循环型程序设计方法。要求初步掌握辅助控制语句和中止函数使用规则和方法。(二)考核知识点与考核目标1、 输入/输出语句 (重点)识记: 输入/输出时常用的控制符的概念 理解:
6、控制格式符的使用 应用: 输入/输出语句在程序中的具体格式 2、 分支语句/循环语句 (次重点)识记: if 语句和 while 语句概念 理解: 多分支选择语句switch 语句/循环语 句类型 应用: 简单 if 语句/双分支 if 语句/多分支的 if 语句使用方法以及 3 种循环语句的使用方法 3、 转向语句/声明语句 (一般)识记: 声明语句概念 理解: 转向语句 4 种类型 应用: 掌握 4 种转向语句使用方法 第四章 数组(一)学习目的与要求本章的目的是建立数组的概念,要求重点掌握一维数组、二维数组、字符数 组和字符串的定义初始化和数组元素的引用及基本操作。掌握数组的基本编程方法
7、:数据的交换排序等。(二)考核知识点与考核目标1、 一维数组 (重点)识记: 一维数组定义格式 理解: 正确理解一维数组的初始化 应用: 熟练引用数组元素及对能正确对其进行基本操作 2、 字符数组与字符串 (次重点)识记: 字符数组与字符串定义与初始化 理解: 正确理解字符与字符串区别 应用: 熟练掌握 4 种字符串处理函数及其格式 3、 二维数组 (一般)识记: 二维数组定义格式 理解: 正确理解二维数组的初始化 应用: 熟练引用数组元素及对能正确对其进行基本操作 第五章 函数(一)学习目的与要求本章的目的是将一般成员函数的特征集中在函数中讨论,以便为设计类打下基础,本章的知识很重要,要求能
8、够熟练、正确地设计函数原形和参数类型,并将其推广到函数模板。本章除了要求掌握函数参数的传递方式和返回值等问题之外,还要求掌握内联函数和函数重载。(二)考核知识点与考核目标1、 函数调用中的参数传递 (重点)识记: 函数调用中的参数传递概念 理解: 熟练理解函数调用中的参数传递 4 大分类 应用: 熟练掌握 4 大参数调用在各种程序中的具体应用 2、 函数和变量的作用域 (次重点)识记: 作用域概念 理解: 熟练理解全局变量和局部变量 应用: 掌握函数的作用域和变量的作用域(可见性)及生存期(存在性) 3、 内联函数、函数重载和函数的调用 (一般)识记: 函数的定义和声明 理解: 理解函数的调用
9、格式、调用过程 应用: 熟练掌握函数重载的机制与应用和内联函数格式及应用 第六章 指针(一)学习目的与要求本章的目的是引入指针,要求掌握利用指针操作数组和内存,并熟练掌握字符指针与函数指针的使用。(二)考核知识点与考核目标1、 指针与数组 (重点)识记: 指针与数组以及指针数组的概念 理解: 指针与一维数组和二维数组定义与使用方法 应用: 熟练掌握使用指针操纵数组和内存 2、 指针与函数 (次重点)识记: 指针与函数的关系 理解: 理解指针作为参数传递的函数 应用: 熟练掌握指针做为参数以及指针函数和函数指针在程序中的应用 3、 指针、指针变量、指针与字符串 (一般)识记: 指针、字符指针和字
10、符数组的概念 理解: 指针变量的定义和初始化、字符指针与字符数组的区别 应用: 熟练掌握指针的各种运算 第七章 结构与联合(一)学习目的与要求本章的目的是引入结构与联合的概念,要求掌握它们的性质,并通过学习一个多文件编程范例,掌握使用结构类型访问成员。同时掌握结构与指针,结构与函数的具体应用。(二)考核知识点与考核目标1、 结构、结构变量、结构成员 (重点)识记: 结构定义 理解: 结构变量的定义和初始化 应用: 掌握结构类型中结构成员的访问 2、 结构与函数、 结构与指针 (次重点)识记: 结构与函数的关系 理解: 结构变量与指针的关系 应用:熟练掌握结构变量作为函数的参数、结构指针访问结构
11、成员具体应用 3、 联合 (一般)识记: 联合的概念 理解: 联合的定义和访问 应用: 掌握用联合来处理数据 第八章 类与对象(一)学习目的与要求本章的目的是建立类和对象的概念,要求重点掌在 C+定义类、建立和使用对象的基本方法。(二)考核知识点与考核目标1、 类的成员函数 (重点)识记: 成员函数的概念 理解: 构造函数和析构函数的定义 应用: 熟练掌握构造函数和析构函数的使用方法和调用顺序 2、 类与对象的定义 (次重点)识记: 类与对象的概念 理解: 类的定义格式和使用说明 应用: 熟练掌握对象的定义及访问 3、 类的静态成员、友元函数 (一般)识记: 静态成员和友元函数的概念 理解:
12、理解友元函数的应用 应用: 熟练掌握静态数据成员和静态成员函数的格式和具体应用 第九章 继承与派生(一)学习目的与要求本章的目的是介绍 C+语言继承方面的语法特征,要求通过仔细研读实例,掌握派生和包含的设计方法。(二)考核知识点与考核目标1、 继承与派生类 (重点)识记: 继承与派生的概念 理解: 派生类的定义 应用: 掌握派生类的三种继承方式 2、 多重继承 (次重点)识记: 多重继承的概念 理解: 多重继承的声明和多重继承中的同名问题 应用: 熟练掌握多重继承的构造函数和析构函数的应用 3、 虚基类 (一般)识记: 虚基类的定义 理解: 虚基类声明的一般形式 应用: 虚基类的初始化 第十章
13、 多态性(一)学习目的与要求本章的目的是引入 C+语言的多态性的用途,要求理解编译时的多态性和运行时的多态性,掌握运算符、虚函数、抽象类与纯虚函数的有关知识。(二)考核知识点与考核目标1、 运算符重载 (重点)识记: 进行运算符重载的必要性 理解: 理解运算符重载的规则 应用: 掌握运算符重载的方法 2、 虚函数、抽象 类与纯虚函数 (次重点)识记: 虚函数的定义 理解: 纯虚函数和抽象类概念 应用: 掌握纯虚函数的声明格式和抽象类的使用 3、 多态性 (一般)识记: 多态性的概念 理解: 理解多态性的两种形态概念 应用: 掌握编译时的多态性和运行时的多态性 第十一章 模板(一)学习目的与要求
14、本章的目的是介绍设计 C+函数模板和类模板的概念,要求掌握函数模板和类模板的定义及简单的使用。(二)考核知识点与考核目标1、 函数模板的定义和使用 (重点)识记: 函数模板的概念 理解: 函数模板的定义的一般形式 应用: 熟练掌握函数模板和模板函数的使用 2、 类模板的定义和使用 (次重点)识记: 类模板的概念 理解: 类模板的定义的一般形式 应用: 熟练掌握类模板的使用 第十二章 C+输入输出流(一)学习目的与要求本章的目的是学习流类库的概念及使用流类库进行文件夹存取的概念,希望通过文件存取综合实例,掌握进行文件存取的最基本方法。(二)考核知识点与考核目标1、 格式控制 (重点)识记: 常用
15、的格式控制操作符的功能 理解: ios 类中的其他成员函数 应用: 熟练掌握用 ios 类成员函数进行格式控制 2、 文件的 I/O 操作 (次重点)识记: 文件与文件流概念 理解: 文件流对象的建立、文件的打开与关闭 应用: 熟练掌握二进制文件和文本文件的 I/O 操作 3、 C+流 (一般)识记: C+流的概念 理解: ios 类的概念和 ios 类的派生关系 应用: 掌握标准输入流与标准输出流的使用 第三部分 实践教学过程性考核训练(一)实践考核训练计算机机上考核(二)考核知识点和考核目标子项目 编程,当 输 入一个年份时,该程序判断是否为闰年并输出判断结果1、考核的目的与要求 通过上机实训,掌握 C+基本语句,包括分支语句中简单的 if 语句、双分支 if 语句和多分支的 if 语句用法。 (重点 应用) 2、考核的内容 1)知识点:分支 if 语句用法逻辑表达式用法2)操作内容:设年份为变量 year,则 year 是闰年的条件应符合下面二者之一:能被 4 整除,但不能被 100 整除;能被 400 整除。 (重点 应用) 子项目 设计一个程序,实现指针的综合运用1、考核的目的与要求 通过上机实训,掌握指针与数组、指针与函数的相关内容,在实际应用中要灵活使用指针,才能更好地发挥它的作用。2、考核的内容 (重点 应用) 1)知识点:指针与函数