本答案对应课程为:点我自动跳转查看
本课程起止时间为:2020-02-24到2020-07-15
本篇答案更新状态:已完结

【作业】第7章 面向对象程序设计之一(1) C++结构体相关作业

1、 问题:1.定义表示三维空间中某点的结构体Point。
评分规则: 【 结构体名称及三维

2、 问题:2.定义银行账号结构体Account,包括利息balance、利率intrestRate、账户类型termt和账户名name(20字符以内)4个域。定义各个域时需要仔细斟酌各字段对应的数据类型。
评分规则: 【 结构体、各字段名称各字段类型

第7章 面向对象程序设计之一(1) 单元测验7-1

1、 问题:下列关于类的描述中,错误的是(    )。
选项:
A:类可认为是一种数据类型
B:用类所定义出的变量称为对象
C:类包含数据成员和函数成员
D:类成员的访问权限有2种
答案: 【类成员的访问权限有2种

2、 问题:下列哪种思想不属于面向对象程序设计?(    )
选项:
A:抽象
B:封装
C:继承
D:模块化
答案: 【模块化

3、 问题:假设编写一个教务管理系统,通过分析可以抽象出若干个类,其中应不包括下列哪个类?(    )
选项:
A:学生类
B:教师类
C:课程类
D:宿舍类
答案: 【宿舍类

4、 问题:下列关于类的描述中,错误的是(    )。
选项:
A:类的数据成员也被称作属性
B:类的函数成员也被称作方法
C:面向对象中的分类被称作是抽象
D:可以用流程图来描述类的设计
答案: 【可以用流程图来描述类的设计

5、 问题:下列关于类定义语法的描述中,错误的是(    )。
选项:
A:定义类时需使用关键字class
B:类定义代码通常分为声明和实现2部分
C:完整的函数定义代码通常放在类实现部分
D:不同类的成员之间不能重名
答案: 【不同类的成员之间不能重名

6、 问题:下列关于数据成员的描述中,错误的是(    )。
选项:
A:数据成员用于保存数据
B:数据成员的的类型只能是基本数据类型
C:类中的数据成员之间不能重名
D:声明数据成员不能初始化
答案: 【数据成员的的类型只能是基本数据类型

7、 问题:下列关于函数成员的描述中,错误的是(    )。
选项:
A:函数成员的功能通常是对本类中数据成员进行处理
B:函数成员访问本类中数据成员时需先定义,后访问
C:类中的函数成员之间可以重名,即重载函数
D:函数成员的完整定义代码可以放在声明部分,此时该函数被默认为内联函数
答案: 【函数成员访问本类中数据成员时需先定义,后访问

8、 问题:类成员的访问权限不包括下列哪种权限?(    )
选项:
A:public
B:private
C:protected
D:inline
答案: 【inline

9、 问题:下列关于对象的描述中,错误的是(    )。
选项:
A:对象是用类定义的变量,也可称为是类的实例
B:一个对象所占的内存空间等于其类中所有数据成员所占内存的总和
C:一个对象只属于某一个类
D:一个类只能定义一个对象
答案: 【一个类只能定义一个对象

10、 问题:已定义一个圆的类Circle:class Circle
{
private:  double r;
public:
    void SetR(double x)  {  r = x;  }
    double GetArea( )  { return 3.14rr;  }
};下列计算圆面积的代码中,正确的是(    )。 
选项:
A:Circle c;    c.r = 10.5;    cout << 3.14c.rc.r;
B:‍Circle c;    c.SetR(10.5);    cout << c.GetArea( );
C:Circle c;    cout << c.GetArea( );
D:Circle c;    SetR(10.5);    cout << GetArea( );
答案: 【‍Circle c;    c.SetR(10.5);    cout << c.GetArea( );

11、 问题:已定义一个圆的类Circle:class Circle
{
private:  double r;
public:
    void SetR(double x)  {  r = x;  }
    double GetArea( )  { return 3.14rr;  }
};下列计算圆面积的代码中,正确的是(    )。 
选项:
A:Circle c, p = &c;    p.SetR(10.5);    p.GetArea( );
B:Circle c,
p = c;    p->SetR(10.5);    p->GetArea( );
C:Circle c, p = &c;    p->SetR(10.5);    p->GetArea( );
D:Circle c,
p = &c;    p->GetArea( );
答案: 【Circle c, *p = &c;    p->SetR(10.5);    p->GetArea( );

