《C++程序设计》教案
蔡勇智 讲师
授课时间:2010年3月 ——2010年 7月 课程性质:专业必修课 课程类别:讲授课+实训课 授课对象:08级电子商务专业 课 时 数:周4
教学目的:通过本课程的学习,使学生理解面向对象程序设计思想,掌握面向对象程序设计的基本概念和技术。使学生深刻理解面向对象技术所带来的观念改革,掌握一种面向对象程序设计语言和面向对象设计的思维方式、规则与基本方法,了解面向对象程序设计技术的发展趋势。通过面向对象思维的训练,使学生逐渐掌握现代编程能力,为今后的软件开发和各种信息处理打下良好的基础。 教学方法:
本课程以以下两种教学方法为主:
1.理论课堂教学使用多媒体辅助教学手段,并采用可视化的编程工具用于课程学习和编程。
2.实验教学结合理论教学实际情况,布置合适比例的概念理解题和综合设计题,使学生在掌握面向对象概念、巩固知识的同时,提高综合设计和处理实际问题的能力。
教学内容:
第一章 面向对象程序设计概述
第二章 C++程序设计基础 第三章 函数 第四章 数组
第五章 结构体与共用体 第六章 指针与引用
教学重难点:重难点在于采用面向对象的观点分析问题、解决问题,以及培养学生结合实际应用,采用面向对象的思想设计有效的算法和可视化编程实现能力。
考核方式:平时考勤、作业占30%,期末考试占70%。 使用教材:《C++程序设计》邓振杰 主编
第1章 C++概述
本章课时:
4课时
本章重点: c++的基本结构 C++的上机实现 本章难点: C++的上机实现 教学内容及教学目标:
了解:
1.传统程序设计与面向对象程序设计的区别 2.C++的发展
3.面向对象程序设计语言 理解:
1.面向对象程序设计的特点 2.熟悉VC++6.0集成开发环境 掌握:
1.C++的特点
2.C++程序结构和书写规则
第一节 面向对象程序设计
基本概念: 1. 对象
在面向对象程序设计中,对象是由对象名、一组属性数据和一组操作封装在一起构成的实体。其中属性数据是对象固有特征的描述,操作是对这些属性数据施加的动态行为,是一系列的实现步骤,通常称之为方法。 2. 类
在面向对象程序设计中,类是具有相同属性数据和操作的对象的集合,它是对一类对象的抽象描述。类是创建对象的模板,它包含着所创建对象的状态描述和方法的定义,一般是先声明类,再由类创建其对象。按照这个模板创建的一个个具体的实例,就是对象。 3. 属性
对象中的数据称为对象的属性,而类中的特性称为类的属性,不同的类和对象具有不同的属性。 4. 消息
在面向对象程序设计中,当要求一个对象做某一操作时,就向该对象发出请求,通常称为“消息”。当对象接收到消息时,就调用有关方法,执行相应操作。这种对象与对象之间通过消息进行相互联系的机制,就叫做消息传递机制,通过消息传递可实现对象的交互。 5. 方法
方法就是对象所能执行的操作。方法包括接口和方法体两部分。方法的接口就是消息的模式,它告诉用户如何调用该方法;方法体则是实现操作的一系列步骤,也就是一段程序代码。
传统程序设计及其局限性:
1. 传统程序设计开发软件的生产效率低下
2. 传统程序设计难以应付庞大的信息量和多样的信息类型 3. 传统程序设计难以适应各种新环境 面向对象程序设计的特点: 1.封装性
封装是一种数据隐藏技术,在面向对象程序设计中可以把数据和与数据有关的操作集中在一起形成类,将类的一部分属性和操作隐藏起来,不让用户访问,另一部分作为类的外部接口,用户可以访问。 2. 继承性
在面向对象程序设计中,继承是指新建的类从已有的类那里获得已有的属性和操作。已有的类称为基类或父类,继承基类而产生的新建类称为基类的子类或派生类。 3. 多态性
多态性是指相同的函数名可以有多个不同的函数体,即一个函数名可以对应多个不同的实现部分。在调用同一函数时,由于环境的不同,可能引发不同的行为,导致不同的动作,这种功能称为多态。它使得类中具有相似功能的不同函数可以使用同一个函数名。
第二节 C++的发展
1980年,美国AT&T公司贝尔实验室的Bjarne Stioustrup博士为了仿真课题研究,编写了称为“带类的C”语言版本。1983年7月用C++将该语言名字定下来,并对外公开发表。 Microsoft公司于20世纪80年代中期在Microsoft C 6.0的基础上开发了Microsoft C/C++ 7.0,同时引进了Microsoft Foundation Class(MFC)1.0版本,完善了源代码。后来Microsoft公司推出了Microsoft C/C++ 8.0,即Visual C++ 1.0版本,之后又推出了 Visual C++ 2.0和Visual C++ 4.0版本。
伴随Windows 98操作系统的发布,Microsoft公司又隆重推出了Visual C++ 6.0 C++的特点:
C++全面兼容C语言,许多C语言代码不经修改就可以在C++中使用。 用C++编写的程序可读性更好,代码结构更为合理。 生成代码质量高,运行效率仅比汇编语言慢10%~20%。 从开发时间、费用到形成软件的可重用性、可扩充性、可维护性和可靠性等方面有很大提高,使得大中型软件开发变得容易很多。
支持面向对象程序设计,可方便地构造出模拟现实问题的实体和操作。
第三节 c++程序的基本结构
【例1.1】一个简单的C++程序。 # include
// 在显示器上输出显示一行字符串 cout<<\
}
//函数定义 void sayhello() { cout<<\}
1.头文件
在C++程序开始部分出现以#开头的命令,表示这些命令是预处理命令,称作预处理器。C++提供了3类预处理命令:宏定义命令、文件包含命令和条件编译命令 C++语言包含头文件的格式有两种:#include<文件名.扩展名> #include\文件名.扩展名\2. 函数
C++的程序是由若干个文件组成,每个文件又由若干个函数组成。函数之间 是相互独立的,相互之间可以调用。但函数在调用之前,必须先定义。
C++的程序中的函数可分为两大类,一类是用户自己定义的函数,另一类是 系统提供的标准函数。使用系统提供的标准函数时,可以直接调用,但需要将 该函数的头文件包含在该程序中。 3. 主函数
在组成C++程序的若干个函数中,必须有一个且只能有一个主函数main()。 执行程序时,系统先从主函数开始运行,其他函数只能被主函数调用或通过主 函数调用的函数所调用,函数可以嵌套调用。 4. 注释
第一种注释方法是以“/*”开始,以“*/”结束,二者之间的所有字符都会被作为注释处理,此时的注释可以是一行,也可以是多行,适合于大块的注释。
第二种注释方法是以“//”表示注释开始,本行中“//”后面的字符都会被作为注释处理,这种注释方式多用于较短的程序注释。 5. 输入/输出
输入/输出语句是C++最基本的语句。
综上所述,一个C++程序的基本结构应该包括以“#”开头的若干个预处理命令,将程序所需要的头文件包含进来;然后定义主函数和其他函数,当然函数也可以在程序的起始部分先利用函数要包括各种语句和注释,这部分是程序的主体部分,所占比重也最大。 C++程序的书写格式:
C++程序的书写格式与C程序书写格式基本相同。原则如下:
⑴一般情况下一行只写一条语句。短语句可以一行写多条,长语句也可以分成多行来写。分行原则是不能将一个单词分开,用双引号括起来的字符串最好也不要分开。
⑵C++程序书写时要尽量提高可读性。为此,采用适当地缩进格式书写程序是非常必要的,表示同一类内容或同一层次的语句要对齐。
⑶C++程序中大括号{ }使用较多,其书写方法也较多,建议用户要养成使用大括号{ }的固定风格。例如,每个大括号占一行,并与使用大括号的语句对齐,大括号内的语句采用缩进两个字符的格式书写。
第四节 Visual C++ 6.0集成开发环境
Visual C++ 6.0是微软公司开发的可视化的C++集成开发环境。它集程序代码的编辑、编译、连接、调试等功能为一体,界面友好,用户操作方便。