当前位置: 首页 > news >正文

青少年编程能力等级测评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

相关文章:

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

青少年编程能力等级测评CPA C 四级试卷&#xff08;1&#xff09; 一、单项选择题&#xff08;共15题&#xff0c;每题3分&#xff0c;共45分&#xff09; CP4_1_1.在面向对象程序设计中&#xff0c;与数据构成一个相互依存的整体的是&#xff08; &#xff09;。 A. 对数据…...

树上任意两点的距离

题目描述 给出 n 个点的一棵树&#xff0c;多次询问两点之间的最短距离。 注意&#xff1a;边是双向的。 输入描述 第一行为两个整数 n 和 m。n 表示点数&#xff0c;m 表示询问次数&#xff1b; 下来 n−1 行&#xff0c;每行三个整数 x,y,k&#xff0c;表示点 x 和点 y 之间…...

【 thinkphp8 】00008 thinkphp8数据查询,常用table,name方法,进行数据查询汇总

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 【 t…...

Git的命令合集

关于Git的一些命令合集&#xff0c;会慢慢更新&#xff01; 20241024程序员节开始写的&#xff0c;记录一下~~ git查看log、查看详细提交记录 会显示之前的提交记录 , 排序由近及远 git log log按q退出 git回退到某个commit命令&#xff1a; 退到/进到指定commit的sha码&…...

博客搭建之路:hexo搜索引擎收录

文章目录 hexo搜索引擎收录以百度为例 hexo搜索引擎收录 hexo版本5.0.2 npm版本6.14.7 next版本7.8.0 写博客的目的肯定不是就只有自己能看到&#xff0c;想让更多的人看到就需要可以让搜索引擎来收录对应的文章。hexo支持生成站点地图sitemap 在hexo下的_config.yml中配置站点…...

创建Windows系统还原点

系统保护...

Linux等保测评需要用到的命令

三权设置 查看账户情况 cd /home/ ll 设置审计账户 useradd shenji passwd shenji 修改密码 passwd新密码 设置管理账户 useradd guanli passwd guanli compgen -u 查看用户 切换到root账户 su root 设置审计用户权限 vim /etc/sudoers shenji ALL (root) NOPASSWD:…...

PostgreSQL的学习心得和知识总结(一百五十六)|auto_explain — log execution plans of slow queries

目录结构 注&#xff1a;提前言明 本文借鉴了以下博主、书籍或网站的内容&#xff0c;其列表如下&#xff1a; 1、参考书籍&#xff1a;《PostgreSQL数据库内核分析》 2、参考书籍&#xff1a;《数据库事务处理的艺术&#xff1a;事务管理与并发控制》 3、PostgreSQL数据库仓库…...

数据结构模板代码合集(不完整)

P3368 【模板】树状数组 2 #include <bits/stdc.h> using namespace std; const int maxn 5e5 7;int n, m, s, t; int ans; int a[maxn]; struct node{int l, r;int num; }tr[maxn * 4];void build(int p, int l, int r){tr[p] {l, r, 0};if(l r){tr[p].num a[l];r…...

shell脚本语法详解

目录 shell语法基础 指定shell解析器 注释 运行 变量 定义变量 引用变量 清除变量值 从键盘获取值 输入单值 添加输入提示语 读取多值 ​编辑 定义只读变量 环境变量 设置环境变量与查看环境变量 特殊变量 三种引号的作用与区别 小括号与大括号 参数传递 位…...

2021亚洲机器学习会议:面向单阶段跨域检测的域自适应YOLO(ACML2021)

原文标题&#xff1a;Domain Adaptive YOLO for One-Stage Cross-Domain Detection 中文标题&#xff1a;面向单阶段跨域检测的域自适应YOLO 1、Abstract 域转移是目标检测器在实际应用中推广的主要挑战。两级检测器的域自适应新兴技术有助于解决这个问题。然而&#xff0c;两级…...

面试题:描述在前端开发中,如何利用数据结构来优化页面渲染性能,并给出一个具体的示例。

在前端开发中&#xff0c;优化页面渲染性能是提升用户体验的关键之一。合理地使用数据结构可以有效地减少DOM操作的次数、提高数据处理的效率&#xff0c;从而加快页面的渲染速度。以下是一些策略&#xff0c;并给出一个具体的示例。 1. 使用合适的数据结构 数组与对象&#…...

微积分复习笔记 Calculus Volume 1 - 3.2 he Derivative as a Function

3.2 The Derivative as a Function - Calculus Volume 1 | OpenStax...

html 轮播图效果

