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

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

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

一、单项选择题(共20题,每题3.5分,共70分)

CP2_2_1.下列C++程序段中,对二维数组arr的定义不正确是(  )。

A.

int arr[2][3];  

B.

int n=3;

int arr[n-1][n];  

C.

#define n 3;

int arr[n][n];  

D.

#define N 3;

int arr[N-1][N];  

CP2_2_2.在C++中,下列对二维数组x1进行初始化的语句,正确的是(  )。

A.int x1[3][3]={0};

B.int x1[3][ ]={{1},{2},{3}};

C.int x1[2][2]= {{0},{0},{0}};

D.int x1[2][ ]={1,2,3,4};

CP2_2_3 在C++中,若有定义:

int arr[ ][3]={{0,1},{2,3},{4,5,6},{7,8,9}};

则数组arr的行数是(  )。

A.2  

B.3  

C.4  

D.9  

CP2_2_4.在C++中,下列程序段可以将变量n的地址赋给指针变量p的是(  )。

A.

int *p = &n,n=6;

B.

int n;

int *p = &n;

C.

int *p,n;

*p = &n;

D.

int n;

float *p;

p = &n;

CP2_2_5.在C++中,若有定义:int x,y,*q1,*p1=&x; 则下列赋值语句不正确的是(  )。

A.*q1=*p1=10;

B.*p1=50;

C.q1=p1;

D.p1=&y;

CP2_2_6.在C++中,若有定义float y[4],*py=y; 则下列表达式不正确的是(  )。

A.*py=0.5  

B.py+=1  

C.y++  

D.*y=1.5  

CP2_2_7.在C++中,执行下列程序,若x1,x2分别输入:10和20,则输出的结果是(  )。

#include <iostream>

using namespace std;

void swap(int *p1,int *p2)

{

int temp;

temp =*p1,*p1=*p2,*p2=temp;

    cout << *p1 << ” ” << *p2 << endl;

}

int main()

{

int x1 ,x2;

    cin>>x1>>x2;

    swap(&x1,&x2);

cout << x1 << ” ” << x2 << endl;

return 0;

}

A.10 20

   10 20

B.10 20

   20 10

C.20 10

   10 20

D.20 10

   20 10

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

#include <string>

#include <iostream>

using namespace std;

int main()

{  string str="butter";

   cout << str[5] << endl;

   return 0;

}

A.e

B.er

C.butte

D.r

CP2_2_9.阅读下列框图。设i,n为整型变量,若给i,n分别输入2和7,则s的输出结果是(  )。

A.48

B.720

C.120

D.8

CP2_2_10.执行下列程序,若给a,b,c,d分别输入7 5 3 1,则输出的结果是(  )。

#include <iostream>

using namespace std;

int main()

{

int a,b,c,d,flag=1;

    cin>>a>>b>>c>>d;

if (a>b)

     if (a<c)

       if (a>d)

      flag=2;

       else

      flag=3;

     else

           flag=4;

     cout << flag << endl;

return 0;

}

A.1

B.2

C.3

D.4

CP2_2_11.执行下列程序,若输入:246,则输出的结果是(  )。

#include <iostream>

using namespace std;

int main()

{ char c;

  while((c=cin.get())!='\n')

      {

 switch(c-'1')

         {

case 0:

          case 1: cout<< 'A';

          case 2: cout<< 'B';break;

          case 3: cout<< 'C'; break;

          default:cout<< 'D';

}

      }

  return 0;

}

A.ABCD 

B.ABBD

C.AB

D.CD

CP2_2_12.执行下列程序,最后一行输出的结果是(  )。

#include <iostream>

using namespace std;

int main()

{

int i,j;

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

{

for(int j = 1;j < 5;j++)

cout<< i+j << " ";

cout << endl;

}

return 0;

}

A.3 4 5 6

B.2 3 4 5

C.4 5 6 7

D.1 2 3 4

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

#include <iostream>

using namespace std;

int main(  )

{

    int i,j,n,result=0;

for(i=2;i<=5;i++)

{   j=1;

    n=1;

do

{

 n=n*j;

 j++;

}while(j<=i);

result=result+n;

}

cout << result;

}

A.30

B.144

C.150

D.152

CP2_2_14.执行下列程序,输出的“#”个数是(  )。

#include <iostream>

using namespace std;

int main()

{

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

{

for(int j=0;j<8;j++)

{

if(j==i+1)

break;

cout << "#";

    }

cout << '\n';

}

return 0;

}

