面向对象程序设计实验教学大纲.doc

上传人:壹****1 文档编号:563194744 上传时间:2024-02-13 格式:DOC 页数:33 大小:577.51KB
返回 下载 相关 举报
面向对象程序设计实验教学大纲.doc_第1页
第1页 / 共33页
面向对象程序设计实验教学大纲.doc_第2页
第2页 / 共33页
面向对象程序设计实验教学大纲.doc_第3页
第3页 / 共33页
面向对象程序设计实验教学大纲.doc_第4页
第4页 / 共33页
面向对象程序设计实验教学大纲.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《面向对象程序设计实验教学大纲.doc》由会员分享,可在线阅读,更多相关《面向对象程序设计实验教学大纲.doc(33页珍藏版)》请在金锄头文库上搜索。

1、面向对象程序设计实验教学大纲课程总学时:64 学分:4 实验学时:16 实验个数: 6个 实验学分:1分课程性质:专业必修课 适用专业:计算机类专业教材及参考书:C+语言程序设计(第四版),郑莉、董渊编著,北京:清华大学出版社,2011大纲执笔人: 大纲审定人:一、实验课的性质与任务本课程实验大纲是面向计算机专业学生开设的C+程序设计实验课计划指导大纲,是依据面向对象程序设计课程教学计划指导大纲编制。本课程主要讲述了利用C+进行程序设计的思想和方法,既有面向过程和面向对象的程序设计的理论知识,又包括极强的实践应用能力的培养。本实验大纲力求结合该课程教学计划大纲的相应内容,由浅入深的指导学生了解

2、和掌握如何利用C+程序设计语言进行程序设计,提高学生的动手能力,做到理论和实践相结合,培养学生理解,分析程序,编写,调试程序的能力,使之能把程序设计应用到今后的专业学习中。二、实验目的与要求1实验目的通过本课程的学习,使学生掌握面向过程的程序设计思想和编程思路,初步掌握面向对象的程序设计思想,学会调试程序,能独立编写实用的小型程序。2实验要求(1) 学生应该自始至终贯彻课程中所介绍的程序设计风格,养成良好的编程习惯;(2) 应独立完成所布置习题。为保证尽量在统一安排的上机时间内编译运行通过程序,学生应事先设计好程序。三、实验项目及内容提要面向对象程序设计实验课程 (071016)序号实验编号实

3、验名称学时必做选做学分数实验类型内容提要 基本操作验证综合设计11类与对象4函数重载,类的设计与使用22C+程序的结构2作用域与生存期,静态成员33数组、指针与字符串4三种常见编程元素的使用44继承与派生2派生类的设计与使用55多态性2运算符重载、动态多态66模板和文件2模板,异常处理机制的设计四、实验内容安排:实验一 类与对象( 设计性实验 4学时)1. 目的要求:1) 掌握类的定义和使用;掌握类对象的声明;练习具有不同访问属性的成员的访问方式;观察构造函数和析构函数的执行过程;2) 学习类组合使用方法;3) 使用VC+的debug调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函

4、数的执行顺序。2. 实验内容:1) 编写重载函数Max1可分别求取两个整数,三个整数,两个双精度数,三个双精度数的最大值。#include using namespace std;int Max1(int a,int b)/两个整形求最大值 int c; c=(ab)?a:b; coutcb)?a:b; coutcb)?(ac)?a:c):(bc)?b:c); coutdendl; coutnb)?(ac)?a:c):(bc)?b:c); coutdendl; coutnendl; return d;void main() int a=1,b=8,c=12; double a1=4.2,b1=

5、1.8,c1=6.7; cout原数为:nendl; couta=a b=b c=cendl; coutnendl; couta1=a1 b1=b1 c1=c1endl; coutnendl; cout(a,b)两个整形求最大值endl; Max1(a,b); coutnendl; cout(a,b,c)三个整形求最大值endl; Max1(a,b,c); cout(a1,b1)两个双精度数求最大值endl; Max1(a1,b1); coutnendl; cout(a1,b1,c1)三个双精度数求最大值endl; Max1(a1,b1,c1);2) 写一个函数,具有一个引用作为形参参数,在函

6、数中改变引用变量的值,观察实参变量的变化。#includeusing namespace std;swap(int &x);void main()int a; coutplease input a number: a=; scanf(%d,&a); swap(a); coutnow: ; couta=aendl;swap(int &x) coutplease input a number: x=; scanf(%d,&x); return x;3) 定义一个CPU类,包含等级(Rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。其中,ran

7、k为枚举类型CPU_Rank,定义为enum CPU_RankP1=1,P2,P3,P4,P5,P6,P7,frequency为单位是MHz的整型数,voltage为浮点型的电压值。观察构造函数和析构函数的调用顺序。第一种:#includeusing namespace std;class CPU public:int run();int stop();CPU(int frequency1,float voltage1)coutbuild!endl; frequency=frequency1; voltage=voltage1; coutfrequency= frequency MHzendl

8、; coutvoltage= voltageendl;CPU()coutdestory!endl; private: int frequency; float voltage;enum CPU_RankP1=1,P2,P3,P4,P5,P6,P7;void main() CPU a(3500,30);第二种:#includeusing namespace std;class CPU public:int run();int stop();CPU( int frequency1,float voltage1):frequency(frequency1),voltage(voltage1)cout

9、build!endl;coutfrequency= frequency MHzendl; coutvoltage= voltageendl;CPU()coutdestory!endl; private: int frequency; float voltage;enum CPU_RankP1=1,P2,P3,P4,P5,P6,P7;void main()int frequency; float voltage; coutfrequency; coutvoltage; CPU a(frequency,voltage);4) 定义一个简单的Computer类,有数据成员芯片(cpu)、内存(ram

10、)、光驱(cdrom)等等,有两个公有成员函数run、stop。cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,定义并实现这个类,为以上的类编写构造和析构函数,观察组合类和内嵌类的构造函数和析构函数的调用顺序。#includeusing namespace std;class CPUpublic:CPU() coutcpu build!endl;CPU() coutcpu destory!endl;class RAMpublic:RAM() coutram build!endl;RAM() coutram destory!endl;class CDR

11、OMpublic:CDROM() coutcdrom build!endl;CDROM() coutcdrom destory!endl;class Computerprivate:CPU cpu;RAM ram;CDROM cdrom;public:Computer() coutComputer build!endl; Computer() coutComputer destory!endl; ;int main() Computer A;5) 为题目2)的类编写复制构造函数,在主函数中利用复制构造的方式创建新的对象,观察对象的状态。#includeusing namespace std;class A int a;public:A(int a1=0) a=a1;A(A &p);int getA()

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号