当前位置:首页 >> 其它课程 >>

华科C++第七次上机作业


第七次上机作业 1、 范例:设计并测试一个矩形类(Rectangle) 。属性为矩形的左下角与右上角的坐标,矩 形水平放置。操作为计算矩形的周长和面积。 2、 #include<cmath> 3、 #include<iostream> 4、 using namespace std; 5、 class Rectangle{ 6、 double left, t

op; 7、 double right, bottom; 8、 public: 9、 Rectangle(double l=0,double t=0,double r=0,double b=0); 10、 ~Rectangle(){}; 11、 void Assign(double l,doublet,doubler,double b); 12、 void Show(); 13、 double Area(); 14、 double Perimeter();}; 15、 Rectangle:: Rectangle(double l ,double t, double r, double b){ 16、 left=l ;top =t; 17、 right=r; bottom=b;} 18、 void Rectangle::Assign(double l,doublet,doubler,double b){ 19、 left=l ;top =t; 20、 right=r; bottom=b;} 21、 void Rectangle::Show(){ 22、 cout<< "left-top point is("<<left<<","<<top<<")"<<"\n"; 23、 cout<<"right-bottom point is("<<right<<","<<bottom<<")"<<endl;} 24、 double Rectangle::Area(){ 25、 return fabs((right-left)*fabs(bottom-top)); 26、 } 27、 double Rectangle::Perimeter(){ 28、 return 2*(fabs(right-left)+fabs(bottom-top)); 29、 } 30、 int main(){ 31、 Rectangle rect; 32、 rect.Show(); 33、 rect.Assign(100,200,300,400); 34、 rect.Show(); 35、 Rectangle rect1(0,0,200,200); 36、 rect1.Show(); 37、 rect1.Assign(100,200,300,400); 38、 rect1.Show(); 39、 cout<<"?? ??"<<rect.Area()<<'\t'<<"? ? ?¤"<<rect.Perimeter()<<endl; 40、 cout<<"?? ??"<<rect1.Area()<<'\t'<<"? ? ?¤"<<rect1.Perimeter()<<endl; 41、 return 0;}

42、 (1)将 Rectangle(double l=0, double t=0, double r=0, double b=0); 改为 Rectangle(double l, double t, double r, double b); 程序仍能正确运行吗?为什么? 答:无法正确运行,因为数据成员没有初值。 (2)注意成员函数 void Show( )、double Area () 、double Perimeter( )的使用,因为在第三章 如果需编写类似功能的一般函数是需要带参数(形参)的。 而在此处作为类的成员函数又不需要带参数。思考为什么? 答:构造函数是隐式调用的 (3) 理解 void Assign(double l,doublet,doubler,double b);函数的作用。 将 Rectangle(double l=0, double t=0, double r=0, double b=0); 改为 Rectangle(double l, double t, double r, double b);这时, 有人认为 Rectangle(double l, double t, double r, double b) 和 void Assign(double l,double t, double r,double b)的功能相同,那么 Assign 函数能否去掉呢?请试一试,结果会怎样? 答:不能,结果无法运行。 2、定义一个圆类(Circle) ,要求用两种方法定义: 方法一:要求属性为半径,操作为计算圆的周长和面积。 #include <iostream> #include <cmath> using namespace std; const double PI=3.14; class Circle{ private: double Radius; public : Circle(double r=0); ~Circle(){}; void Assign(double r); doublezc();

doublemj(); }; Circle::Circle(double r){ Radius=r;} void Circle::Assign( double r){ Radius=r;} double Circle::zc(){ return (PI*Radius*2); } double Circle::mj(){ return (PI*Radius*Radius);} int main (){ Circle yuan; yuan.Assign(13.45); cout<<"周长"<<yuan.zc()<<endl; cout<<"面积"<<yuan.mj()<<endl; return 0; }

方法二:要求属性为半径(radius) 、圆周长和面积,操作为输入半径,并计算周长、面积, 输出半径、周长和面积。要求定义构造函数(以半径为参数,缺省值为 0,周长和面积在构 造函数中生成)和拷贝构造函数。


相关文章:
华科C++第七次上机作业
华科C++第七次上机作业_韩语学习_外语学习_教育专区。华科C++第七次上机作业 第七次上机作业 1、范例:设计并测试一个矩形类(Rectangle) 。属性为矩形的左下角与右...
华科C++第四次上机作业
华科C++第四次上机作业_工学_高等教育_教育专区。第四次上机作业 实验五 1、 范例:由 0 到 4 五个数字,组成 5 位数,每个数字用一次,但十位和百位不能为 ...
华科C++第一次上机作业
华科C++第一次上机作业_IT认证_资格考试/认证_教育专区 暂无评价|0人阅读|0次下载|举报文档华科C++第一次上机作业_IT认证_资格考试/认证_教育专区。第一次 C++...
第五次作业华中科技大学c++程序设计上机作业
第五次作业华中科技大学c++程序设计上机作业_工学_高等教育_教育专区。华中科技大学c++ 1.定义了一个手机类,请完成该类成员函数的定义。 #include <iostream> ...
华科C++第六次上机作业
华科C++第六次上机作业_计算机软件及应用_IT/计算机_专业资料。第六次上机作业 实验八 求组合数 Cnm=n!/[m! (n-m)!](m 为指数) #include <iostream> ...
华科C++第八次上机答案
华科C++第八次上机答案_理学_高等教育_教育专区。第八次 C++上机实验第一部分题目:定义一个圆类 Circle,有数据成员半径(double) , 设计计算圆的面积和周长的成员...
第四次上机实验华中科技大学c++程序设计上机作业
第四次上机实验华中科技大学c++程序设计上机作业_学科竞赛_小学教育_教育专区。华中科技大学c++ 1. 编写程序,根据用户输入的宽和高的数目,显示一个由"*"号组成的...
华科C++第九次上机作业
华科C++第九次上机作业_数学_自然科学_专业资料。第九次上机作业 #include <iostream> using namespace std; class Data{ public: Data(){}; Data(int,int,...
华科C++第九次上机作业
华科C++第九次上机作业_韩语学习_外语学习_教育专区 暂无评价|0人阅读|0次下载|举报文档华科C++第九次上机作业_韩语学习_外语学习_教育专区。华科C++第九次上机...
华中科技大学c++程序设计上机作业
华中科技大学c++程序设计上机作业_计算机软件及应用_IT/计算机_专业资料。华中科技大学c++ 第三次上机一、 找出下面程序或程序段中的错误,并改正。 1. #include <...
更多相关标签:
华科第七次上机考试 | c语言上机作业及答案 | c 上机作业 | 华科英语上机网址 | 华科英语上机 | 计算方法上机作业 | 信息检索上机作业 | 传热学上机作业 |