A.15个

B.21个

C.35个

D.48个

CP2_2_15.在C++中,若定义了函数:

int min(int x, int y)

{

int z;

if(x > y)

    z = y;

else

    z = x;

return z;

}

下列对其进行函数声明的语句中,正确的是(  )。

A.int min(int x; int y);

B.int min(int , int);

C.int min(int a; int b);

D.int min(int x, y);

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

#include <iostream>

using namespace std;

void f1(int x, int y)

{

   x=x+y; y=x-y;   

   cout << x <<" " << y << endl;

}

int main( )

{

    int a=30,b=60;

    f1(a,b);                

    cout << a << " " << b << endl;

    return 0;

}

A.

90 30

30 60

B.

90 30

90 30

C.

30 60

30 60

D.

30 60

90 30

CP2_2_17.执行下列程序,输出的结果是(  )

#include <iostream>

using namespace std;

void Sort(int b[ ],int n);

int main( )

{

  int a[10] = {70,98,63,75,58,80,45, 32,73,36};

  Sort(a,10);

  cout << a[9] << "," << a[0] << endl;

}

void Sort(int b[ ], int n)  

{

  int i,j,t;

  for (i=1; i<n; i++)

     for (j=0; j<n-i; j++ )

        if (b[j]>b[j+1])   {t=b[j];b[j]=b[j+1];b[j+1]=t;}

}

A.98,70

B.36,70

C.98,32

D.36,32

CP2_2_18.执行下列程序,输出的结果是(  )

#include <iostream>

using namespace std;

void sub1(int &x,int y)

{

    x*=2;

y/=2;

cout << x << "," << y << endl;

}

int main()

{

int n1=15,n2=15;

sub1(n1,n2);

cout << n1 << "," << n2 << endl;

return 0;

}

A.

30,7

15,15

B.

30,7

30,15

C.

30,7.5

30,7.5

D.

30,7.5

15,15

CP2_2_19.执行下列程序,若给n输入5,输出的结果是(  )。

#include <iostream>

using namespace std;

int s2(int n)

{

  return  n+2;

}

int s1(int n)

{

int i,a=0;

  for (i=n; i>0; i--)  

      a+=s2(i);

  return a ;

 }

int main()

{

int n;

cin >> n;

cout << s1(n) << endl;

return 0;

}

A.5

B.10

C.18

D.25

CP2_2_20.执行下列程序,若给i,n分别输入3和4,输出的结果是(  )。

输出结果是(  )。

#include <iostream>

#include <cmath>

using namespace std;

int f(int x,int n)

{

    if(n == 0)

return 1;

    else

return x*pow(x,n-1);

}

int main()

{

int i,n;

cin >> i >> n;

cout << f(i,n) << endl;

return 0;

}

A.9

B.12

C.64

D.81

二、编程题(共2题,每题15分,共30分)

CP2_2_21:

编写程序,其功能是:求一个4×4整型二维数组中第2行元素之和,并输出结果。

样例:

输入:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

输出:26

CP2_2_22:

编写程序计算一个人的体重指数(BMI),国际上是通过计算公式来计算的,BMI的公式=体重(公斤)/身高(米)的平方。计算出的体重指数按照我国标准分类为:BMI<18.5(偏瘦)。18.5 <=BMI<25(标准),BMI≥25(偏胖)。完成计算,判断其类别并输出。

说明:

(1)设体重的范围30-150kg,身高的范围1.3-2.2m。若输入的体重,或身高不在范围内,则直接输出NO。

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

样例1:

输入:75 1.75         //体重:75(kg),身高:1.75(m)

输出:24.4898 标准    //BMI:24.4898,类别:标准

样例2:

输入:88 1.66

输出:31.935 偏胖

样例3:

输入:192 1.80

输出:NO

#include <iostream>

#include <cmath>

using namespace std;

void f(float w,float h)

{

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

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

}

int main()

{

float Weight,Height;

cin >> Weight >> Height;        // Weight代表体重,Height代表身高

if (Weight<30 || Weight>150||Height<1.3||Height>2.2)   

   {  

      cout << "NO" <<endl;

      return 0;

   }

    f(Weight,Height);

return 0;

}

相关文章:

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

青少年编程能力等级测评CPA C&#xff08;二级&#xff09;试卷&#xff08;2&#xff09; 一、单项选择题&#xff08;共20题&#xff0c;每题3.5分&#xff0c;共70分&#xff09; CP2_2_1&#xff0e;下列C程序段中&#xff0c;对二维数组arr的定义不正确是&#xff08; &…...

