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

CCF编程能力等级认证GESP—C++4级—样题1

CCF编程能力等级认证GESP—C++4级—样题1

  • 单选题(每题 2 分,共 30 分)
  • 判断题(每题 2 分,共 20 分)
  • 编程题 (每题 25 分,共 50 分)
    • 第一题 绝对素数
    • 第二题 填幻方
  • 参考答案
    • 单选题
    • 判断题
    • 编程题1
    • 编程题2

单选题(每题 2 分,共 30 分)

1、在 C++中,指针变量的大小(单位:字节)是( )

A. 2
B. 4
C. 8
D. 与编译器有关

2、以下哪个选项能正确定义一个二维数组( )

A. int a[][];
B. char b[][4];
C. double c[3][];
D. bool d[3][4];

3、在 C++中,以下哪种方式不能用于向函数传递参数()

A. 值传递
B. 引用传递
C. 指针传递
D. 模板传递

4、以下关于 C++函数的形参和实参的叙述,正确的是()

A. 形参是实参的别名
B. 实参是形参的别名
C. 形参和实参是完全相同的
D. 形参用于函数声明,实参用于函数调用

5、排序算法的稳定性是指( )

A. 相同元素在排序后的相对顺序保持不变
B. 排序算法的性能稳定
C. 排序算法对任意输入都有较好的效果
D. 排序算法容易实现

6、如果有如下二维数组定义,则 a[0][3]的值为()

int a[2][2] = {{0, 1}, {2, 3}};
A. 编译出错
B. 1
C. 3
D. 0

7、以下哪个选项能正确访问二维数组 array 的元素()

A. array[1, 2]
B. array(1)(2)
C. array[1][2]
D. array{1}{2}

8、以下哪个选项是 C++中正确的指针变量声明( )

A. int *p;
B. int p*;
C. *int p;
D. int* p*;

9、在 C++中,以下哪个关键字或符号用于声明引用()

A. pointer
B. &
C. *
D. reference

10、以下哪个递推关系式表示斐波那契数列( )

A. F(n) = F(n-1) + F(n-2) + F(n-3)
B. F(n) = F(n-1) + F(n-2)
C. F(n) = F(n-1) * F(n-2)
D. F(n) = F(n-1) / F(n-2)

11、以下哪个函数声明在调用时可以传递二维数组的名字作为参数?

A. void BubbleSort(int a[3][4]);
B. void BubbleSort(int a[][]);
C. void BubbleSort(int * a[]);
D. void BubbleSort(int ** a);

12、在 C++中,以下哪个关键字用来捕获异常( )

A. throw
B. catch
C. try
D. finally

13、在下列代码的横线处填写( ),可以使得输出是“20 10”。

#include <iostream>using namespace std;
void xchg(________________) { // 在此处填入代码int t = x;x = y;y = t;
}
int main() {int a = 10, b = 20;xchg(a, b);cout << a << " " << b << endl;return 0;
}
A. int x, int y
B. int & x, int & y
C. int a, int b
D. int & a, int & b

14、在下列代码的横线处填写( ),可以使得输出是“21”。

#include <iostream>using namespace std;int main() {int a[5];a[0] = 1;for (int i = 1; i < 5; i++)a[i] = a[i – 1] * 2;int sum = 0;for (int i = 0; i < 5; ________) // 在此处填入代码sum += a[i];cout << sum << endl;return 0;
}
A. i++
B. i += 2
C. i += 3
D. i |= 2

15、在下列代码的横线处填写( ),完成对有 n 个 int 类型元素的数组array由小到大排序。

void BubbleSort(int array[], int n) {for (int i = n; i > 1; i--)for (____________________) // 在此处填入代码if (array[j] > array[j + 1]) {int t = array[j];array[j] = array[j + 1];array[j + 1] = t;}
}
A. int j = i – 2; j >= 0; j--
B. int j = i - 1; j >= 0; j--
C. int j = 0; j < i - 1; j++
D. int j = 0; j < i; j++

判断题(每题 2 分,共 20 分)

1、C++语言中的指针变量可以指向任何类型的数据。( )

2、在 C++语言中,函数的参数默认以地址传递方式进行传递。( )

3、C++语言中的全局变量在整个程序的生命周期内都是有效的。( )

4、递推算法通常有初始值。( )

5、冒泡排序是一种稳定的排序算法。( )

