青少年编程能力等级测评CPA C++ 四级试卷(1)

青少年编程能力等级测评CPA C++ 四级试卷(1)

一、单项选择题(共15题,每题3分,共45分)

CP4_1_1.在面向对象程序设计中,与数据构成一个相互依存的整体的是(  )。

A. 对数据的操作    

B. 对数据的封装      

C. 对数据的隐藏    

D. 对数据的抽象

CP4_1_2.已知定义了类Day,并且在该类之前已经定义了类Week。下列关于类Day的数据成员定义语句,不正确的是(  )。

A.Week weekend;

B.Day  *today;

CDay  yestoday;

Dint  tomorrow;

CP4_1_3.下列有关类与对象的关系叙述中,不正确的是(  )。

A.对象是类的实例

B.一个类只能拥有一个对象

C.一个对象只能属于一个类

D.类是抽象的,不占用内存,而对象是具体的,占用内存

CP4_1_4.若Demo为一个类,则执行Demo sa; 语句时,将自动调用该类的(  )。  

A. 有参构造函数

B. 无参构造函数

C. 拷贝构造函数

D. 赋值重载函数  

CP4_1_5.类的复制构造函数的参数是(  )。

A. 类对象

B. 类对象的成员

C. 类对象的引用

D. 指向类对象的指针

CP4_1_6.执行下列代码,运行结果是(  )。  

#include<iostream>

using namespace std;

class aClass{

public:

    aClass(int n) { i=n; }

    void set(int n){ i=n; }

    int get( ){ return i; }

private:

    int i;

};

void sqr(aClass ob)

{

    ob.set(ob.get()*ob.get());

    cout<<ob.get()<<" ";

}

int main()

{

    aClass obj(10);

    sqr(obj);

    cout<<obj.get( )<<endl;

return 0;

}   

A.10 10

B.100 100

C.10 100

D.100 10