aws 把vpc残留删除干净

最近忘了把vpc 删干净导致又被收了冤大头钱 在删除vpc 的收发现又eni在使用&#xff0c;但是忘了是哪个资源在占用 先用命令行把占用的资源找出来停掉 使用 AWS 命令行界面&#xff08;CLI&#xff09;来查看 VPC 的使用情况 列出子网&#xff1a; aws ec2 describe-subnets …...

平衡二叉树最全代码

#include<stdio.h> #include<stdlib.h>typedef struct Node {int val;int height;struct Node *left;struct Node *right; }Node;//创建新结点 Node* newNode(int val) {Node *node (Node*)malloc(sizeof(Node));node->val val;node->height 1;node->l…...

数据库表的创建

运用的环境是pychram python3.11.4 创建一个表需要用到以下语法 注释已经写清楚各种语法的含义&#xff0c;记住缩进是你程序运行的关键&#xff0c;因为程序是看你的缩进来判断你的运行逻辑&#xff0c;像我这个就是缩进不合理导致的报错 那么今天分享就到这里&#xff0c;谢…...

【MySQL 数据库】之--基础知识

1. MySQL 数据库基础概念 数据库: 逻辑上存储和管理数据的集合。MySQL 是一个常用的关系型数据库管理系统。 2. 创建数据库 要创建一个新的数据库&#xff0c;可以使用 CREATE DATABASE 语句。 语法: CREATE DATABASE 数据库名; 示例: CREATE DATABASE my_database; 注意事…...

Flume面试整理-如何处理Flume中的数据丢失

在Apache Flume中,数据丢失是一个可能出现的严重问题,特别是在处理大规模数据时。数据丢失通常会发生在数据从Source(源)到Channel(通道),或从Channel到Sink(汇)传输的过程中。如果不处理得当,Flume的崩溃或网络故障可能会导致丢失的数据无法恢复。以下是几种常见的F…...

文件处理新纪元:微信小程序的‘快递员’与‘整理师’

嗨&#xff0c;我是中二青年阿佑&#xff0c;今天阿佑将带领大家如何通过巧妙的文件处理功能&#xff0c;让用户体验从‘杂乱无章’到‘井井有条’的转变&#xff01; 文章目录 微信小程序的文件处理文件上传&#xff1a;小程序的“快递服务”文件下载&#xff1a;小程序的“超…...

应付账款优化,自动化管理5要点

优化应付账款流程对企业现金流至关重要。通过自动化、规范采购订单、管理供应商、设计高效流程及保留数字记录&#xff0c;可显著提升效率与精确度。ZohoBooks在线财务记账软件助您简化应付账款处理&#xff0c;确保业务顺畅。 1、自动化您的应付账款流程 通过自动化你的应付账…...

Win安装Redis

目录 1、下载 2、解压文件并修改名称 3、前台简单启动 4、将redis设置成服务后台启动 5、命令启停redis 6、配置文件设置 1、下载 【下载地址】 2、解压文件并修改名称 3、前台简单启动 redis-server.exe redis.windows.conf 4、将redis设置成服务后台启动 redis-server -…...

手把手带你安装U9【win10+sql+U9】,同样适用U9C的安装

一、Win10操作系统设置 1、Windows 10内置账号administrator启用 a、登录到Windows 10系统以后,鼠标右键点击桌面左下角“win图标”,在弹出画面选择“命令提示符(管理员)”或”windows power shell(管理员)”,如下图: b、在”命令提示符(管理员)”或”windows power sh…...

若依前后端框架学习——新建模块(图文详解)

若依框架—新建模块 一、项目地址1、后端启动2、前端启动 二、生成代码1、添加菜单2、创建表结构3、生成代码2、编辑一些基本信息&#xff0c;然后点击提交3、生成代码&#xff0c;压缩包里有前端和后端代码 三、配置后端模块1、新建模块2. 修改pom.xlm2.1 修改第一个pom.xml 2…...

【LaTeX和Word版】写论文时如何调整公式和文字的间距

在撰写论文时&#xff0c;公式和文字段落的间距可能会显得不一致&#xff0c;特别是插入的公式占用单独一行时。这种情况下&#xff0c;可以通过以下两种方法来调整公式和文字段落的间距&#xff0c;使论文排版看起来更加整齐和一致。 1. 使用 LaTeX 调整段落间距 (1) 调整行…...