【作业】第7章 面向对象程序设计之一(2) 单元作业7-2

1、 问题:阅读程序。阅读下列C++程序,对每条语句进行注释,说明其作用(请粘贴源代码或屏幕截图,不要上传附件)。#include <iostream>
using namespace std;
class CTest
{
private:  int x, y;
public:
    CTest(int p1 = 0, int p2 = 0)  {  x = p1;  y = p2;  }
    CTest(CTest &p)  {  x = p.x;  y = p.y;  }
    void Show( )  {  cout << x << “, “ << y << endl;  }
};
int main( )
{
    CTest obj1;
    obj1.Show( );
    CTest obj2(2, 5);
    obj2.Show( );
    CTest obj3(obj2);
    obj3.Show( );
    return 0;

评分规则: 【 从“class CTes”t开始的每条语句都要加注释。未加注释或注释错误,每个扣5分。参考答案:#include <iostream>
using namespace std;
class CTest  // 定义类CTest
{
private:  int x, y;  // 声明私有数据成员x、y
public:
  CTest(int p1 = 0, int p2 = 0)  {  x = p1;  y = p2;  }  // 带默认形参值的构造函数
  CTest(CTest &p)  {  x = p.x;  y = p.y;  }  // 拷贝构造函数
  void Show( )  {  cout << x << “, “ << y << endl;  }  // 显示数据成员的函数
};
int main( )  // 主函数
{
  CTest obj1;  // 定义对象obj1,自动调用构造函数将数据成员初始化为0
  obj1.Show( );  // 显示结果:0, 0
  CTest obj2(2, 5);  // 定义对象obj2,自动调用构造函数将数据成员初始化为2和5
  obj2.Show( );  // 显示结果:2, 5
  CTest obj3(obj2);  // 定义对象obj3,自动调用拷贝构造函数用obj2初始化obj3
  obj3.Show( );  // 显示结果:2, 5
  return 0;  // 程序结束,返回

【作业】第7章 面向对象程序设计之一(3) 单元作业7-3

1、 问题:编写程序。编写一个关于圆形的C++程序。要求用定义一个圆形类Circle,其中包含如下成员:1) 1个私有数据成员(半径);2) 3个公有函数成员(设置半径、计算面积、计算周长);3) 3个构造函数(不带参数的构造函数、带参数的构造函数和拷贝构造函数)。编写主函数main(),使用圆形类Circle创建圆形对象,要求:1) 定义一个圆对象c1,从键盘输入一个值x并将其设定为c1的半径,计算并显示c1的面积和周长;2) 再定义一个圆对象c2,并将半径初始化为2x,计算并显示c2的面积和周长;3) 再定义一个圆对象c3,并用c1初始化c3,计算并显示c3的面积和周长。注:请粘贴源代码或屏幕截图,不要上传附件。
评分规则: 【 本题目的是练习类与对象编程。如不能完成功能,每项扣30分;每个语法错误扣5分。参考答案:#include <iostream>
using namespace std;
class Circle  // 定义圆形类Circle
{
private:  double r;
public:
  void Set(double x)  {  r = x;  }
  double CArea( )  {  return ( 3.14rr );  }
  double CLen( )  {  return ( 3.142r );  }
  Circle( )  {  r = 0;  }
  Circle( double x )  {  r = x;  }
  Circle( Circle &x )  {  r = x.r;  }
} ;
int main( )  // 主函数
{
  int x;  cin >> x;
  Circle c1;    c1.Set( x );
  cout << c1.CArea( ) << “, “ << c1.CLen( ) << endl;
  Circle c2( 2*x );
  cout << c2.CArea( ) << “, “ << c2.CLen( ) << endl;
  Circle c3( c1 );
  cout << c3.CArea( ) << “, “ << c3.CLen( ) << endl;
  return 0;

本门课程剩余章节答案为付费内容
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦

   

发表评论

电子邮件地址不会被公开。 必填项已用*标注