CP4_1_7.执行下列代码,运行结果是(  

#include<iostream>

#include<string>

using namespace std;

class MyBag{

  public:

    MyBag(string br="OK"):brand(br) { cout<<brand<<" "; }

  private:

    string brand;

};

int main(){

  MyBag arrays[2]={MyBag("GO")};

  return 0;

}

A.OK OK

B.GO GO

C.GO OK

D.OK GO

CP4_1_8.执行下列代码,运行结果是(  )

#include <iostream>

using namespace std;

class Member{

public:

    Member(){

        std::cout << "N1 " ;

    }

    ~Member(){

        cout << "N2 " ;

    }

};

class Test{

private:

    Member member;

public:

    Test(){

        cout << "N3 ";

    }

    ~Test(){

        cout << "N4 ";

    }

};

int main(){

    Test* test = new Test();

    delete test;

cout<<endl;

    return 0;

}

A.N1 N2 N3 N4

B.N3 N4 N1 N2

C.N1 N3 N4 N2

D.N3 N1 N2 N4

CP4_1_9.在C++中,结构体是一种特殊的类,其成员默认的访问权限是(  )。       

A.public

B.private

C.static

D.protected

CP4_1_10.下列有关对静态数据成员的叙述中,正确的是(  )。       

A.静态数据成员可以在类体内进行初始化

B.静态数据成员不可以被类的对象调用

C.静态数据成员不受private控制符的作用

D.静态数据成员可以直接用类名调用

CP4_1_11. 执行下列代码,运行结果是(  )。

#include<iostream>

using namespace std;

class Cd{

  public:

     static int cacu();

  private:

     static int sum;    

 };

int Cd::sum=20;

int Cd::cacu(){

   return(sum=sum*3);

}

int main(){

cout<<Cd::cacu()<<","<<Cd::cacu()<< endl;

return 0;

}

A.60,180

B.180,60

C.60,60

D.180,180

CP4_1_12.执行下列代码,运行结果是(  )。       

using namespace std;

#include <iostream>

class Sample{

int n;

public:

  Sample(int i){n=--i;}

  friend int Plus(Sample &s1,Sample &s2);

};

int Plus(Sample &s1,Sample &s2){

   return s1.n*s2.n;

}

int main(){

  Sample s1(5),s2(6);

  cout << Plus(s1,s2)<<endl;

  return 0;

}

A. 20     

B. 24     

C. 25     

D.30

CP4_1_13.下列有关友元成员的叙述中,不正确的是(  )。

A. 友元成员可以声明在类的public部分,也可以声明在private部分

B. 友元成员包括友元函数、友元成员函数和友元类

C. 通过友元成员可以让外部函数直接访问类的私有数据

D. 类之间的友元关系是可以传递的,即是可逆的

CP4_1_14.下列代码定义了两个类,有关这两个类的叙述中,正确的是(  )。

class B{

friend class A;

    public: int x;

    private:int y;

};

class A{

   public: float m;

   private:float n;

};

A.B是A的友元类,B可以访问A中的私有成员

B.B是A的友元类,A可以访问B中的私有成员

C.A是B的友元类,B可以访问A中的私有成员

D.A是B的友元类,A可以访问B中的私有成员

CP4_1_15.下列有关vector容器的定义语句,不正确的是(  )

A. vector <int> v(10);

B. vector <char> v;

C. vector v;

D. vector <double> v;

二、多项选择题(共5题,每题2分,共10分)

CP4_1_16.下列代码定义了类和对象,能够正确完成函数调用的语句有(  )。

class A{

public:

   A(int x):data(x){}

   int GetData() const{return data;}

   void SetData(int n) {data = n;}

private:

   int data;

};

const  A a(5);

A b(7);

A.a.GetData();

B.a.SetData(8);

C.b.GetData(8);

D.b.SetData();

CP4_1_17.下列代码定义了类MyClass,有关其对象数组的定义语句,正确的有(  )。

class MyClass{

int n;

public:

MyClass(int k):n(k){}

};

A.MyClass x1[2];

B.MyClass x2[2]={new MyClass(1),new MyClass(2)};

C.MyClass *x3[2];

D.MyClass x4[2]={MyClass(1),MyClass(2)};

CP4_1_18.下列有关类的静态成员的叙述中,正确的有(  )。

A.类的静态成员可以解决同一个类的不同对象之间的数据和函数的共享问题

B.类的静态数据成员和静态成员函数的声明均需以关键字static开始

C.类的静态数据成员必须进行初始化,初始化时必须加关键字static

D.类的静态成员函数只能在类体内定义,不可以在类外定义

CP4_1_19.下列有关友元函数的叙述中,正确的有(  )。

A.友元函数可以是不属于任何类的非成员函数

B.友元函数是它声明语句所在类的成员函数

C.友元函数破坏了类的封装性和隐藏性

D.友元函数不能访问类的私有成员

CP4_1_20.下列运算符中,只能作为成员函数重载的运算符有(  )。

A. []

B. ()

C. ->

D. &&

三、编程题(共3题,每题15分,共45分)

CP4_1_21.编写程序实现如下功能:

用户输入圆的半径,通过类的定义和计算,求圆的周长和面积。

说明

(1) 编程过程中对于程序给定的部分不允许修改,考生仅允许在/****code****/提示行区间内作答。

(2)圆周率的值取3.14。

#include <iostream>

using namespace std;

class Circle

{

/*****************code***********/

/*****************code***********/

private:

    double m_r;

};

int main(void)

{

    Circle c;

    double r;

    double girth; //周长

    double area;  //面积

    cin >> r;     //输入半径

    c.set(r);

    girth = c.getGirth();

    area = c.getArea();

    

    cout <<  girth << endl;

    cout <<  area << endl;

return 0;

}

样例1:

输入: 1

输出: 6.28

3.14

样例2: 

输入: 2.5

输出: 15.7

       19.625

CP4_1_22.编写程序实现如下功能:

通过类的静态成员实现计数统计。用户输入预构造三角形的数量n(n≤10)以及n个三角形的边长。输出满足可以构建成为三角形的对象的总数。

说明:编程过程中对于程序给定的部分不允许修改,考生仅允许在/****code****/提示行区间内作答。

#include <iostream>

using namespace std;

class Triangle

{ /******************************code*****************/

/******************************code*****************/

};

int Triangle::T_Count = 0; // 初始化类 Triangle 的静态成员

int main( )

{

   int n;

   double c1,c2,c3;    //三角形的三边长度

   Triangle *t[10];

   cin >> n;         // 输入要构造的三角形数量, 小于等于10

   for(int i=0;i<n;i++){

   cin>>c1>>c2>>c3;

   t[i]=new Triangle(c1,c2,c3);

   }

   cout << Triangle::getCount() << endl;  //创建对象之后输出满足要求的对象总数

   return 0;

}

样例1:

输入:3

      1 1 1

      1 2 3

      3.4 4.2 5.6

输出:2

样例2:

输入:1

2.2 5.4 2.3

输出:0

CP4_1_23.编写程序实现如下功能:

定义complex类,通过重载运算符“+”,使之能实现复数的加法运算。用户输入两个复数的实部和虚部值,输出两个复数以及两个复数相加后的结果。

说明:

(1)本程序中,复数的实部和虚部值均为整数;

(2)若虚部的值为0,则该复数即为整数,其输出也是整数的形式,例如4+0j,输出为4。

(3)编程过程中对于程序给定的部分不允许修改,考生仅允许在/****code****/提示行区间内作答。

#include<iostream>

using namespace std;

class complex{

private:

   int real;

   int image;

public:

   complex();

   complex(int real_,int image_);

void show();

/*************************code***********************/

    

   /*************************code***********************/

};

complex::complex(){

real = 0;

image = 0;

}

complex::complex(int real_,int image_){

real = real_;

image = image_;

}

void complex::show(){

/**********************code*********************/

/**********************code**********************/

}

int main(){

   int r1,r2,i1,i2; //分别表示两个复数的实部和虚部的值

   complex c;      // 创建complex类的对象

   cin>>r1>>i1;   //输入数1的实部及虚部

   cin>>r2>>i2;  //输入数1的实部及虚部

   complex a(r1,i1); //创建复数a对象

   complex b(r2,i2); //创建复数b对象

   a.show();  //显示复数a

   b.show();  //显示复数b

   c = a + b; // +在复数加中的实现

   c.show(); // 显示相加后的复数c

   return 0;

 }

样例1:

输入:1 2

3 4 

输出:1+2j

3+4j

4+6j

样例2:

输入:1 -2

      1 2

输出:1-2j

1+2j

2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/57730.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

想让前后端交互更轻松?alovajs了解一下?

作为一个前端开发者&#xff0c;我最近发现了一个超赞的请求库 alovajs&#xff0c;它真的让我眼前一亮&#xff01;说实话&#xff0c;我感觉自己找到了前端开发的新大陆。大家知道&#xff0c;在前端开发中&#xff0c;处理 Client-Server 交互一直是个老大难的问题&#xff…

【C++训练营】现代C++编程(隐藏)

一、面向对象的特性 1.1 编码规范 1.1.1 效率 时间/空间&#xff1a;计算相关逻辑的时间复杂度和空间复杂度内存&#xff1a;考虑内存占用和cache命中率堆/栈&#xff1a;从生存周期、内存管理复杂性、对象大小等角度来考虑堆栈应用存储&#xff1a;考虑存储护具方式和读取方…

使用docker-compose搭建redis7集群-3主3从

下面是一个用于搭建 Redis 集群的 docker-compose.yml 示例文件&#xff0c;它会启动 6 个 Redis 节点&#xff08;3 主节点 3 从节点&#xff09;来构成一个最小的 Redis 集群。 同一个容器内网通讯没问题&#xff0c;但是你要是需要暴露到外网你需要用第二个yml 内网的 v…

信雅纳Chimera 100G网络损伤仪助力Parallel Wireless开展5G RAN无线前传网络的损伤模拟

背景介绍 Parallel Wireless 为移动运营商提供唯一全覆盖的(5G/4G/3G/2G&#xff09;软件支持的本地 OpenRAN (ORAN) 解决方案。该公司与全球 50 多家领先运营商合作&#xff0c;并被 Telefonica 和 Vodafone 评为表现最佳的供应商。Parallel Wireless 在多技术、开放式虚拟化…

从头学PHP之运算符

关于运算符的图片均来自网络&#xff0c;主要是自己写太麻烦了&#xff0c;程序是个简化自己工作量的方式&#xff0c;能复制粘贴就不要手写了&#xff08;建议初期还是多写写&#xff0c;加深下记忆&#xff09;在这里我就偷个懒&#xff0c;图片涉及到侵权及时&#xff0c;请…

实现酒店搜索框自动补全

前言 现在&#xff0c;hotel索引库还没有设置拼音分词器&#xff0c;需要修改索引库中的配置。但是知道索引库是无法修改的&#xff0c;只能删除然后重新创建。 另外&#xff0c;需要添加一个字段&#xff0c;用来做自动补全&#xff0c;将brand、suggestion、city等都放进去…

小程序无法获取头像昵称以及手机号码

用户在使用小程序的时候&#xff0c;登录弹出获取昵称头像或者个人中心点击默认头像弹窗获取头像昵称的时候&#xff0c;点击弹窗中的头像昵称均无反应&#xff0c; 这个是因为你的小程序隐私政策没有更新&#xff0c;或者老版本没有弹窗让用户同意导致的 解决办法&#xff1…

SpringBoot:举例说明如何使用@ControllerAdvice处理全局异常

使用RestController开发web接口时&#xff0c;需要处理Controller层未捕获的异常&#xff0c;提高系统的健壮性。 一般常用的方式是采用ControllerAdvice和ExceptionHandler&#xff0c;举例如下&#xff1a; ControllerAdvice public class ControllerAdvice {ExceptionHand…

UML外卖系统报告(包含具体需求分析)

1、系统背景 随着互联网技术的快速发展&#xff0c;外卖订餐服务逐渐成为人们生活中的一部分。传统的电话订餐方式面临诸多不便和限制&#xff0c;而基于互联网的外卖订餐系统则提供了更加便捷、快速和高效的订餐服务。这种系统通过将餐厅、顾客和配送人员连接起来&#xff0c…

截屏工具,

1&#xff0c;pc端的shiftwins&#xff0c;或者是prtsc按钮&#xff0c;但是有时候容易失效 2&#xff0c;第三方工具&#xff1a;Snipaste Snipaste - 截图 贴图 用户手册见Snipaste **常用F2或者是F3快捷键&#xff0c;切换桌面&#xff0c;而不是下端一个一个点击窗口页面…

论文阅读与写作入门

文章目录 1.阅读第一篇论文(1)论文结构(2)目标 2.使用GPT辅助论文的阅读与写作3.专有名词(1)架构(2)网络(3)机器学习 4.文献翻译软件5.从哪里下载文献&#xff1f;6.如何判断(你自己的)研究工作的价值or贡献【论文精读李沐】7.经典论文(1)AlexNet 2012(2)FCN 全卷积 2014(3)Res…

【Go语言】语法基础之变量、数据类型详解

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《Go语言探索之旅》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、Go语言简介 2、Go语言特点 二、变量 1、变量的声明与初始化 2、变量…

【C++篇】C++类与对象深度解析(五):友元机制、内部类与匿名对象的讲解

文章目录 前言 &#x1f4ac; 欢迎讨论&#xff1a;如果你在学习过程中有任何问题或想法&#xff0c;欢迎在评论区留言&#xff0c;我们一起交流学习。你的支持是我继续创作的动力&#xff01; &#x1f44d; 点赞、收藏与分享&#xff1a;觉得这篇文章对你有帮助&#xff01…

时序数据库 TDengine 支持集成开源的物联网平台 ThingsBoard

Thingsboard 中“设备配置”和“设备”的关系是一对多的关系&#xff0c;通过设备配置为每个设备设置不同的配置&#xff0c;每个设备都会有一个与其关联的设备配置文件。等等&#xff0c;这不就是TDengine 中超级表的概念&#xff1a; 超级表是一种特殊的表结构&#xff0c;用…

【功能安全】汽车功能安全个人认证证书

目录 1、证书 2、课程信息 &#x1f4d6; 推荐阅读 1、证书 汽车功能安全工程师去拿类似莱茵、SGS、南德颁发的证书&#xff0c;如下&#xff1a; 2、课程信息 一般上什么课程了&#xff0c;课程信息大概如下&#xff1a; 汽车功能安全工程师认证课 &#xff08;3天&#…

数据库作业2

建立并使用mydb8_worker&#xff0c;并在其中建表&#xff1a; &#xff08;1&#xff09;显示所有职工的基本信息 &#xff08;2&#xff09;去重查询 &#xff08;3&#xff09;所有职工人数 &#xff08;4&#xff09;最高最低工资 &#xff08;5&#xff09;平均工资和总工…

2024“龙信杯“电子数据取证竞赛-手机取证题目Writeup

文章关键词&#xff1a;电子数据取证、电子物证、手机取证、服务器取证、介质取证 案情介绍 近期&#xff0c;某公安机关正式受理了一起受害者报案案件。受害者陈述称&#xff0c;其通过微信平台结识了一名自称为相亲中介服务的客服人员。该客服人员诱骗受害者参与所谓的“相亲…

【AscendC算子开发】笔记1 算子开发哲学

重看这门课&#xff0c;有很多内容的认识更深了&#xff0c;做一些记录。 为什么不能将网络节点融合 这个问题关联到另一个问题&#xff1a;为什么我们需要激活函数&#xff1f; 使用线性的神经元堆叠得到的方程最后也是线性方程&#xff0c;无法表征非线性的信息&#xff0c…

一文1800字从0到1浅谈web性能测试!

什么是性能测试&#xff1f; web性能应该注意些什么&#xff1f; 性能测试&#xff0c;简而言之就是模仿用户对一个系统进行大批量的操作&#xff0c;得出系统各项性能指标和性能瓶颈&#xff0c;并从中发现存在的问题&#xff0c;通过多方协助调优的过程。而web端的性能测试…

基于知识图的电影推荐系统

&#x1f3ac; 毕设灵感——“基于知识图谱的电影推荐系统”&#x1f680; &#x1f449; 如果你的毕业设计还没有灵感&#xff0c;那么这个基于知识图谱的电影推荐系统绝对值得参考&#xff01;这不是普通的推荐系统&#xff0c;而是通过知识图谱大数据的结合&#xff0c;来为…