轮播效果&#xff1a; 1、鼠标没有移入到banner,自动轮播 2、鼠标移入&#xff1a;取消自动轮播、移除开始自动轮播 3、点击指示点开始轮播到对应位置 4、点击前一个后一个按钮&#xff0c;轮播到上一个下一个图片 注意 最后一个图片无缝滚动&#xff0c;就是先克隆第一个图片…...

Android Room(SQLite) too many SQL variables异常

SQLiteException 一、解决办法1. 修改数据库语句2. 分批执行 二、问题根源 转载请注明出处: https://blog.csdn.net/hx7013/article/details/143198862 在使用 Room 或其他基于 SQLite 的 ORM 框架时&#xff0c;批量操作如 IN 或 NOT IN 查询可能会触发 android.database.sqli…...

sentinel原理源码分析系列(八)-熔断

限流为了防止过度使用资源造成系统不稳&#xff0c;熔断是为了识别出”坏”资源&#xff0c;避免好的资源受牵连(雪崩效应)&#xff0c;是保证系统稳定性的关键&#xff0c;也是资源有效使用的关键&#xff0c;sentinel熔断插槽名称Degrade(降级)&#xff0c;本人觉得应该改为熔…...

安全见闻(4)——开阔眼界,不做井底之蛙

内容预览 ≧∀≦ゞ 安全见闻四&#xff1a;操作系统安全机制深度解析声明操作系统机制1. 注册表2. 防火墙3. 自启动与计划任务4. 事件日志5. 内核驱动与设备驱动6. 系统服务7. 进程与线程8. 系统编程 从操作系统机制看病毒设计1. 自启动&#xff1a;病毒如何在系统启动时运行&a…...

(二十二)、k8s 中的关键概念

文章目录 1、总体概览2、第一层&#xff1a;物理机、集群、Node、Pod 之间的关系2、第二层&#xff1a;命名空间 Namespace3、定义4、控制平面&#xff08;Control Plane&#xff09;5、特别的概念 Service6、Deployment 经过 之前几篇文章对 k8s 的实践&#xff0c;结合实践&…...

python基础综合案例(数据可视化-地图可视化)

1.基础地图使用 注意写名字的时候要写全名&#xff0c;比如上海市不能写出上海&#xff0c;不然看不到数据 鼠标点击即可看到数据 设置属性的时候不要忘记导包 # 演示地图可视化的基础使用 from pyecharts.charts import Map from pyecharts.options import VisualMapOpts # 准…...

基于SpringBoot足球场在线预约系统的设计与实现

&#x1f497;博主介绍&#x1f497;&#xff1a;✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示&#xff1a;文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker &#xff1b;并安装。 基础操作不再赘述。 打开 macOS 终端&#xff0c;开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面&#xff0c;gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress&#xff0c;说明目标所使用的cms是wordpress&#xff0c;访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

DBLP数据库是什么?

DBLP&#xff08;Digital Bibliography & Library Project&#xff09;Computer Science Bibliography是全球著名的计算机科学出版物的开放书目数据库。DBLP所收录的期刊和会议论文质量较高&#xff0c;数据库文献更新速度很快&#xff0c;很好地反映了国际计算机科学学术研…...

论文阅读:Matting by Generation

今天介绍一篇关于 matting 抠图的文章&#xff0c;抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法&#xff0c;已经有很多的工作和这个任务相关。这两年 diffusion 模型很火&#xff0c;大家又开始用 diffusion 模型做各种 CV 任务了&am…...

加密通信 + 行为分析:运营商行业安全防御体系重构

在数字经济蓬勃发展的时代&#xff0c;运营商作为信息通信网络的核心枢纽&#xff0c;承载着海量用户数据与关键业务传输&#xff0c;其安全防御体系的可靠性直接关乎国家安全、社会稳定与企业发展。随着网络攻击手段的不断升级&#xff0c;传统安全防护体系逐渐暴露出局限性&a…...

webpack面试题

面试题&#xff1a;webpack介绍和简单使用 一、webpack&#xff08;模块化打包工具&#xff09;1. webpack是把项目当作一个整体&#xff0c;通过给定的一个主文件&#xff0c;webpack将从这个主文件开始找到你项目当中的所有依赖文件&#xff0c;使用loaders来处理它们&#x…...

LTR-381RGB-01RGB+环境光检测应用场景及客户类型主要有哪些?

RGB环境光检测 功能&#xff0c;在应用场景及客户类型&#xff1a; 1. 可应用的儿童玩具类型 (1) 智能互动玩具 功能&#xff1a;通过检测环境光或物体颜色触发互动&#xff08;如颜色识别积木、光感音乐盒&#xff09;。 客户参考&#xff1a; LEGO&#xff08;乐高&#x…...