- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2011级专升本VC程序设计实验指导书
VC程序设计
实验指导书
授课教师:祁文青
适用专业:计算机科学与技术
使用班级:11专升本
授课时间:2012年春季
授课学时:54/36/18学时
使用教材:Visual C++ 程序设计 陈志泊 张海燕、王春玲编著 中国铁道出版社,2005
实验指导书:Visual C++ 程序设计 陈志泊 张海燕、王春玲编著 中国铁道出版社,2005
实验1 面向对象程序设计
实验目的
熟悉VC++上机环境,编程实现类的定义,掌握C++面向对象基本特性,如抽象、继承、重载、多态,理解虚函数、构造函数、析构、模板等基本概念与基本语法。体会面向对象语言提高代码重用性的思路。
实验内容
熟悉Visual C++ 6.0的安装、启动和关闭方法,了解Visual C++ 6.0的集成开发环境窗口,掌握主要菜单、菜单项、图标、工具栏及各种编辑器的使用。
熟悉Visual C++ 6.0的向导类型,掌握利用控制台类型进行C++程序设计的步骤;
定义点类Point,给出类的成员属性及构造函数、析构函数及普通方法的定义,利用定义的类定义对象,并对对象的属性进行访问。
从Point类派生出圆类Circle,并增加一个方法求圆的面积。
设计一个实现数组功能的类模版Array,并用这个类模版产生两个模版类对象IntAry和StuAry,用这两个对象保存5个整数和5名学生的信息。
实验步骤
安装Visual C++ 6.0;
多种方式启动Visual C++ 6.0;
创建控制台项目,进入C++代码编辑器窗口
熟悉各工具栏中相关图标的名称、功能、快捷键等以及对应的菜单项目;
熟悉Visual C++ 6.0的集成开发环境窗口,了解各窗口的作用;
定义点类Point,实现Point类中的成员函数。代码如下:
class Point
{
public:
Point(int px = 0,int py = 0);//构造函数
~Point(); //析构函数
Point(Point p); //拷贝构造函数
void SetPoint(int px,int py); //设置点的坐标值
int GetX(); //获得该点的X坐标
int GetY(); //获得改点的Y坐标
private:
int x;
int y;
};
Point::Point(int px,int py)
{
x = px;
y = py;
}
Point::~Point()
{
}
Point::Point(Point p)
{
x = p.x;
y = p.y;
}
void Point::SetPoint(int px,int py)
{
x = px;
y = py;
}
int Point::GetX()
{
return x;
}
int Point::GetY()
{
return y;
}
测试Point类:
int main(int argc, char* argv[])
{
Point p1;
p1.SetPoint(5,10);
Point p2(p1);
Point p3(5,10);
coutp1的值是:p1.GetX()----p1.GetY()endl;
coutp2的值是:p2.GetX()----p2.GetY()endl;
coutp3的值是:p3.GetX()----p3.GetY()endl;
return 0;
}
声明派生类Circle,增加一个数据成员:半径R,一个成员函数:求面积GetArea()。代码如下:
#define G_PI 3.14159265358
class Circle : public Point
{
public:
Circle(int px,int py,int pr):Point(px,py),PI(G_PI){r = pr;}
Circle(Point p,int pr):Point(p),PI(G_PI){r = pr;}
double GetArea()
{
return PI * (double)r * (double)r;
}
private:
int r;
protected:
const double PI;
};
测试Circle类:
int main(int argc, char* argv[])
{
Point p(5,10);
Circle c1(5,10,3);
coutc1的圆心是:c1.GetX()----c1.GetY(),c1的面积是:c1.GetArea()endl;
Circle c2(p,3);
coutc2的圆心是:c
您可能关注的文档
- 2011松溪县科目四C1小型手动档汽车仿真试题.doc
- 2011松溪县驾校模拟考试C1小型手动档汽车仿真试题.doc
- 2011松溪县考试技巧重点客车试题.doc
- 2011松溪县驾校理论考试C1小型手动档汽车试题.doc
- 2011松溪县驾驶考试C1车型试题.doc
- 2011松溪县驾驶考试C1小型手动档汽车试题.doc
- 2011桐乡市疾病预防控制中心三基考试题.doc
- 2011松溪县驾驶证理论考试C1车型试题.doc
- 2011款英朗GT提车注意事项.doc
- 2011永州中考语文试题.doc
- 计及电动汽车移动储能动态电价的微电网优化调度研究及解决方案.pdf
- 浅谈电动汽车充电桩绝缘智能化自检装置的设计与应用 .pdf
- 浅谈电动汽车公共充电桩布局方案评价方法.pdf
- 浅谈基于弹性响应的电动汽车快充电价定价策略 汽车充电桩有序充电.pdf
- 浅谈光储充一体化社区的有序充电策略及解决方案.pdf
- 晚期肾透明细胞癌系统性治疗中国专家共识(2024版).pptx
- 中国膀胱癌保膀胱治疗多学科诊治协作共识(2022版).pptx
- 成人心血管外科手术体外循环患者血液管理指南.pptx
- 下尿路修复重建移植物应用规范中国专家共识.pptx
- 中国儿童急性非静脉曲张性上消化道出血诊治指南(2024).pptx
文档评论(0)