6、C++语言中,如果异常发生,但没有处理异常的代码,则程序会由于一直等待处理而死机。( )

7、C++语言中的局部变量在函数调用结束后会被销毁。( )

8、&和&&都是 C++语言的运算符,*和**也都是。( )

9、如果希望设计一个函数 xchg,实现交换两个 int 变量的值,则它的声明可以写为 void xchg(int a, int b);。( )

10、已知数组 a 定义为 int a[100];,则赋值语句 a[‘0’] = 3;会导致编译错误。( )

编程题 (每题 25 分,共 50 分)

第一题 绝对素数

【问题描述】
如果一个两位数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如 13。给定两个正整数 A、B,请求出大于等于A、小于等于B 的所有绝对素数。
【输入格式】
输入 1 行,包含两个正整数 A 和 B。保证 10<A<B<100。
【输出格式】
若干行,每行一个绝对素数,从小到大输出。
【样例输入】
11 20
【样例输出】
11
13
17

第二题 填幻方

【问题描述】
在一个 N×N 的正方形网格中,每个格子分别填上从1 到N×N 的正整数,使得正方形中任一行、任一列及对角线的几个数之和都相等,则这种正方形图案就称为“幻方”(输出样例中展示了一个 3×3 的幻方)。我国古代称为“河图”、“洛书”,又叫“纵横图”。
幻方看似神奇,但当 N 为奇数时有很方便的填法:
1)一开始正方形中没有填任何数字。首先,在第一行的正中央填上1。
2)从上次填数字的位置向上移动一格,如果已经在第一行,则移到同一列的最后一行;再向右移动一格,如果已经在最右一列,则移动至同一行的第一列。如果移动后的位置没有填数字,则把上次填写的数字的下一个数字填到这个位置。
3)如果第 2 步填写失败,则从上次填数字的位置向下移动一格,如果已经在最下一行,则移到同一列的第一行。这个位置一定是空的(这可太神奇了!),把上次填写的数字的下一个数字填到这个位置。
4)重复 2、3 步骤,直到所有格子都被填满,幻方就完成了!快来编写一个程序,按上述规则,制作一个 N×N 的幻方吧。
【输入格式】
输入为一个正奇数 N,保证 3≤N≤21。
【输出格式】
输出 N 行,每行 N 个空格分隔的正整数,内容为 N×N 的幻方。
【样例输入】
3
【样例输出】
8 1 6
3 5 7
4 9 2

参考答案

单选题

题号123456789101112131415
答案DDDDACCABBABBBC

判断题

题号12345678910
答案×××××

编程题1

#include <iostream>using namespace std;
bool is_prime(int num) {if (num < 2)return false;for (int i = 2; i * i <= num; i++) {if (num % i == 0)return false;}return true;
}
int main() {int a = 0, b = 0;cin >> a >> b;for (int num = a; num <= b; num++) {if (is_prime(num)) {int reversed_num = (num % 10) * 10 + num / 10;if (is_prime(reversed_num))cout << num << endl;}}return 0;
}

编程题2

#include<bits/stdc++.h>using namespace std;
int cube[21][21];
int main() {int n = 0;cin >> n;for (int i = 0; i < n; i++)for (int j = 0; j < n; j++)cube[i][j] = 0; // 清空正方形图表int x = 0, y = n / 2;cube[x][y] = 1; // 第 1 步,第一行正中填写 1for (int d = 2; d <= n * n; d++) {int nx = (x + n - 1) % n;int ny = (y + 1) % n; // 第 2 步,向右上移动一格if (cube[nx][ny] != 0) {nx = (x + 1) % n; // 第 3 步,如果第 2 步失败,向下移动一格ny = y;}cube[nx][ny] = d; // 填写下一个数字x = nx;y = ny;}for (int i = 0; i < n; i++) { // 输出幻方cout << cube[i][0];for (int j = 1; j < n; j++)cout << " " << cube[i][j];cout << endl;}return 0;
}

相关文章:

CCF编程能力等级认证GESP—C++4级—样题1

CCF编程能力等级认证GESP—C4级—样题1 单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09;判断题&#xff08;每题 2 分&#xff0c;共 20 分&#xff09;编程题 (每题 25 分&#xff0c;共 50 分)第一题 绝对素数第二题 填幻方 参考答案单选题判断题编程题1编程题…...

