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

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

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

CP3_1_1.以下有关模拟算法的叙述中,不正确的是(  )。

A.模拟算法适于解决那些难于通过经典算法和建立数学模型求解的问题  

B.模拟算法实现较为简单,只要按照问题原本的思路求解即可a

C.模拟算法较之其他算法具有时间复杂度的优势

D.模拟算法实现中,代码本身蕴含的算法思维较少

CP3_1_2.有鸡和兔在一个笼子中,数头共50个头,数脚共120只脚,问:鸡和兔分别有多少只?用穷举法求解该问题,下列方案中,能够有效降低算法时间复杂度的是(  )。

A.根据脚数,限制代表兔子数量的变量的循环上限

B.根据总数量,用表示鸡的变量推导兔子的数量,将双重循环降为单重循环

C.用宏预处理鸡、兔的数量关系

D. 用函数代替表达式,求解两种动物的数量

CP3_1_3.在下列代码中,迭代关系语句是(  )。

#include <iostream>

using namespace std;

int main(){

  int day=10,num=1;

  while(day){

    num=(num+1)*2;

    day--;

   }

  cout<<num<<endl;

  return 0;

}

A.num=(num+1)*2;

B.d--;

C.整个while()循环语句

D.int day=10,num=1;

CP3_1_4.运行下列代码,输出结果是(  )。

#include <iostream>

using namespace std;

int main( ){

    int a[ ] = {1,3,5,7};

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

    a[i]=a[i]+i;

        cout<<a[i]<< '\t';

}

return 0;

}

A.2 4 6 8

B.1 4 8 12

C.1 4 7 10

D.3 6 9 12

CP3_1_5.在直接选择排序算法中,与记录的初始排列状态相关的是(  )。

A.算法的时间复杂度

B.算法的空间复杂度

C.关键码的比较次数

D.排序过程中数据移动的总次数

CP3_1_6.折半插入排序算法是对插入排序算法的一种改进。下列有关算法改进核心点的叙述中,正确的是(  )。

A.减少了数据移动的次数

B.减少了数据比较的次数

C.降低了算法的时间复杂度

D.降低了算法的空间复杂度

CP3_1_7.下列各组数据,用冒泡排序法进行从小到大排序,则需要交换次数最多的是(  )。

A.12  5  8  9  7

B.12  5  9  8  7

C.5  8  9  7  12

D.5  9  7  12  8

CP3_1_8.下列排序算法分类中,快速排序算法所属的分类是(  )。

A.交换排序

B.插入排序

C.选择排序

D.基数排序

CP3_1_9.数组a定义为:int a[]={205,408,471,498,621,829,833,940}; 进行二分查找,设定查找键为key。若第一个被访问到的数据是498,小于key值,则第二个被访问到的数据是(  )。

A.408

B.829

C.833

D.940

CP3_1_10.下列代码为分治策略实现的二分查找算法,参数key为要查找的键。/**(1)**/处应填写的函数调用表达式为(  )。

int bsearch(int array[], int low, int high, int key)

{

if (low > high)

return -1;  //边界设置不合理,返回-1

    int mid = (low + high)/2;

    if (array[mid]> key)

        return    /**(1)**/ ;

    if (array[mid]< key)

        return    bsearch(array, mid+1, high, key);

    if (midValue == key)

        return mid;

}

A.bsearch(array, low+1, mid, key)

B.bsearch(array, low, high, key)

C.bsearch(array, low, mid -1, key)

D.bsearch(array, low-1, high, key)

CP3_1_11.已知货币面值为100元、50元、20元、10元、5元、1元,购买价格为n元的商品,恰好完成支付,至少需要支付几张货币。下列代码实现该功能,则/**(1)**/处需要填写的语句是(  )。

#include <iostream>

using namespace std;

const int money[] = {100,50,20,10,5,1};    //货币面值

int main(){

    int n,count = 0;

    cin >> n;

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

        /**(1)**/

        n = n % money[i];  

        }

    cout << count << endl;

    return 0;

}

A. count += money[i];

B. count += n - money[i];

C. count += n – n / money[i];

D. count += n / money[i];

CP3_1_12.执行下列程序,输出结果是(  )。

#include<iostream>

#include<cstring>

using namespace std;

int main(){

    char s1[20]="cplus";

    char s2[20]="language";

   cout<<strcat(s1+1,s2+strlen(s2)/2)<<endl;

    return 0;

 }

A.cuage

B.cpluuage

C.plusuage

D.pluslang

CP3_1_13.下列通过string定义字符串的语句,错误的是(  )。

A.string s; s = "hello C++";

B.string s = "hello C++";

C.string s("hello C++");

D.string s["hello C++"];

CP3_1_14.对如图所示的二叉树进行深度优先遍历,用栈存储访问到的节点,则第5个入栈的节点值是(  )。

A.8

B.9

C.5

D.6

CP3_1_15.在面向对象方法中,信息隐蔽实现的机制是( )。

A. 对象的多态性

B. 对象的继承性

C. 对象的封装性

D. 对象的共享性

二、多项选择题(共5题,每题3分,共15分)

