版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《C++语言程序设计》教学大纲一、课程名称《C++语言程序设计》二、课程性质信息与计算科学专业限选课。三、课程教学目的使学生掌握必要的C++语言的语法知识,在理解语法的同时能从面向对象程序设计方法学的角度理解其意义和用途,同时,能够对现实世界中较简单的问题及其解决方法用计算机语言进行描述,并为后续课程奠定程序设计基础。四、课程教学原则与教学方法C++语言程序设计课程是一门实践性很强的课程,必须通过完成一定量的实验才能掌握所学的知识,所以要特别强调讲授与实验相结合,要保证学生有充分的上机实验条件。本课程以课堂讲授和实验相结合进行授课,采用讨论式、研究式和实验结合的教学方法,以充分调动学生学习的主动性和积极性。教学内容重点突出基础知识与基本技能,既传授知识,又教书育人,注重培养学生的能力与素质。本课程的实验教学以VC++集成开发环境下的控制台应用程序或BorlandC++集成开发环境下的控制台应用程序为背景,对应精讲多练,建议安排11个实验。课堂教学与同步实验学时比例为1:1。详见六项。五、课程总学时66学时,实验课占1/2。六、课程教学内容要点表1课程教学内容要点及实验内容建议学时分配序号教学内容学时实验名称学时1绪论4C++集成开发环境的使用22C++简单程序设计4C++程序的组成及结构流程23函数6函数34类与对象8面向对象程序设计45C++程序的基本结构4C++程序的基本结构26数组、指针与字符串8数组、指针与字符串47继承与派生4继承与派生28多态性4多态性29群体数据及其组织16群体数据及其组织810流类库与输入输出4文件211异常处理4异常处理2合计=SUM(ABOVE)66=SUM(ABOVE)33第一章C++语言绪论(计划学时2)一、教学目的初步掌握程序设计的概念和基本方法;了解C++语言的特点;学会使用VisualC++集成开发环境创建并运行简单的C++项目。通过本章的学习,要求了解计算机语言及其发展,了解高级语言的优点;了解结构化程序设计的基本概念,初步掌握结构化程序设计方法;了解面向对象程序设计的思想、基本概念和三个主要特征;初步接触C++语言,了解C++语言的特点并能熟悉VisualC++集成开发环境的基本使用方法,并完成一个简单的C++程序的编写、编译、调试和运行。二、课程内容(1)计算机程序语言的发展了解机器语言、汇编语言、高级语言的各自特点,了解高级语言的优点;(2)面向对象的方法理解对象、消息、封装、继承、多态的概念;(3)面向对象的软件开发1)了解结构化程序设计和面向对象程序设计方法的特点及不同点;2)了解结构化程序设计的基本概念,初步掌握结构化程序设计方法;3)了解面向对象程序设计的思想、基本概念和三个主要特征(4)信息的表示与存储掌握补码的表示和一般运算规则。(5)程序的开发过程1)初步接触C++语言,了解C++语言的特点。2)熟悉VisualC++集成开发环境的基本使用方法,并完成一个简单的C++程序的编写、编译、调试和运行。(6)实验一C++集成开发环境的基本使用方法了解C++语言的特点并能熟悉VisualC++集成开发环境(或BorlandC++)的基本使用方法,并完成一个简单的C++程序的编写、编译、调试和运行。三、重点、难点提示和教学手段教学重点:两种程序设计方法的理解,以及VisualC++IDE的使用。教学难点:面向对象程序设计的基本思想、基本概念及主要特征。教学手段:传统教学与多媒体教学相结合,注意通过实践理解抽象概念。第二章C++简单程序设计(6学时)一、教学目的通过本章的学习,应该能够编写简单的C++程序,并熟练掌握C++各种运算符的使用方法。能熟练运用运算符组成需要的表达式。正确使用操作数的类型转换和运算符的优先级顺序和结合性。熟练掌握C++各种流程控制语句的用法,包括分支控制语句:if-else语句,多分支控制语句:switch语句,三种循环语句:for循环、while循环和do-while循环语句,会用流程控制语句构造程序。二、课程内容(1)C++语言概述1)了解C++语言的特点;2)掌握标识符的定义;3)了解关键字、变量和常量的概念。(2)基本数据类型和表达式1)掌握整型变量、浮点型变量、字符型变量、布尔型变量、字符串、常量、枚举变量的定义和使用;2)掌握算术运算符、自增运算符、自减运算符、关系运算符、逻辑运算符、赋值运算符、求字节数运算符用及位运算符的运算规则和使用;3)掌握逗号表达式、条件表达式以及显式类型转换、隐式类型转换规则和应用;4)理解运算符的优先级与结合性。(3)数据的输入/输出掌握标准输出流cout、标准输入流cin、printf输出函数及scanf输入函数的格式和应用;(4)算法的基本控制结构1)掌握分支语句:if语句、if-else语句、switch语句的语法规则和应用;2)掌握循环语句:while语句、do-while语句、for语句的语法规则和应用;3)掌握break语句及continue语句语法规则和应用。(5)自定义数据类型掌握typedef的语法规则和应用。(6)实验二C++程序的组成及结构流程1)C++程序的组成了解C++程序的组成,main()函数的概念和作用。懂得类型定义、变量和常量的作用以及变量的初始化。理解程序如何输入和输出数据,能够写出简单的C++程序。2)C++程序的结构流程了解什么是语句和块;懂得怎么样根据条件实现程序分支(if分支、switch分支);掌握建立不同类型的循环(for,while,do-while);Continue和break的作用;理解重复操作的编程方法;Exit()的作用。三、重点、难点提示和教学手段教学重点和教学难点:1)自增、自减运算符的运用;各个运算符的优先级顺序及其结合性;操作数的类型转换。2)C++语言中的变量和常量的概念和使用;C++语言中输入输出库的使用。3)各种流程控制语句的的嵌套使用,包括if-else语句的嵌套,循环语句的嵌套,以及分支语句与循环语句的嵌套等。循环语句和break,continue语句的组合使用。教学手段:多媒体教学,注意与实际应用相结合。第三章函数(6学时)一、教学目的掌握函数的概念、定义和调用方法。通过本部分内容的学习,要理解C++函数参数传递的方法:值传递和引用传递;掌握函数参数值传递的过程,并能够灵活运用;理解内联函数的概念、作用,会定义内联函数;理解函数重载的概念、作用,能够熟练地定义和运用重载的函数;理解递归的概念,并能运用递归的方法解决一些实际问题。二、课程内容(1)函数的定义与使用1)掌握函数的概念;2)掌握函数的定义、函数声明方法;3)理解实参、形参的概念;4)理解值传递、引用传递的概念及用法;5)掌握递归调用,并能运用递归的方法解决一些实际问题;(2)内联函数理解内联函数的概念、作用,会定义内联函数;(3)带默认形参值的函数理解并能熟练使用带默认形参值的函数;(4)函数重载理解函数重载的概念、能熟练定义和使用重载函数;(5)实验三函数懂得函数的声明和定义,怎么样向函数传递参数,怎么样从函数返回一个或多个值,传值和传址的区别;return的作用;理解C++在函数原型中声明引用的目的,正确使用引用;懂得如何定义和应用局部变量、全局变量和静态变量。掌握函数重载和默认参数的函数的应用。三、重点、难点提示和教学手段教学重点:函数的定义、声明、调用的方法,函数参数传递方式、值传递的过程和运用。教学难点:函数的调用过程,带缺省参数的函数的定义和调用,递归的概念。教学手段:多媒体教学,注意与实际应用相结合。第四章类与对象(8学时)一、教学目的理解面向对象程序设计的基本思想和基本概念,理解面向对象的程序与结构化程序的不同之处。能用面向对象的程序设计方法,编写基于对象的程序。二、课程内容面向对象程序设计的基本特点1)理解面向对象程序设计的基本思想和基本概念;2)理解面向对象的程序与结构化程序的不同之处。(2)类和对象1)理解并掌握类和对象的概念;2)掌握类的定义方法;3)理解并掌握数据成员、成员函数的定义;4)理解public、private和protected成员的访问控制属性;5)能用面向对象的程序设计方法,编写基于对象的程序。(3)构造函数的析构函数1)掌握构造函数、默认构造函数的概念、作用,会熟练定义和使用构造函数;2)掌握析构函数、默认析构函数的概念、作用,会熟练定义和使用析构函数;3)掌握拷贝构造函数的概念和作用,会熟练定义和使用析构函数。(4)类的组合1)掌握类组合的概念和定义方法;2)理解类作用域的概念。(5)实验四面向对象程序设计学习类的构造和对象的创建,理解数据成员和成员函数。掌握构造函数与析构函数的声明和使用,学习类组合中构造构造函数、拷贝构造函数和析构函数的设计方法。三、重点、难点提示和教学手段教学重点:类与对象的概念和定义、类成员的访问权限;构造函数(包括拷贝构造函数)和析构函数的概念和用法;类作用域的概念;教学难点:拷贝构造函数的概念和使用;教学手段:多媒体教学,注意与实际应用相结合。第五章C++程序的基本结构(4学时)一、教学目的通过学习本章内容,掌握C++程序的基本结构,并进一步理解面向对象程序设计的基本思想和基本概念,理解面向对象的程序与结构化程序的不同之处。能用面向对象的程序设计方法,编写基于对象的程序;理解变量的作用域与生存期的概念,能够理解全局变量、局部变量、静态变量的概念和用法。二、课程内容(1)作用域与可见性理解变量的作用域与可见性的概念;(2)生存期理解变量的作用域与生存期的概念及二者之间的关系。(3)静态成员理解并熟练掌握静态数据成员和静态成员函数的概念和用法;(4)友元理解并掌握友元的概念和用法。(5)共享数据的保护1)了解共享数据的保护方式及目的;2)掌握C++中共享数据保护的实现;3)掌握const成员函数的概念和使用。(6)多文件结构和编译预处理命令1)掌握多文件结构编译的方法;2)掌握#define、#include编译预处理命令的用法;3)了解条件预处理命令的用法。(7)实验五C++程序的基本结构学习编写基于对象的程序;理解变量的作用域与生存期的概念,学习全局变量、局部变量、静态变量的概念和用法;学习静态数据、友员和共享数据的保护方法;会实现多文件结构的编译和使用条件编译。三、重点、难点提示和教学手段教学重点:静态数据成员和静态成员函数的概念和用法;友元概念和用法。教学难点:const成员函数的概念和使用;静态成员的概念和使用;友元的概念和使用。教学手段:多媒体教学,注意与实际应用相结合。第六章数组、指针与字符串(8学时)一、教学目的通过本章内容的学习,掌握数组的定义与使用方法,学会利用数组编写程序;掌握数组元素的初始化方法;掌握字符数组处理字符串的技巧;熟悉字符串处理函数的功能及使用方法;掌握数组作为函数参数的使用方法;掌握指针的基本概念。包括指针的定义方法与初始化等。理解并掌握this指针的用法;掌握类作用域的概念;掌握内存的动态申请与释放的方法;掌握指针和引用作为函数的参数的用法。二、课程内容(1)数组1)掌握数组的概念、数组的定义和使用方法;2)掌握一维数组的概念、存储及初始化和二维数组的概念、存储和初始化;3)掌握数组作为函数参数的使用方法;4)学会利用数组编写程序。(2)指针1)掌握指针的基本概念。包括指针的定义方法与初始化等。2)理解并掌握this指针的用法;3)掌握类作用域的概念;4)掌握指针和引用作为函数的参数的用法。(3)动态内存分配掌握内存的动态申请与释放的方法;(4)字符串1)掌握字符数组处理字符串的技巧;2)熟悉字符串处理函数的功能及使用方法;(5)实验六数组、指针与字符串1)数组和字符串学习数组的定义和用途,字符串以及如何用字符数组来组成字符串,理解数组作为函数的参数传递。2)指针学习指针的声明和使用指针,懂得指针和指针的指对象的区别,学习如何动态分配和释放内存,学习指针和数组的关系,如何对数组进行指针运算,指针和函数的关系。三、重点、难点提示和教学手段教学重点:数组与字符串的灵活使用。教学难点:字符串在内存中的存储方式、字符串处理函数的使用、指针的基本概念,指针作为函数参数的传递。教学手段:多媒体教学及演示,注意与实际应用相结合。第七章继承与派生(4学时)一、教学目的通过本章的学习,理解基类和派生类的概念,并且掌握继承的概念和用法。二、课程内容(1)继承与派生1)理解基类和派生类的概念;2)掌握继承的概念和用法。(2)访问控制1)理解并掌握基类中不同访问控制属性的成员在派生类中的访问控制属性;2)掌握publid、private和protected属性成员的访问控制属性。(3)派生类的构造和析构函数1)掌握派生类的构造和析构函数的实现方法;2)理解派生类中构造和析构基类成员的方法。(4)派生类成员的标识和访问1)掌握通过派生类对象访问派生类成员方法;2)掌握通过派生类对象访问基类成员方法;(5)赋值兼容规则掌握派生类对象和基类对象的赋值兼容原则。(6)实验七继承与派生学习C++语言对封装性、继承性的支持机制。掌握如何应用C++语言进行数据封装,实现继承性——派生类;掌握派生类的构造和析构函数的实现方法。三、重点、难点提示和教学手段教学重点:继承的概念和使用。教学难点:多继承。教学手段:多媒体教学及演示,注意与实际应用相结合。第八章(多态性(4学时)一、教学目的通过本章内容的学习,理解虚函数、纯虚函数和抽象基类的概念和用法;理解运算符重载的实质和用法;理解多态的概念和作用,掌握多态的实现方法;理解虚析构函数的概念和作用,掌握虚析构函数的用法。二、课程内容(1)多态性概述1)掌握基类、派生类、继承、多重继承的概念;2)理解对象成员的访问权限。(2)运算符重载理解并熟练掌握运算符重载。(3)虚函数1)理解函数隐藏的和函数覆盖的的用法;2)理解虚函数的定义;3)掌握虚函数的使用;4)掌握多态的概念实现方法。(4)抽象类1)掌握纯虚函数的概念和定义;2)掌握抽象类的概念和定义;3)掌握虚析构函数的实现方法。(5)实验八多态性学习C++语言对多态性的支持机制。掌握如何应用C++语言实现多态性——运算符重载和虚函数;学习抽象类的定义和使用。三、重点、难点提示和教学手段教学重点:虚函数的概念和使用;如何用虚函数实现多态。教学难点:抽象类的使用;虚析构函数的使用。教学手段:多媒体教学及演示,注意与实际应用相结合。第九章群体数据及其组织(16学时)一、教学目的通过本章的学习,掌握结构数据类型的定义和使用方法,例如,结构数组,结构变量和指针作为函数的参数等,理解链表、栈、队例的概念,会用结构建立链表、栈、队列并能够对这些数据结构进行插入、删除等操作并训练掌握几种数据组织方法。二、课程内容(1)函数及类模板理解并熟练掌握函数及类模板的定义与使用。(2)线性群体1)掌握结构体、结构体变量的定义和使用,掌握对其数据成员、结构体变量数据成员的访问方式,并能使用结构体变量作参数,使用结构体数组设计程序;2)理解并掌握链表的创建、遍历、查找、插入和删除方法;3)理解并掌握栈的创建和使用;4)理解并掌握队列的创建和使用。(3)群体数据的组织1)理解并熟练掌握插入排序、选择排序、交换排序;2)理解并熟练掌握顺序查找和折半查找。(4)实验九群体数据及其组织学习结构体、结构体变量的定义和使用,掌握对其数据成员、结构体变量数据成员的访问方式,并能使用结构体变量作参数,使用结构体数组设计程序;学习一种群体数据的创建和组织,掌握类模板、函数模板的使用,掌握三种基本排序算法和两种查找算法。三、重点、难点提示和教学手段教学重点:结构数据类型的概念、作用和特点;结构类型变量的定义、初始化和使用方法;群体数据的组织。教学难点:几种结构数据的概念、建立,以及数据的插入、删除等操作。教学手段:多媒体教学及演示,注意与实际应用相结合。第五章流类库与输入输出(4学时)一、教学目的通过本章内容的学习,了解I/O流类的层次结构;掌握C++标准输入输出流的用法;能够使用操纵算子格式化输入输出;掌握文件流的用法;了解字节流的用法;能够确定输入输出流的状态,并进行流错误处理。二、课程内容(1)I/O流了解输入输出流类概念。(2)输出流1)掌握三个主要的输出流ostream、ofstream和ostringstream及其用法;2)掌握构造输出流对象的方法;3)掌握几个常用的插入运算符和输出操纵符的使用;4)掌握输出文件流成员函数的语法格式及用法(含错误处理函数)。(3)输入流1)掌握三个主要的输出流istream、ifstream和istringstream及其用法;2)掌握构造输入流对象的方法;3)掌握几个常用的提取运算符和输入操纵符的使用;4)掌握输入文件流成员函数的语法格式及用法。(4)实现十文件学习什么是流,如何使用流,如何使用流管理输入和输出,如何使用流从
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海纽约大学《基础写作教程》2025-2026学年期末试卷
- 沈阳药科大学《幼儿美术教育与活动指导》2025-2026学年期末试卷
- 防爆电气作业理论知识机考试题及答案
- Calcium-L-Threonate-Standard-生命科学试剂-MCE
- 淡水水生植物繁育工岗前激励考核试卷含答案
- 传输机务员岗前核心管理考核试卷含答案
- 电线电缆挤塑工安全文化模拟考核试卷含答案
- 真空垂熔工持续改进知识考核试卷含答案
- 井下采煤工复试能力考核试卷含答案
- 绝缘子制造工安全宣传水平考核试卷含答案
- 行政事业单位建设项目内部控制制度
- 【新教材】人教PEP版(2024)三年级下册英语全册教案
- 周围神经损伤康复治疗指南
- 全国计算机等级考试三级网络技术真题试题及答案
- 电网配网自动化培训课件
- 民法典物业篇培训课件
- 急诊科多发性外伤救治指南
- 金庸小说课件
- 2026年河南地矿职业学院单招职业适应性测试题库附答案详解
- 慢性阻塞性肺病常见症状及护理方式培训
- 肝功能不全2型糖尿病患者的降糖药物选择方案
评论
0/150
提交评论