Git用pull命令后再直接push有问题

在gitlab新建一个项目&#xff0c;然后拉取到本地&#xff0c;用&#xff1a; git init git pull <远程主机名> 然后就是在本地工作区增加所有文件及文件夹。再添加、提交&#xff0c;都没问题&#xff1a; 但是&#xff0c;git push出问题&#xff1a; 说明本地仓库和…...

C语言不可不敲系列:跳水比赛排名问题

目录 1题干&#xff1a; 2解题思路&#xff1a; 3代码: 4运行结果: 5总结: 1题干&#xff1a; 5位运动员参加了10米台跳水比赛&#xff0c;有人让他们预测比赛结果 A选手说&#xff1a;B第二&#xff0c;我第三&#xff1b; B选手说&#xff1a;我第二&#xff0c;E第四&am…...

Python与ArcGIS系列(二)获取地图文档

目录 0 简述1 获取当前地图文档2 获取磁盘中的地图文档3 获取地图文档的图层0 简述 本篇开始介绍实际代码操作,即利用arcpy(python 包)执行地理数据分析、数据转换、数据管理和地图自动化。通过arcpy调用ArcGIS中任意工具,将其与其他python工具结合使用,形成自己的工作流…...

Ansible自动化部署工具-role模式安装filebeat实际案例分析

语法以及实际案例 平时我们在进行日志收集的时候&#xff0c;往往会在每台机器上安装filebeat&#xff0c;并且由于每台机器运行服务的不同&#xff0c;那么收集日志的配置文件也是不一样的&#xff0c;如何快速高效的部署filebeat以及拥有不同的配置文件就是我们要思考的问题&…...

B2B企业如何打造独立站:从策略到实施的全面指南

随着数字化转型的加速&#xff0c;B2B企业越来越认识到独立站的重要性。然而&#xff0c;如何建设一个优秀的独立站&#xff0c;以及如何将独立站与企业的整体战略相结合&#xff0c;是许多企业面临的挑战。本文将详细探讨B2B企业如何从策略到实施打造一个成功的独立站。 一、…...

JAVA 中集合取交集