CP3_1_16.下列排序算法,其平均时间复杂度高于O(nlog2n)的有(  )。

A.堆排序       

B.直接插排序入          

C.冒泡排序           

D.快速排序

CP3_1_17.下列有关局部最优解和全局最优解的叙述中,正确的有(  )。

A.局部最优解不一定是全局最优解,全局最优解一定是局部最优解

B.贪心算法是以局部最优解为目标的,但根据局部最优解一定能够得出全局最优解

C.所有全局最优解问题都可以通过贪心算法得以解决

D.局部最优解经过优化均可形成全局最优解

CP3_1_18.下列方法中,可用做优化广度优先算法的有(  )。

A.双向搜索法

B.启发式搜索

C.等效冗余排除

D.用堆栈替代队列

CP3_1_19.在C++中,类的成员具有的访问控制权限有(  )。

A. public

B. private

C. protected

D. personal

CP3_1_20. 设Demo为已定义的一个类,则下列有关该类的对象定义语句,正确的有(  )。

A. Demo int a;

B. Demo arr[5];

C. Demo *p  = new  Demo( );

D. class Demo b;

三、编程题(共2题,每题20分,总分40分)

CP3_1_21.

猴子第一天摘下若干桃子,当即吃下了一半,还不过瘾,又多吃了一个;第二天又将剩余的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩余桃子的一半多一个。到第n天再想吃时,发现桃子就剩一个了。编写程序,输入一个正整数代表只剩一个桃子的第n天,输出第一天摘的桃子数。

样例1

输入: 5

输出: 46

样例2

输入:2

输出:4

CP3_1_22.

某校有8位同学参加数学竞赛,得分均为60至100之间的正整数(包括60和100在内)。编程输入8个满足要求的分数,并对这些分数从高到低进行排序并输出。

注意

(1)输入的不符合要求的分数将被忽略。

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

#include <iostream>

using namespace std;

int main(){

int i,j,k,temp,score[8];

for(i=0;i<8;i++){

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

   

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

}

for (i=0;i<8;i++)

    cout<<score[i]<<" ";  //循环输出排列好的分数

cout << endl;

return 0;

}

样例1

输入:67 78 98 75 77 89 90 65

输出:98 90 89 78 77 75 67 65

样例2

输入:12 65 60 75 80 63 90 56 86 70

输出:90 86 80 75 70 65 63 60

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

普通数组矩阵

文章目录 普通数组一、最大子数组二、合并区间三、轮转数组四、除自身以外数组的乘积五、缺失的第一个正数 普通数组 一、最大子数组 题目链接 方法一&#xff1a;动态规划 方法二&#xff1a;前缀和&#xff08;有点难理解&#xff09; 二、合并区间 题目链接 三、轮…

软件部署-Docker容器化技术(二)

上一期分享了Docker的一些基本内容&#xff0c;这一期主要对构建基础镜像和Docker网络、文件挂载再展开分享下&#xff0c;可能不一定做得很好&#xff0c;主要是在学习的过程中有一些自己的总结和思考&#xff0c;和大家一起学习。 名词说明&#xff1a;这里的宿主机是指liun…

【D3.js in Action 3 精译_037】4.1 DIY 实战:D3 源码分析之——d3.timeFormat() 函数

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第一部分 D3.js 基础知识 第一章 D3.js 简介&#xff08;已完结&#xff09; 1.1 何为 D3.js&#xff1f;1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践&#xff08;上&#xff09;1.3 数据可…

Shopee虾皮登录不了的常见原因及解决方式

在近年来&#xff0c;随着电子商务的迅猛发展&#xff0c;Shopee虾皮作为东南亚地区的领先购物平台&#xff0c;吸引了大量用户。一些用户在使用过程中常常遇到登录问题&#xff0c;而登录不了的原因可能多种多样&#xff0c;包括网络连接不稳定、账号信息输入错误&#xff0c;…

【搭建个人图库】Docker部署Piwigo图库与公网环境远程传图全攻略

文章目录 前言1. 安装Docker2. 创建并启动Piwigo容器3. 本地访问测试与简单使用4. 公网远程访问本地Piwigo4.1 内网穿透工具安装4.2 创建远程连接公网地址4.3 使用固定公网地址远程访问 前言 本文和大家分享一下如何在Linux系统使用Docker部署一款开源的网络图片库管理系统Piw…

54页可编辑PPT | 大型集团企业数据治理解决方案

这份PPT是关于大型集团企业数据治理的全面解决方案&#xff0c;它详细介绍了数据治理的背景、需求、管理范围、框架、解决思路&#xff0c;以及数据治理在实际操作中的关键步骤。内容涵盖了数据架构、数据质量、数据应用等方面的问题&#xff0c;并提出了数据资产透视、智能搜索…

K8S如何基于Istio重新实现微服务

K8S如何基于Istio重新实现微服务 认识 Istio前言Istio 的理念Istio 的架构数据平面控制平面服务与 Istio 的关系 Istio 实践环境准备安装 Helm安装Istio 使用 Istio 代理运行应用情感分析应用的架构使用 Istio 代理运行应用Sidecar 注入Ingress 网关网关资源VirtualService 资源…