快乐数--双指针

一&#xff1a;题目 题目链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 二&#xff1a;算法原理 三&#xff1a;代码编写 int Sum(int n){int sum 0;while(n){sum pow(n%10,2);n / 10;}return sum;}bool isHappy(int n) {int slow n,fast Sum(n);while(slow …...

论文阅读-三维结构几何修复(导-4)

摘要 解决了3D数字模型中大洞修复的问题。 通过基于字典学习的方法解决了缺失区域推断问题&#xff0c;该方法利用从单个自相似结构和在线深度数据库中得出的几何先验。利用几何先验提供的线索&#xff0c;从洞的边界周围自适应地传播局部3D表面平滑性来恢复底层表面。在合成…...

数字货币交易所源码开发:场外(OTC)与币币交易所系统的构建指南

在区块链技术迅速发展的推动下&#xff0c;数字货币市场的需求大幅增加。数字货币交易所作为加密货币的主要交易场所&#xff0c;成为了开发者和企业关注的焦点。市场上有多种交易模式可供选择&#xff0c;最常见的是场外交易&#xff08;OTC&#xff09;和币币交易。本篇文章将…...

C++ 进阶:类相关特性的深入探讨

⭐在对C 中类的6个默认成员函数有了初步了解之后&#xff0c;现在我们进行对类相关特性的深入探讨&#xff01; &#x1f525;&#x1f525;&#x1f525;【C】类的默认成员函数&#xff1a;深入剖析与应用&#xff08;上&#xff09; 【C】类的默认成员函数&#xff1a;深入剖…...

C++ 多态、虚析构、模板类、常函数、虚继承、虚函数和纯虚函数相关知识和问题总结

1. C 中的多态 多态&#xff08;Polymorphism&#xff09;是面向对象编程中的一个重要特性&#xff0c;它允许使用相同的接口来表示不同的类型。由于派生类重写基类方法&#xff0c;然后用基类引用指向派生类对象&#xff0c;调用方法时候会进行动态绑定&#xff0c;这就是多态…...

计算机组成原理一句话

文章目录 计算机系统概述存储系统指令系统 计算机系统概述 指令和数据以同等地位存储在存储器中&#xff0c;形式上没有差别&#xff0c;但计算机应能区分他们。通过指令周期的不同阶段。 完整的计算机系统包括&#xff0c;1&#xff09;软件系统&#xff1a;程序、文档和数据&…...

【Linux】僵尸进程和孤儿进程

一、僵尸进程 何为僵尸进程&#xff1f; 在 Unix/Linux 系统中&#xff0c;正常情况下&#xff0c;子进程是通过父进程创建的&#xff0c;且两者的运行是相互独立的&#xff0c;父进程永远无法预测子进程到底什么时候结束。当一个进程调用 exit 命令结束自己的生命时&#xff…...

Patchcore运行过程

论文github地址&#xff1a;https://github.com/amazon-science/patchcore-inspection 平台&#xff1a;autodl云服务器 1.将下载的代码上传到autodl-tmp/PatchCore里面解压&#xff0c;将数据集上传path_to_mvtec_folder/mvtec里&#xff0c;目录结构如图 2.安装依赖 cd au…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

【决胜公务员考试】求职OMG——见面课测验1

2025最新版&#xff01;&#xff01;&#xff01;6.8截至答题&#xff0c;大家注意呀&#xff01; 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:&#xff08; B &#xff09; A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...

HTML前端开发:JavaScript 常用事件详解

作为前端开发的核心&#xff0c;JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例&#xff1a; 1. onclick - 点击事件 当元素被单击时触发&#xff08;左键点击&#xff09; button.onclick function() {alert("按钮被点击了&#xff01;&…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定&#xff0c;这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中&#xff0c;积分电荷法最为常用&#xff0c;其原理是通过测量在电容器上积累的热释电电荷&#xff0c;从而确定热释电系数…...

JVM虚拟机:内存结构、垃圾回收、性能优化

1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...

【堆垛策略】设计方法

堆垛策略的设计是积木堆叠系统的核心&#xff0c;直接影响堆叠的稳定性、效率和容错能力。以下是分层次的堆垛策略设计方法&#xff0c;涵盖基础规则、优化算法和容错机制&#xff1a; 1. 基础堆垛规则 (1) 物理稳定性优先 重心原则&#xff1a; 大尺寸/重量积木在下&#xf…...

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

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