第一篇:《程序设计方法(C_C++)》教学大纲(中文版)
《程序设计方法(C&C++)》
课程编号:COM07009
课程名称:程序设计方法(C&C++)Programming Approach(C&C++)学分:4 学时:64(其中实验学时:16)先修课程:
一、目的与任务
本课程是大学计算机基础教学系列中的核心课程,主要讲授高级程序设计语言的基本知识和程序设计的方法和技术。通过本课程的学习,要求学生:
1、了解程序设计技术的发展过程,理解C&C++程序设计语言的基本构成;
2、掌握基本的程序设计过程和技巧;
3、掌握基本的程序调试和测试的方法;
4、了解计算机科学求解实际问题的基本过程,具备基本的分析问题和利用计算机求解问题的能力。
二、教学内容及学时分配 理论教学部分(48学时)
第一章 程序设计语言基础知识(2学时)1.课程的内容、性质和任务 2.了解程序设计语言的产生和发展
3.了解程序设计语言类型及常用程序设计语言的特点 4.C&C++程序的基本构成 5.C&C++语言的基本组成 6.关于C&C++的上机实践
第二章 数据类型与运算规则(4学时)1.数据与数据类型
2.C&C++语言中的数据类型及其表示 3.算术运算符与赋值运算 4.关系运算与逻辑运算 5.位运算 6.其他运算
7.混合运算及数据类型转换
第三章 简单程序设计(6学时)1.面向过程的程序设计和算法 2.C&C++程序和语句 3.赋值语句
4.C&C++的输入与输出 5.顺序结构程序设计 6.选择结构程序设计 7.循环结构程序设计 第四章 数组(4学时)1.数组的概念 2.一维数组 3.二维数组 4.字符数组
5.C&C++处理字符串函数 第五章 函数(4学时)1.概述 2.函数的定义 3.函数的调用与返回 4.在函数之间传递函数 5.变量的存储属性 6.函数的递归调用 第六章 指针(4学时)1.指针的概念 2.指针与变量 3.函数与指针 4.数组与指针 5.字符串与指针 6.指针数组 7.多级指针
第七章 自定义数据类型(6学时)1.结构类型
2.结构数组 3.结构指针
4.在函数之间传递结构 5.联合类型 6.枚举类型
7.用typedef定义类型 8.链表基础
第八章 类和对象(3学时)1.面向对象程序设计方法概述 2.类的声明和对象的定义 3.类的成员函数 4.对象成员的引用 5.构造函数 6.析构函数
7.调用构造函数和析构函数的顺序 8.对象数组 9.对象指针
10.动态存储与对象的动态建立与释放 第九章 友元、重载与引用(2学时)1.友元 2.重载 3.引用
第十章 继承与派生(4学时)1.继承与派生的概念 2.派生类的声明方式 3.派生类的构成
4.派生类成员函数的访问属性 5.派生类的构造函数和析构函数 6.多继承
第十一章 多态性与虚函数(2学时)1.多态性
2.虚函数
3.纯虚函数与抽象类 第十二章 模板(2学时)1.模板的概念 2.函数模板 3.类模板
第十三章 输入输出流(3学时)1.C++的输入和输出 2.标准输出流 3.标准输入流 4.文件操作与文件流
第十四章 异常处理(2学时)1.异常处理的基本思想 2.C++异常处理的实现 3.异常处理中的构造与析构 实验教学部分(16学时)实验项目可从以下内容选择:
(1)三种基本结构程序设计(2学时)(2)数组(2学时)(3)函数(2学时)(4)指针(2学时)(5)结构与链表(2学时)(6)类与对象(2学时)(7)友元、重载和引用(2学时)(8)继承和派生(2学时)(9)多态性和虚函数(2学时)(10)输入输出(2学时)
三、考核与成绩评定
考核:采用日常性考核(作业、实验)和期末终结性考核(无纸化)相结合的方式。作业、实验成绩占 20%,期末考试由理论和编程考核两部分构成,每部分成绩各占 40%。日常性考核与期末终结性考核均在计算机实验教学中心网络教学支撑平台(网络教室)上完成。
四、大纲说明
1.本大纲根据教育部计算机基础课程教学指导委员会制定的《计算机基础课程》教学基本要求,并适当考虑我校教学改革要求而制定。
2.在保证基本教学要求的前提下,教师可以根据实际情况,对内容进行适当的调整和删节。3.本大纲适合理工科信息类本科各专业。
4.本课程实践性要求很高,因学时有限,实验课内容通过课内上机学时与课外上机学时共同完成。大纲内给出了课内上机学时的实验题目。课外上机学时的实验题目是难度较大量的综合程序设计题目。课内、外的实验题目将发布在计算机实验教学中心网络教学支撑平台上。课内的实验题目必做,课外的实验题目选做。对能较好完成课外机时实验题目的学生,可在实验成绩中适当加分奖励。
五、教材、参考书
选用教材:梁升成.C/C++程序设计教程[M].北京:清华大学出版社,2009.参考书:
[1]李凤霞、刘桂山等.C语言程序设计教程(第二版)[M].北京:北京理工大学出版社,2004.[2]高飞、聂青等.C++与数据结构 [M].北京:北京理工大学出版社,2006.[3]苏京霞、高飞.C++与数据结构实验教程 [M].北京:北京理工大学出版社,2006.[4]王树武、刘桂山等.C语言程序设计教程习题与上机指导(第二版)[M] .北京:北京理工大学出版社,2004.编写教师: 高飞 责任教授签字: 教学院长签字:
第二篇:程序设计教学大纲
广东医学院
数学与计算机科学教研室
教学大纲
程序设计
2010年9月
《程序设计》
教学大纲
(供非信息管理专业和生物医学工程专业使用)
Ⅰ 前言
《程序设计》是医疗本科、检验本科、影像等专业学生的一门计算机应用必修课。课程旨对VISUAL FOXPRO在数据管理应用方面作介绍,使学生初步了解VISUAL FOXPRO在医学领域的实际应用,进一步理解和掌握VISUAL FOXPRO的功能、特点,使用方法和常用命令,学会建立和使用数据库进行数据管理,学会建立和执行命令文件,掌握和学会应用程序结构,了解内存变量的使用。提高学生在今后的实际工作中使用计算机来解决实际问题的能力。
本课程教学要求的层次是:
一 掌握:要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、初步设计和解答与应用相关的问题。
二 理解:要求学生能够较好地理解所学内容,并且能够进行简单分析和判断。三 了解:要求学生能够一般地了解所学内容。
本课程教学参考学时为72学时,理论36学时,实验36学时。
Ⅱ 正文
第一章 数据库系统一 教学目的
让学生熟悉系统的操作界面,知道怎么样配置和简单操作系统,对VFP系统的文件类型有初步的认识。
二 教学要求
(一)理解数据库的基本概念和数据模型,建立数据库的基本思想。
(二)了解VFP系统的有关情况、主要技术性能指标。
(三)理解VFP系统的文件类型,这对以后学生的操作很重要。
三 教学内容
(一)数据库基础知识,包括基本概念、数据模型、关系数据库及其特点。
(二)VFP系统的特点和运行。
(三)VFP系统的集成开发环境。
(四)VFP系统的安装。
(五)VFP系统的配置。
(六)VFP系统的文件类型,如:dbf、.fpt、.idx、.prg、.app、.scx、.sct、.spr、.spx、.mnx、.mnt、.mpr、.exe。
第二章 Visual Foxpro语言基础 一 教学目的
学生学习VFP系统的基本语言,对课程的基础知识有所了解,熟悉VFP的最基本操作,是学好后面内容的关键。
二 教学要求
(一)理解各种不同的额数据类型。
(二)理解数据存储。
(三)掌握运算符和表达式。
(四)掌握各种函数的使用方法、要求。
三 教学内容
(一)VFP的主要数据类型:字符(C)、数值(N)、日期(D)、逻辑(L)、备注(M)、通用(G)。
(二)常量、变量(内存、字段变量)。
(三)表达式和运算符。
(四)函数,如&,ABS(),ALLTRIM(),LTRIM(),AT(),BOF(),CHR(),COL(), CTOD(),DATE(),DAY(),DTOC(),EOF(),FILE(),FOUND(),IIF(),INT(),LEN(), LOWER(),MONTH(),RECNO(),ROUND(),ROW(),SPACE(),STR(),SUBSTR(),TYPE(), UPPER(),VAL(),YEAR()。
第三章 VFP数据库及其操作
一 教学目的
学生了解项目管理器,懂得数据库的基本操作,可以维护日常的数据库数据,根据要求对数据库做排序或索引查询,满足一般的简单查询要求。
二 教学要求
(一)掌握创建项目、数据库和数据表。
(二)掌握数据表的基本操作。
(三)掌握数据表的维护。
(四)掌握数据部排序和索引。
(五)掌握多数据表操作。
三 教学内容
(一)创建项目,项目文件的建立、打开和关闭。
(二)创建数据库,数据库文件的建立、打开和关闭。
(三)创建数据表,数据表文件的建立、打开和关闭。
(四)数据表的基本操作。数据表的浏览和记录的定位,命令包括:GOTO、SKIP、LOCATE和CONTINUE、FIND、SEEK。
(五)数据表的维护,包括:文件结构的修改,记录的输入(增添、插入和用另一个库添加),数据表结构,数据表记录的显示和打印(包括如下命令: LIST、DISPLAY、LIST STRU、DISPLAY STRU、BROWSE、?和??),记录的删除与恢复,记录内容的修改命令包括:BROWSE、EDIT、CHANGE、REPLACE,文件目录的显示,表文件和一般文件的复制,文件删除和更名,表结构描述文件的操作和转换(COPY STRUCTURE TO EXTENDED 和 CREATE FROM 命令)。
(六)数据表排序与索引。一般查询 LOCATE和COTINUE,FIND和SEEK。数据表的统计,命令包括:SUM、AVERAGE、COUNT、TOTAL。数据库的统计,命令包括:SUM、AVERAGE、COUNT、TOTAL。
(七)多数据表操作 工作区的选择。当前库及当前记录字段的访问。数据库的连接(JOIN)、关联(SET RELATION)。
第四章 查询和视图
一 教学目的
学生懂得根据要求建立查询和视图。
二 教学要求
(一)理解查询的概念。
(二)掌握查询文件的建立和查看。
(三)理解视图的概念。
(四)掌握视图的创建和数据的更新。
三 教学内容
(一)查询的概念。
(二)创建查询。
(三)查看查询文件。
(四)视图的概念。
(五)创建视图。
(六)用视图更新数据。
(七)怎样使用视图。
第五章 结构化查询语言SQL 一 教学目的
学生懂得简单的SQL语言,会使用基本的SQL语言进行查询。
二 教学要求
(一)理解SQL-SELECT查询语句。
(二)掌握理解SQL-SELECT查询语句的一些基本应用。
三 教学内容
(一)SELECT语句的介绍。
(二)SELECT语句的基本查询。
(三)排序查询和计算分组查询。
(四)联接查询和查询的输出。
第六章 结构化程序设计
一 教学目的
了解VFP语言的特点、语句构成和数据结构,能读懂源程序,并绘制流程图,编写和调试程序。掌握结构化程序设计的方法。
二 教学要求
(一)掌握程序的建立和执行。
(二)掌握程序设计常用命令。
(三)掌握程序的基本控制结构。
(四)理解过程与自定义函数。
(五)掌握程序的调试。
三 教学内容
(一)程序文件的建立模式、修改以及执行方式。
(二)程序设计的基本命令:note、text、set、clear、close、cancel、return、quit、wait、accept、input、@...SAY...GET与READ等语句。
(三)三种程序控制结构:顺序、分支和循环。
(四)基本程序设计语句 条件语句(IF...ELSE...ENDIF)2 多分支语句(DO CASE...ENDCASE)3 循环语句和有关语句(DO WHILE...ENDDO 和EXIT、LOOP)4 数据输入语句(ACCEPT、WAIT、INPUT)
(五)过程文件与自定义函数的定义和使用方法、带参数的过程调用。
(六)程序的调试。
第七章 面向对象程序设计
一 教学目的
学生了解面向对象的程序设计的基本概念――对象和类,初步掌握VFP中的类与对象及其属性、方法的设置和使用。
二 教学要求
(一)了解对象、类、属性、事件与方法。
(二)理解如何设计类。
(三)理解如何创建对象。
三 教学内容
(一)对象的概念、类的概念,并且介绍VFP中的类。
(二)对象的属性、事件和方法的设置和使用。
(三)类的创建、类属性的设置、类方法的定义以及通过编程来定义类。
(四)对象的创建、引用以及对象的属性设置与方法调用。
第八章 表单设计与应用 一 教学目的
学生了解表单这一应用程序中最常见的交互式操作界面,理解怎样利用对象的属性、事件和方法来构建简单的表单。
二 教学要求
(一)掌握创建表单。
(二)理解表单设计器的使用。
(三)表单和常用控件的设计。
三 教学内容
(一)表单的建立、保存和运行方法。
(二)利用表单控件工具栏、属性窗口、代码窗口对表单进行简单的设置。
(三)表单与一些常用控件的设计,如标签控件、文本框控件、命令按钮控件等。
第九章 报表设计与应用
一 教学目的
学生初步掌握报表的设计,可以设计一般功能的报表文件。
二 教学要求
(一)掌握报表的创建。
(二)理解报表的设计。
(三)掌握报表控件的使用。
(四)理解报表中数据的分组。
(五)理解报表的输出设置。
三 教学内容
(一)报表的创建、保存与浏览。
(二)设计报表的一般步骤。
(三)标签控件、域控件等控件与报表变量的使用。
(四)一级数据分组与二级数据分组。
(五)报表的页面设置、预览和打印报表。
Ⅲ 教学组织与方法
一 实施机构:第二临床学院数学与计算机科学教研室。
二 组织内容:教案讲义审核、集体教学备课、教学方法研究。三 教学方法:
理论教学:采用启发式的课堂教学形式,以现代教育技术为主要手段进行讲学,核心内容讲授为主,重点内容介绍为主,一般内容自学为主。
实验教学:以班为单位在机房上机练习。辅导形式:辅导讲义、课堂答疑。
四 考核方法:考试采用闭卷笔试。教学测量分平时测验和期末考试。
Ⅳ 教学时数分配表
授课内容
学时
教学手段 实验内容
学时
类型
常量、变量、运算符和表达式(3.1~3.2)
常用函数(3.1~3.4);数据表的建立(4.1)
1.数据库系统概论(1.1~1.3)2 2
常量、变量、运算符
CAI、操作
和表达式(3.1~3.2)常用函数(3.1~3.4);
CAI、操作
数据表的建立(4.1)1.数据库系统概论2 2
验证型 验证型
2.数据表的基本操作(4.2.1~4.2.3)
数据表的基本操作(4.2.4~4.2.6);排序(4.3.1)
数据表的索引(4.3.2~4.3.4);查询命令(4.4.1)
数据表的统计(4.4.2)数据表间的操作(4.5.1~4.5.4)数据库及其操作(5.1~5.3)查询文件的建立与视图的建立(5.4~5.5)
结构化查询语言SQL(6.1~6.4)
程序顺序结构、分支结构(7.1~7.3)
程序循环结构(7.4.1~7.4.2)程序循环结构(7.4.3~7.4.4)模块结构程序设计(7.5.1~7.5.3;7.5.5)
模块结构程序设计(7.5.4;7.5.6;7.6.1~7.6.4)表单设计(8.5.1~8.5.5)
表单设计(8.5.6~8.5.10;8.6)报表设计(9.1~9.4)菜单设计(9.4.1~9.4.5);内容CAI、操作
(1.1~1.3)
2.数据表的基本操作(4.2.1~4.2.3)数据表的基本操作CAI、操作(4.2.4~4.2.6);排序
(4.3.1)
CAI、操作
数据表的索引(4.3.2~
4.3.4);查询命令(4.4.1)数据表的统计(4.4.2)CAI、操作 数据表间的操作
(4.5.1~4.5.4)2 CAI、操作
实验测试一(开卷,独
立完成)2 CAI、操作
查询文件的建立与视
图的建立(5.4~5.5)2 CAI、操作
结构化查询语言
SQL(6.1~6.4)2 CAI、操作
程序顺序结构、分支
结构(7.1~7.3)2 CAI、操作
程序循环结构(7.4.1~
7.4.2)2 CAI、操作
程序循环结构(7.4.3~
7.4.4)2
CAI、操作
模块结构程序设计
(7.5.1~7.5.3;7.5.5)模块结构程序设计CAI、操作(7.5.4;7.5.6;7.6.1~
7.6.4)2 CAI、操作
表单设计(8.5.1~
8.5.5)2 CAI、操作
表单设计(8.5.6~
8.5.10;8.6)2 CAI、操作 报表设计(9.1~9.4)2
CAI、操作 菜单设计(9.4.1~验证型 验证型 验证型
验证型
验证型 2 验证型 2 验证型 2 验证型 2 验证型 2
综合型
综合型 综合型 2
综合型 综合型 2
综合型
复习
合计
9.4.5);内容复习
第三篇:《面向对象程序设计方法》课程教学大纲
《面向对象程序设计方法》课程教学大纲
(计算机科学与技术本科专业使用)
一、课程的地位、教学目的和基本要求
C++语言是一种高效实用的程序设计语言,既可进行过程化的程序设计,也可进行面向对象程序设计。本课程以介绍C++语言的基本语法为基础逐步向学生渗透面向对象的程序设计思想,要求学生掌握类的封装、数据隐藏、继承及多态等特性,领会面向对象程序设计,掌握面向对象程序设计方法,培养一定的程序设计能力,为以后各专业课程的学习打下良好的程序设计基础。
二、主要教学环节
1、理论教学 学时数:60 占全部学时数:75 %
2、实验 学时数:20 占全部学时数:25 %
3、实训 学时数:二周
三、课程内容 Ⅰ.理论部分
第一章 C++入门 2学时(1)教学目的、要求
本章要求学生掌握源程序的编辑、编译、连接和执行。了解C++程序设计语言的发展过程以及支持环境。(2)重点与难点
本章的重点和难点是源程序的编辑、编译、连接和执行。
第一节 从C到C++ 第二节 程序与语言 第三节 结构化程序设计 第四节 面向对象程序设计 第五节 程序开发过程 第六节 函数
第二章 基本数据类型与输入输出 2学时(1)教学目的、要求
本章要求学生掌握C++语言数据类型,变量及常量的声明和赋值以及输入输出函数。了解I/O流及printf和scanf输入输出的作用。(2)重点与难点
本章的重点和难点是C++语言数据类型,变量及常量的声明和赋值以及输入输出函数。
第一节 字符集与保留字 第二节 基本数据类型 第三节 变量定义 第四节 常量及常量定义 第五节 I/O流控制 第六节 Printf与scanf 第三章 表达式和语句 2学时(1)教学目的、要求
本章要求学生掌握C++各运算符与常用表达式内容,及if语句的应用。(2)重点与难点
C++各运算符与常用表达式内容,及if语句的应用。
第一节 表达式 第二节 算术运算和赋值 第三节 算术类型转换 第四节 增量和减量 第五节 关系与逻辑运算 第六节 if语句 第七节 条件运算符 第八节 逗号表达式 第九节 求值次序与副作用
第四章 过程化语句 2学时(1)教学目的、要求
本章要求学生掌握switch,while, do…while, for结构的应用,了解描述算法和穷举、迭代算法。(2)重点与难点
本章的重点和难点是循环型程序设计,即switch,while, do…while, for 2 结构的应用。
第一节 while 语句 第二节 do…..while 语句 第三节 for语句 第四节 switch 语句 第五节 switch 语句 第六节 过程应用: 求兀 第七节 过程应用: 判明素数 第八节 过程应用: 求积分
第五章 函数 2学时(1)教学目的、要求
本章要求学生掌握函数的概念、定义、调用机制,和递归、内联、重载函数的概念,以及全局、局部变量。(2)重点与难点
本章的重点和难点是函数的概念、定义、调用机制,以及全局、局部变量。
第一节 函数概述 第二节 函数原型
第三节 全局变量和局部变量 第四节 函数调用机制 第五节 静态局部变量 第六节 递归函数 第七节 内联函数 第八节 重载函数 第九节 默认参数的函数
第六章 程序结构 2学时(1)教学目的、要求
本章要求学生掌握变量的存储类型,作用域,可见性,生命期等概念。(2)重点与难点
本章的重点和难点是变量的存储类型,作用域,可见性,生命期。
第一节 外部存储类型 第二节 静态存储类型 第三节 作用域 第四节 可见性 第五节 生命期 第六节 头文件 第七节 多文件结构 第八节 编译预处理
第七章 数组 2学时(1)教学目的、要求
本章要求学生掌握数组的概念、元素的访问,及数组的应用。(2)重点与难点
本章的重点和难点是数组元素的访问,及数组的应用。
第一节 数组定义 第二节 访问数组元素 第三节 初始化数组 第四节 向函数传递数组 第五节 二维数组 第六节 数组应用: 排序
第七节 数组应用: Josephus问题 第八节 数组应用: 矩阵乘法
第八章 指针 2学时(1)教学目的、要求
本章要求学生掌握指针的概念、运算,以及指针与数组和函数的应用。(2)重点与难点
本章的重点和难点是指针的运算,以及指针与数组和函数的关系及应用。
第一节 指针概念 第二节 指针运算 第三节 指针与数组 第四节 堆内存分配 第五节 const指针 第六节 指针与函数 第七节 字符指针 第八节 指针数组 第九节 命令行参数 第十节 函数指针
第九章 引用 2学时(1)教学目的、要求
本章要求学生掌握引用的概念、操作,以及引用作为函数参数的应用。(2)重点与难点
本章的重点和难点是引用的操作,以及引用作为函数参数的应用。
第一节 引用的概念 第二节 引用的操作 第三节 什么能被引用 第四节 用引用传递函数参数 第五节 返回多个值 第六节 用引用返回值 第七节 函数调用作为左值 第八节 用const限定引用 第九节 返回堆中变量的引用
第十章 结构 2学时(1)教学目的、要求
本章要求学生掌握结构体概念及其定义,结构体变量和结构体数组的引用,指向结构体变量和数组的指针。(2)重点与难点
本章的重点和难点是结构体数组的引用,指向结构体变量和数组的指针。
第一节 结构 第二节 结构与指针
第三节 结构与数组 第四节 传递结构参数 第五节 返回结构 第六节 链表结构 第七节 创建与遍历链表 第八节 删除链表结点 第九节 插入链表结点
第十节 结构应用: Josephus问题
第十一章 类 4学时(1)教学目的、要求
本章要求学生掌握类的概念、类的定义,及成员函数的调用。了解保护成员和软件方法的发展必然。(2)重点与难点
本章的重点和难点是类的概念、类的定义,及成员函数的调用。
第一节 从结构到类 第二节 软件方法的发展必然 第三节 定义成员函数 第四节 调用成员函数 第五节 保护成员 第六节 屏蔽类的内部实现 第七节 再论程序结构
第十二章 构造函数 6学时(1)教学目的、要求
本章要求学生掌握构造、析构函数的使用,以及构造类成员和构造对象的顺序。了解重载和默认构造函数的概念(2)重点与难点
本章的重点和难点是构造、析构函数的使用,以及构造类成员和构造对象的顺序。
第一节 类与对象
第二节 构造函数的需要性 第三节 构造函数的使用 第四节 析构函数
第五节 带参数的构造函数 第六节 重载构造函数 第七节 默认构造函数 第八节 类成员初始化困惑 第九节 构造类成员 第十节 构造对象的顺序
第十三章 面向对象程序设计 4学时(1)教学目的、要求
本章要求学生掌握结构化和面向对象方法的实现。了解程序效率和维护。(2)重点与难点
本章的重点和难点是结构化和面向对象方法的实现。
第一节 抽象 第二节 分类 第三节 设计和效率 第四节 讨论Josephus问题 第五节 结构化方法 第六节 结构化方法的实现 第七节 第八节 第九节
面向对象方法 面向对象方法实现 程序维护
第十四章 堆与拷贝构造函数 6学时(1)教学目的、要求
本章要求学生掌握堆的概念,堆对象,拷贝构造函数及浅拷贝与深拷贝的应用。了解临时和无名对象。(2)重点与难点
本章的重点和难点是堆的概念,堆对象,拷贝构造函数及浅拷贝与深拷贝的 7 应用。
第一节 关于堆
第二节 需要new和delete的原因 第三节 分配堆对象 第四节 拷贝构造函数 第五节 默认拷贝构造函数 第六节 浅拷贝与深拷贝 第七节 临时对象 第八节 无名对象
第九节 构造函数用于类型转换
第十五章 静态成员与友员 2学时(1)教学目的、要求
本章要求学生掌握懂得怎样声明一个静态数据成员,怎样使用静态成员函数以及静态成员函数为什么与特定对象无关。(2)重点与难点
本章的重点和难点是静态数据成员和静态成员函数的使用,以及友元的概念。
第一节 静态成员的需要性 第二节 静态成员的使用 第三节 静态数据成员 第四节 静态成员函数 第五节 需要友员的原因 第六节 友员的使用
第十六章 继承 8学时(1)教学目的、要求
本章要求学生掌握继承的概念,工作方式,以及多态性和虚函数的概念。了解抽象类和类的冗余。(2)重点与难点
本章的重点和难点是继承的概念,工作方式,以及多态性和虚函数的概念。
第一节 继承的概念 第二节 继承的工作方式 第三节 派生类的构造 第四节 继承与组合 第五节 多态性
第六节 多态的思考方式 第七节 多态性如何工作 第八节 不恰当的虚函数 第九节 虚函数的限制 第十节 类的冗余
第十一节 克服冗余带来的问题 第十二节 类的分解 第十三节 抽象类
第十四节 由抽象类派生具体类 第十五节 纯虚函数的需要性
第十七章 多重继承 6学时(1)教学目的、要求
本章要求学生掌握多继承的概念,工作方式以及多继承的构造顺序和访问控制。了解虚拟继承、保护和私有继承。(2)重点与难点
本章的重点和难点是多继承的概念,工作方式以及多继承的构造顺序和访问控制。
第一节 多继承如何工作 第二节 继承的模糊性 第三节 虚拟继承
第四节 多继承的构造顺序 第五节 继承的访问控制 第六节 保护继承与私有继承
第十八章 运算符重载 4学时(1)教学目的、要求 本章要求学生掌握运算符重载的需要性和应用。了解增量运算符的重载。(2)重点与难点
本章的重点和难点是运算符重载的需要性和应用。
第一节 运算符重载的需要性 第二节 如何重载运算符 第三节 值返回与引用返回 第四节 运算符作成员函数 第五节 重载增量运算符 第六节 转换运算符 第七节 赋值运算符
四、主要教科书和参考书
1、《C++程序设计教程》
2、《C++程序设计题解与上机指导》
3、《C++语言程序设计》
4、《C++语言与面向对象程序设计》
5、《C++语言程序设计》
钱能 钱能
潭浩强 郑莉
吕凤翥清华大学出版社
清华大学出版社 清华大学出版社 清华大学出版社
清华大学出版社
责任撰写人:陈桂芬
第四篇:《面向对象程序设计方法》实验教学大纲
《面向对象程序设计方法》实验教学大纲
(计算机科学与技术本科专业使用)
一、教学目标
通过该实验课,学生应在熟练掌握过程化程序设计方法的基础上,领会面向对象程序设计及类的封装、数据隐藏、继承及多态等特性,逐步掌握面向对象程序设计方法,培养一定的程序设计能力,为以后各专业课程的学习打下良好的程序设计基础。
二、实验教学时数
三、实验内容
实验一 图形打印
1、实验目的:练习for循环
2、实验技能培训内容:打印几种特殊图形,如菱形和Z字形
3、主要仪器:计算机
4、实验方法:上机编程
实验二 判素数
1、实验目的:练习函数
2、实验技能培训内容:判断101-200之间有多少个素数,并输出所有素数。
3、主要仪器:计算机
4、实验方法:上机编程
实验三 递归函数练习
1、实验目的:练习递归函数
2、实验技能培训内容:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 兔子的规律为数列1,1,2,3,5,8,13,21....3、主要仪器:计算机
4、实验方法:上机编程
实验四 数列排序
1、实验目的:练习数组及几种基本排序方法
2、实验技能培训内容:用选择、插入、冒泡、快速等几种基本的排序方法对数列进行排序。
3、主要仪器:计算机
4、实验方法:上机编程
实验五 矩阵乘积
1、实验目的:练习数组
20学时
2、实验技能培训内容:用数组存储两个矩阵,求两个矩阵的乘积。
3、主要仪器:计算机
4、实验方法:上机编程
实验六 设计时间日期类
1、实验目的:掌握简单类的设计方法
2、实验技能培训内容:构造一个TimeDate类,类中包含一个成员函数,用来在屏幕上显示时间与日期(采用建立在标准库time.h中的标准时间与日期来寻找与显示日期)。
3、主要仪器:计算机
4、实验方法:上机编程
实验七 设计计时类
1、实验目的:掌握简单类的设计方法
2、实验技能培训内容:建立Watch类,用来仿效秒表跟踪消逝的时间。用构造函数将消逝时间的初值置为零。提供两个成员函数Start()与Stop(),分别打开与关闭计时器。
3、主要仪器:计算机
4、实验方法:上机编程
实验八 设计字符栈类
1、实验目的:掌握简单类的设计方法
2、实验技能培训内容:用Stack类,写一个函数LoadStack(),用来返回已经将字母表(a-z)入栈的堆栈。在调用函数中,将这个堆栈赋值给另一个对象,并证明它包含字母表。可以改变堆栈的尺寸,以便它大得足以支持字母表。
3、主要仪器:计算机
4、实验方法:上机编程
实验九 友元的使用方法
1、实验目的:掌握友元的使用方法
2、实验技能培训内容:求两数的平方差(友元函数说明)
3、主要仪器:计算机
4、实验方法:上机编程
实验十 访问权限
1、实验目的:掌握类成员的各种访问权限
2、实验技能培训内容:类成员的各种访问权限
3、主要仪器:计算机
4、实验方法:上机编程
实验十一 类的派生
1、实验目的: 掌握类的派生
2、实验技能培训内容:给出基类AreaClass(形状类),建立两个派生类Box(方形类)与Isosceles(等腰三角形类),让每个派生类包含一个函数Area(),分别用来返回方形与等腰三角形的面积。
3、主要仪器:计算机
4、实验方法:上机编程
实验十二 用类方法求解一元二次方程
1、实验目的: 掌握类的派生
2、实验技能培训内容:实现一个Complex类和一个Real类。将Real类定义为Complex类的子类。然后设计一个求解一元二次实系数方程的根的类Root。
3、主要仪器:计算机
4、实验方法:上机编程
实验十三 类继承中的构造
1、实验目的: 掌握类继承中的构造
2、实验技能培训内容:类继承中的构造方法
3、主要仪器:计算机
4、实验方法:上机编程
实验十四 类继承中的构造
1、实验目的: 掌握类继承中的构造
2、实验技能培训内容:类继承中的构造方法
3、主要仪器:计算机
4、实验方法:上机编程
实验十五 大学生类
1、实验目的: 掌握虚函数的使用
2、实验技能培训内容:设计一个大学的类系统,包括Student(学生),Professor(教师),Staff(职员)。另有一个类既作为学生又兼作助教的可作为派生类StudentStaff,它是由Student类和Staff类派生而来,另外定义一个父类DataRec作为上述类(子类)的基类。
3、主要仪器:计算机
4、实验方法:上机编程
责任撰写人:陈桂芬
第五篇:《C程序设计》教学大纲
《C程序设计》教学大纲
一、课程的性质和任务
本课程为计算数学专业本科生的必修课。通过对C程序设计的基本知识、基本概念、基本技能的学习和训练,使学生掌握C语言的语法规则、开发环境以及程序设计的基本方法和技能。培养学生利用C语言进行程序设计的基本能力,并为后续专业课的学习以及在可视化环境下进行面向对象的编程打下扎实的基础。
二、课程教学与基本要求
重点介绍C语言的基本知识(如基本数据类型、表达式、数组、函数、宏定义、指针、结构和文件)和程序设计的基本方法(即:结构化程序设计方法以及顺序、选择、循环、模块等结构的程序设计方法),还介绍指针、文件等在程序设计中的应用。
三、适应专业
计算数学、基础数学、经济管理专业本科学生。
四、预修课程
计算机基础知识。
五、学时
总学时:98学时 讲授学时:68学时 实验学时:32学时
学分:4 第一、二章 C简介、算法 8学时
第三章 数据类型、运算符、表达式 6学时
第四章 顺序结构程序设计 4学时
第五章 选择结构程序设计 4学时
第六章 循环结构程序设计 6学时
第七章 数组 8学时
第八章 函数 6学时
第九章 编译预处理 3学时
第十章 指针 12学时
第十一章 结构体与共用体 5学时
第十二章 位运算 2学时
第十三章 文件 4学时
六、讲授内容
1.C语言的特点、简单的C程序介绍、C语言的编译环境
2.算法的概念、特性,三种基本结构、用传统流程图和N-S流程图表示算法。3.C的数据类型(整型、实型、字符型等),运算符和表达式。4.数据的输入和输出(printf()和scanf()函数等)、顺序结构程序设计。
5.选择结构程序设计:关系运算符和关系表达式、逻辑运算符和逻辑表达式、if语句和switch语句。
6.循环结构程序设计:用goto语句和if语句构成循环、用while语句、do-while语句、for语句构成循环以及break语句和continue语句。
7.数组的定义和使用(包括一维数组、二维数组和字符数组)。
8.函数的定义和调用,函数的嵌套调用、递归调用;局部变量与全局变量、变量的动态存储和静态存储;内部函数与外部函数。
9.预处理命令:宏定义、文件包含、条件编译。
10.指针变量的定义和使用;数组的指针和指向数组的指针变量、字符串的指针和指向字符串的指针变量、函数的指针和指向函数的指针变量;指针型函数和指针数组。
11.结构体与共用体变量的定义和使用,结构体数组和指向结构体数据的指针,枚举类型。12.位运算符和位运算,位段。13.文件的打开、关闭与读写。
七、实验内容和学时分配(34学时)1.熟悉C语言的编译环境(2学时)
2.C的数据类型(整型、实型、字符型等),运算符和表达式。(2学时)3.数据的输入和输出(printf()和scanf()函数等)、顺序结构程序设计(3学时)。
4.选择结构程序设计:关系运算符和关系表达式、逻辑运算符和逻辑表达式、if语句和switch语句。(3学时)
5.循环结构程序设计:用goto语句和if语句构成循环、用while语句、do-while语句、for语句构成循环以及break语句和continue语句。(3学时)6.数组的定义和使用(包括一维数组、二维数组和字符数组)。(3学时)
7.函数的定义和调用,函数的嵌套调用、递归调用;局部变量与全局变量、变量的动态存储和静态存储;内部函数与外部函数。(3学时)8.预处理命令:宏定义、文件包含、条件编译。(2学时)
9.指针变量的定义和使用;数组的指针和指向数组的指针变量、字符串的指针和指向字符串的指针变量、函数的指针和指向函数的指针变量;指针型函数和指针数组。(7学时)10.结构体与共用体变量的定义和使用,结构体数组和指向结构体数据的指针,枚举类型。(2学时)11.位运算符和位运算,位段。(2学时)12.文件的打开、关闭与读写。(2学时)
八、教材与参考书
教材:谭浩强, 《C程序设计》(第二版),清华大学出版社,1999年 参考书:谭浩强, 《C程序设计题解与上机指导》,清华大学出版社,2000年