离线部署jdk8,jdk17, jdk21

目录 一、下载地址二、环境三、离线部署思路步骤 四、部署脚本 在开发过程中&#xff0c;有时我们需要在同一台机器上安装多个不同版本的 JDK&#xff0c;以满足不同项目的需求。本文将详细介绍如何在 Ubuntu 24.04 中离线安装 JDK8、JDK17 和 JDK21。 一、下载地址 建议下载O…

融合DevOps打造企业高效流程体系的实践与探索

一、引言 转眼间&#xff0c;我已毕业十多年&#xff0c;在IT领域深耕不辍&#xff0c;曾涉足全栈研发、大数据研发、架构设计与项目管理等多个岗位&#xff0c;更主导过公司从市场到交付再到运营的全链条流程建设。在这漫长的职业生涯中&#xff0c;一个问题始终萦绕在我心头&…

web前端练习

01 代码&#xff1a;HTML部分 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>search</title>…

华为配置BFD状态与接口状态联动实验

组网图形 图1 配置BFD状态与接口状态联动组网图 BFD简介配置注意事项组网需求配置思路操作步骤配置文件 BFD简介 为了减小设备故障对业务的影响&#xff0c;提高网络的可靠性&#xff0c;网络设备需要能够尽快检测到与相邻设备间的通信故障&#xff0c;以便及时采取措施&…

百科知识|选购指南

百科知识||选购指南 百科知识选购指南茶叶分类茶叶的味道来源茶叶制作步骤名茶其他一些茶叶的知识 百科知识 选购指南 茶叶 分类 茶叶种类: 六大茶类完美分析介绍&#xff01;茶友推荐收藏 (aboxtik.com) 1.绿茶&#xff08;发酵率0%&#xff09; 2.白茶&#xff08;发酵率…

对杨笠没有意见,但对京东有 | 生活周刊 #5

持续分享高效率工具&#xff0c;以及日常生活、个人成长、运动健康和法律案例等的内容&#xff0c;欢迎关注 &#x1f4f6; 关于杨笠 对于杨笠&#xff0c;我对她没什么偏见&#xff0c;也好奇为什么代言京东会触发这么大的反弹&#xff0c;直到我看到杨笠的冒犯的艺术&#x…

Axure垂直菜单展开与折叠

亲爱的小伙伴&#xff0c;在您浏览之前&#xff0c;烦请关注一下&#xff0c;在此深表感谢&#xff01; 课程主题&#xff1a;Axure垂直菜单展开与折叠 主要内容&#xff1a;垂直菜单单击实现展开/折叠&#xff0c;点击各菜单项显示选中效果 应用场景&#xff1a;后台菜单设…

【python实战】利用代理ip爬取Alibaba海外版数据

引言 在跨境电商的业务场景中&#xff0c;数据采集是分析市场、了解竞争对手以及优化经营策略的重要环节。然而&#xff0c;随着越来越多企业依赖数据驱动决策&#xff0c;许多跨境电商平台为了保护自身数据&#xff0c;采取了更严格的防护措施。这些平台通过屏蔽大陆IP地址或部…

专业135+总分400+西安交通大学815869(原909)信号与系统考研经验电子信息与通信工程,真题,大纲,参考书

经过将近一年的考研复习&#xff0c;终于梦圆西安交大&#xff0c;今年专业课815(和专硕869&#xff08;原909&#xff09;差不多)信号与系统135&#xff0c;总分400&#xff0c;回想这一年的复习还有很多经验和大家分享&#xff0c;希望可以对大家复习有所帮助&#xff0c;少走…

Docker 与 Yocto

Yocto项目为什么需要Docker Yocto 项目并不直接依赖 Docker&#xff0c;但在某些情况下使用 Docker 可以为 Yocto 项目提供以下具体且实际的好处&#xff1a; 1. 环境一致性&#xff1a; Yocto 构建需要一个稳定且一致的开发环境。不同的 Linux 发行版可能会有不同的库版本、…

如何实现智能图像擦除

我们在拍照时&#xff0c;往往会拍到一些路人或者杂物&#xff0c;但是这个照片又不想删掉&#xff0c;那么有没有啥方法可以把照片中的特定部分给删除&#xff0c;然后还原这部分的原始内容呢&#xff1f;有些人可能会用ps&#xff0c;但是ps操作比较复杂并且效果还不是很好&a…

Photoshop中的混合模式公式详解

图层混合简介 图层混合&#xff08;blend&#xff09;顾名思义&#xff0c;就是把两个图层混合成一个。 最基本的混合是alpha融合&#xff08;alpha compositing&#xff09;&#xff0c;这是一个遵循光的反射与透射等&#xff08;简化版&#xff09;物理学原理的混合方式。 各…

信号与系统学习:傅里叶级数

一、基本概念 1. 什么是傅里叶级数&#xff1f; 傅里叶级数是一种数学工具&#xff0c;可以将一个周期函数分解为一系列正弦和余弦函数&#xff08;即三角函数&#xff09;的和。这些正弦和余弦函数的频率是原函数的整数倍。 2. 为什么要使用傅里叶级数&#xff1f; 信号分…