日常工作 经常需要取两个数据集的交集。对常用的List 和Set集合做了一个测试 public static void main(String[] args) {List<Integer> list1 Lists.newArrayList();List<Integer> list2 Lists.newArrayList();Set<Integer> set3 Sets.newHashSet();Set&l…...

Android13 Launcher3 定制

去掉Google搜索栏 aosp/packages/apps/Launcher3/src_build_config/com/android/launcher3/BuildConfig.java 修改QSB_ON_FIRST_SCREEN为false public static final boolean QSB_ON_FIRST_SCREEN false;去掉抽屉菜单&#xff0c;所有应用都放到桌面 增加控制变量 aosp/pac…...

其他word转化为PDF的方式

将 Word 文档转换为 PDF 格式&#xff0c;除了使用 COM 自动化外&#xff0c;还有其他一些方法可以在 Java 中实现。这些方法通常更加可靠和跨平台。以下是一些常用的方法&#xff1a; 1. 使用 Apache POI 和 Apache PDFBox 这种方法涉及使用 Apache POI 库读取 Word 文档&am…...

【Axure】axure rp 导入元件库和使用,主流元件库下载使用

vant 元件库下载&#xff1a;Vant4 设计资源 element UI 元件库下载&#xff1a;element ui 设计资源 Andt Design Vue 下载设计资源&#xff1a;Andt Design Vue Andt Design Pro下载设计资源&#xff1a;Andt Design Pro Arco Design 设计资源&#xff1a;Arco Design …...

ISP 处理流程

#灵感# 摆烂时间太长了&#xff0c;感觉知识忘光光了。重新学习&#xff0c;常学常新。 因为公司文档都不让摘抄、截取&#xff0c;所以内容是工作的一些自己记录和网络内容&#xff0c;不对的欢迎批评指正。 1、ISP概述 ISP是Image Signal Processor 的简称&#xff0c;也就…...

【计算思维】少儿编程蓝桥杯青少组计算思维题考试真题及解析C

【科技素养】少儿编程蓝桥杯青少组计算思维题考试真题及解析 1.天平的左右两端分别放有一些砝码&#xff0c;如下图所示&#xff0c;右边的砝码不变&#xff0c;从左边最多拿走几个砝码&#xff0c;可以使天平左右两边平衡&#xff1a; A、1 B、2 C、3 D、4 2.把下面的图形…...

百望云斩获“新华信用金兰杯”ESG优秀案例 全面赋能企业绿色数字化

近年来&#xff0c;中国ESG蓬勃发展&#xff0c;在政策体系构建、ESG信披ESG投资和国际合作等方面都取得了阶段性成效&#xff0c;ESG生态不断完善。全社会对ESG的认识及实践也在不断深化&#xff0c;ESG实践者的队伍在不断发展壮大。 ESG作为识别企业高质量发展的重要指标&…...

bclinux aarch64 ceph 14.2.10 对象存储 http网关 CEPH OBJECT GATEWAY Civetweb

相关内容 bclinux aarch64 ceph 14.2.10 文件存储 Ceph File System, 需要部署mds&#xff1a; ceph-deploy mds-CSDN博客 ceph-deploy bclinux aarch64 ceph 14.2.10【3】vdbench fsd 文件系统测试-CSDN博客 ceph-deploy bclinux aarch64 ceph 14.2.10【2】vdbench rbd 块设…...

2023年亚太杯数学建模思路 - 复盘:人力资源安排的最优化模型

文章目录 0 赛题思路1 描述2 问题概括3 建模过程3.1 边界说明3.2 符号约定3.3 分析3.4 模型建立3.5 模型求解 4 模型评价与推广5 实现代码 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 描述 …...

【广州华锐互动】VR居家防火逃生模拟演练增强训练的真实性

VR软件开发公司广州华锐互动在消防培训领域已开发了多款VR产品&#xff0c;今天为大家介绍VR居家防火逃生模拟演练系统&#xff0c;这是一种基于虚拟现实技术的消防教育训练设备&#xff0c;通过模拟真实的火灾场景&#xff0c;让使用者身临其境地体验火灾逃生过程&#xff0c;…...

PaddleClas学习1——使用PPLCNet模型对车辆属性进行识别(python)

使用PPLCNet模型对车辆属性进行识别 1. 配置PaddlePaddle,PaddleClas环境1.1 安装PaddlePaddle(1)创建 docker 容器(2)退出/进入 docker 容器(3) 安装验证1.2 安装python3.8(可选)1.3 安装 PaddleClas2. 模型推理2.1 下载官方提供的车辆属性模型2.2 基于 Python 预测引…...

CSS 实现新拟态(Neumorphism) UI 风格

什么是新拟态(Neumorphism) UI 风格&#xff1f;网上似乎还没有一个准确统一的定义。按照我个人的通俗理解&#xff0c;就是将界面的一部分凸起来&#xff0c;另一部分凹下去&#xff0c;形成的一种错落有致的拟物风格。代表作是乌克兰设计师 Alexander Plyuto 在各平台发布的新…...

js 深度学习(六)

立即执行函数 immediate invoked function expression 自动执行 执行完成后立即释放 (function(){var a 1,b2;console.log(ab) }()) // w3c建议 (function(a,b){return ab; })(a,b); // 可以加参数 可以有返回值表达式才能被执行符号执行&#xff0c;被小括号包裹的是表达式…...

【机器学习基础】机器学习的模型评估(评估方法及性能度量原理及主要公式)

&#x1f680;个人主页&#xff1a;为梦而生~ 关注我一起学习吧&#xff01; &#x1f4a1;专栏&#xff1a;机器学习 欢迎订阅&#xff01;后面的内容会越来越有意思~ &#x1f4a1;往期推荐&#xff1a; 【机器学习基础】机器学习入门&#xff08;1&#xff09; 【机器学习基…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

C++中string流知识详解和示例

一、概览与类体系 C 提供三种基于内存字符串的流&#xff0c;定义在 <sstream> 中&#xff1a; std::istringstream&#xff1a;输入流&#xff0c;从已有字符串中读取并解析。std::ostringstream&#xff1a;输出流&#xff0c;向内部缓冲区写入内容&#xff0c;最终取…...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

作为测试我们应该关注redis哪些方面

1、功能测试 数据结构操作&#xff1a;验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化&#xff1a;测试aof和aof持久化机制&#xff0c;确保数据在开启后正确恢复。 事务&#xff1a;检查事务的原子性和回滚机制。 发布订阅&#xff1a;确保消息正确传递。 2、性…...