C++面向对象程序设计_第1页
C++面向对象程序设计_第2页
C++面向对象程序设计_第3页
C++面向对象程序设计_第4页
C++面向对象程序设计_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上实验名称:C+面向对象程序设计姓名:班级:学号:第一题1.用扩充的结构体类型(struct)求复数的绝对值:#include /编译预处理命令#includeusing namespace std; /使用命令空间stdstruct Complex /声明了一个名为Complex的结构体(struct)类型double real; /数据成员,复数的实部double imag; /数据成员,复数的虚部void init(double r,double i) /成员函数,給real和imag赋初值real=r;imag=i;double abscomplex() /成员

2、函数,求复数的绝对值double t;t=real*real+imag*imag;return sqrt(t);int main()Complex A; /定义结构体Complex的变量AA.init(1.1,2.2); /调用成员函数init,给real和imag赋初值cout复数的绝对值是:A.abscomplex()endl; /调用成员函数abscomplexreturn 0;2.用类类型(class)替代上面的结构体类型(struct):#include /编译预处理命令#includeusing namespace std; /使用命令空间stdstruct Complex /声明

3、了一个名为Complex的结构体(struct)类型double real; /数据成员,复数的实部double imag; /数据成员,复数的虚部void init(double r,double i) /成员函数,給real和imag赋初值real=r;imag=i;double abscomplex() /成员函数,求复数的绝对值double t;t=real*real+imag*imag;return sqrt(t);int main()Complex A; /定义类Complex的对象AA.init(1.1,2.2); /错误编译 cout复数的绝对值是:A.abscomplex()

4、endl; /错误编译return 0;3.含有公有成员和私有成员的Complex的类:#include /编译预处理命令#includeusing namespace std; /使用命令空间stdclass Complex /声明了一个名为Complex的类private: /声明以下部分为私有的double real; /私有数据成员,复数的实部double imag; /私有数据成员,复数的虚部public: /声明以下部分为公有的void init(double r,double i) /公有成员函数,給real和imag赋初值real=r;imag=i;double abscomp

5、lex() /公有成员函数,求复数的绝对值double t;t=real*real+imag*imag;return sqrt(t);int main()Complex A; /定义类Complex的对象AA.init(1.1,2.2); /类外的对象A可以访问公有成员函数initcout复数的绝对值是:A.abscomplex()endl; /类外的对象A可以访问公有函数abscomplexreturn 0;(1) 什么是类?什么是对象?(2) Struct和class的 不同是什么?(3) 私有和公有的不同?为什么一般情况下,数据部分都是私有的?答(1):类是面向对象程序设计的最基本的概念

6、,是C+最强有力的特征,是进行封装和数据隐藏的工具,它将数据与操作紧密地结合起来。它是用户定义的抽象的数据类型,代表了一批对象的共性和特性。对象是类的实例,面向对象程序设计中的对象来源于现实世界,更接近人的思维。答(2):(一)默认继承权限。如果不明确指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理;(二)成员的默认访问权限。class的成员默认是private权限,struct默认是public权限。答(3):public可以将类的成员说明为是公有的,及可以被该类的所有成员所访问:private可以将类的成员说明为是私有的,它不能直接被对象

7、访问。公有,意味着任何人都可以访问, 包括类内的, 类外的, 继承的,不继承的,而私有, 则表示出了类(或对象)自己本身,其他任何地方都无法访问。C+规定,在默认情况下(既没有指定属于私有或公有时),类中的成员是私有的。所以一般情况下,数据部分是私有的。第二题.编程实现一个student的类,包含你认为的一个学生应该包含的主要信息(不超过5项),同时:(1) 用一个类成员input来输入一个学生所需数据信息;(2) 用一个类成员函数output来输出student的数据信息;(3) 如果一个班级有不超过50个学生,如何使用stduent类来表示和使用这个学生数组? #include /编译预处

8、命令using namespace std; /使用命令空间stdclass student /声明一个名为student的类 private: /声明以下部分为私有的 char a3100; /定义数组 public: /声明一下部分为公有的 void input() /公有成员函数 int i; for(i=0;i3;i+) if(i=0) coutInput name:; /输出学生姓名 if(i=1) coutInput id number:; /输出学生ID if(i=2) coutai; coutendl; void output() int i; for(i=0;i3;i+) if(i=0) coutStudents name is:; if(i=1) coutStudents id number is:; if(i=2) coutStudents student nu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论