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

GESP C++ 2024年03月一级真题卷

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

1 题 C++表达式 (3 - 2) * 3 + 5 的值是(   )。

A. -13
B. 8
C. 2
D. 0

答案:B

解析:略

2 C++ 语句 cout << "5%2=" << 5 % 2 执行后的输出是 (  )。
A. 2 2
B. 1 1
C. 5%2=2
D. 5%2=1

答案:D

解析:略

3 执行C++ 语句 cin >> a 时如果输入 5+2 ,下述说法正确的是( )。
A. 变量 a 将被赋值为整数 7
B. 变量 a 将被赋值为字符串,字符串内容为 5+2
C. 语句执行将报错,不能输入表达式
D. 依赖于变量 a 的类型。如果没有定义,会有编译错误

答案:D

解析:

4 下面 C++ 代码执行后的输出是( )。
A. a+1= 2
B. a+1=2
C. 2=2
D. 2= 2

答案:A

解析:粗看感觉A,B都对,主要选项A 等于号后面多了个空格,因为代码中的双引号

"a+1= "是这样的
5 下面 C++ 代码执行后的输出是( )。
A. a+1= 2
B. a+1=2
C. 2=2
D. 2= 2

答案:B

解析:参考第4题,主要是仔细看

6 下面 C++ 代码执行时输入 21 后,有关描述正确的是( )。
A. 代码第 4 行被执行
B. 4 和第 7 行代码都被执行
C. 仅有代码第 7 行被执行
D. 8 行代码将被执行,因为 input() 输入为字符串

答案:A

解析:分支结构,选择符合要求的语句执行,21能被3整除,所以执行第4行

7 下面 C++ 代码第 2 行,总共被执行次数是( )。
A. 10
B. 19
C. 20
D. 21

答案:B

解析:从-10到9,注意中间还有0

8 下面 C++ 代码执行后的输出是( )。
A. 0
B. 7
C. 18
D. 20

答案:D

解析:

分析:

  1. 初始化变量 tnt = 0

  2. for 循环从 i = 0 开始,i 每次递增 1,直到 i = 9(因为 i < 10)。

  3. 在每次循环中,检查 i % 3i % 7 的结果是否都不为零。

    • i % 3 计算 i 除以 3 的余数。
    • i % 7 计算 i 除以 7 的余数。
    • 如果 i % 3 不为零且 i % 7 不为零,则执行 tnt += i;

逐步计算:

  • i = 0 时,i % 3 = 0,条件不满足,不执行加法。
  • i = 1 时,i % 3 = 1i % 7 = 1,条件满足,tnt += 1tnt = 1
  • i = 2 时,i % 3 = 2i % 7 = 2,条件满足,tnt += 2tnt = 3
  • i = 3 时,i % 3 = 0,条件不满足,不执行加法。
  • i = 4 时,i % 3 = 1i % 7 = 4,条件满足,tnt += 4tnt = 7
  • i = 5 时,i % 3 = 2i % 7 = 5,条件满足,tnt += 5tnt = 12
  • i = 6 时,i % 3 = 0,条件不满足,不执行加法。
  • i = 7 时,i % 7 = 0,条件不满足,不执行加法。
  • i = 8 时,i % 3 = 2i % 7 = 1,条件满足,tnt += 8tnt = 20
  • i = 9 时,i % 3 = 0,条件不满足,不执行加法。
9 下面 C++ 代码执行后的输出是( )。
A. 9#6#3#
B. 9#6#3#0#
C. 8#7#5#4#2#1#
D. 10#8#7#5#4#2#1#

答案:B

解析:

分析:

  1. 初始化变量 N = 10
  2. while(N) 循环在 N 不为零的情况下持续执行。
  3. 每次循环中,N 减 1,然后检查 N % 3 == 0
    • N % 3 计算 N 除以 3 的余数。
    • 如果 N % 3 == 0,则输出 N 的值,后跟 #

逐步计算:

  • 初始 N = 10
    • N -= 1 -> N = 9
    • N % 3 == 0 (因为 9 % 3 == 0),输出 9#
  • N = 9
    • N -= 1 -> N = 8
    • N % 3 != 0 (因为 8 % 3 == 2),不输出。
  • N = 8
    • N -= 1 -> N = 7
    • N % 3 != 0 (因为 7 % 3 == 1),不输出。
  • N = 7
    • N -= 1 -> N = 6
    • N % 3 == 0 (因为 6 % 3 == 0),输出 6#
  • N = 6
    • N -= 1 -> N = 5
    • N % 3 != 0 (因为 5 % 3 == 2),不输出。
  • N = 5
    • N -= 1 -> N = 4
    • N % 3 != 0 (因为 4 % 3 == 1),不输出。
  • N = 4
    • N -= 1 -> N = 3
    • N % 3 == 0 (因为 3 % 3 == 0),输出 3#
  • N = 3
    • N -= 1 -> N = 2
    • N % 3 != 0 (因为 2 % 3 == 2),不输出。
  • N = 2
    • N -= 1 -> N = 1
    • N % 3 != 0 (因为 1 % 3 == 1),不输出。
  • N = 1
    • N -= 1 -> N = 0
    • N % 3 == 0 (因为 0 % 3 == 0),输出 0#
  • N = 0
    • 循环结束(因为 N = 0,条件 while(N) 不再满足)。
10 下面 C++ 代码用于判断键盘输入的整数是否为质数。质数是只能被 1 和它本身整除的数。在横线处应填入代码是( )。
A. N % i
B. N % i == 0
C. N / i == 0
D. N / i

答案:B

解析:根据题目横线上应该填写,N是否能被i整除,质数是只能被1和它本身整除的数,如果cnt是2,那么就是质数,否则就不是质数

11 下面关于整型变量 int x 的赋值语句不正确是 ( )
A. x=(3.16);
B. x=3.16;
C. x=int(3.16);
D. x=3.16 int;

答案:D

解析:

  • A. x=(3.16); 虽然有括号,但没有语法错误,这将把 3.16 隐式转换为整数 3,然后赋值给 x
  • B. x=3.16; 将 3.16 隐式转换为整数 3,然后赋值给 x
  • C. x=int(3.16); 先将 3.16 显式转换为整数 3,再赋值给 x
12 C++ 语言中下面可以完成数据输入的语句是( )。
A. printf 语句
B. scanf 语句
C. default 语句
D. cout 语句

答案:B

解析:略

13 Dev C++ 中对一个写好的 C++ 源文件要生成一个可执行程序需要执行下面哪个处理步骤?( )
A. 创建
B. 编辑
C. 编译
D. 调试

答案:C

解析:略

14 小杨的父母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是?()
A. 小程序
B. 计时器
C. 操作系统
D. 神话人物

答案:C

解析:略

15 中国计算机学会( CCF )在 2024 1 27 日的颁奖典礼上颁布了王选奖,王选先生的重大贡献是( )。
A. 制造自动驾驶汽车
B. 创立培训学校
C. 发明汉字激光照排系统
D. 成立方正公司

答案:C

解析:略

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

1 C++ 代码中变量 n 被赋值为 27 ,则 cout << n%10 执行后输出的是 7 ( )

答案:对

解析:略

2 C++ 语句 printf("%d#%d&",2,3) 执行后输出的是 2#3& ( )

答案:对

解析:略

3 C++ 函数 scanf() 必须含有参数,且其参数为字符串型字面量,其功能是提示输入。( )

答案:错

解析:

在 C++ 中,scanf() 函数的参数必须是格式化字符串,用于指定如何读取输入的数据。虽然格式化字符串通常是一个字符串型字面量,但这个字符串不是用来提示输入的,而是用来指定如何解释输入数据。例如,"%d" 用于读取一个整数,"%f" 用于读取一个浮点数。

另外,scanf() 的功能不是提示输入,而是从标准输入中读取数据并将其存储到指定的变量中。提示输入通常是通过 printf()cout 实现的,而不是 scanf()

因此,正确的说法应该是:scanf() 函数的参数必须包含一个格式化字符串,用于指定如何读取输入的数据。scanf() 的功能是从标准输入读取数据,并将其存储到相应的变量中,而不是提示输入。

4 C++ 表达式 "10"*2 执行时将报错,因为 "10" 是字符串类型而 2 是整数类型,它们数据类型不同,不能在一 起运算。( )

答案:对

解析:略

5 C++ 中, while 可能是死循环,而 for 循环不可能是死循环。( )

答案:错

解析:while可能是死循环,而for循环也可能是死循环。

#include <iostream>int main() {for (;;) {std::cout << "This is an infinite loop!" << std::endl;}return 0;
}
6 C++ break 语句用于提前终止当前层次循环,适用于 while 循环,但不适用于 for 循环。( )

答案:错

解析:

在 C++ 中,break 语句可以用于提前终止当前层次的循环,并且它不仅适用于 while 循环,还同样适用于 for 循环。

正确的解释:

  • break 语句用于立即退出包含它的循环,不论该循环是 for 循环、while 循环还是 do-while 循环。
  • 一旦执行了 break 语句,程序会跳出当前循环,继续执行循环后面的代码。
7 C++ 语言中 3.0 3 的值相等,所以它们占用的存储空间也相同。( )

答案:错

解释:

  • 在 C++ 中,33.0 是不同的数据类型。3 是一个整数(int 类型),而 3.0 是一个浮点数(double 类型)。
  • 虽然在数值上它们是相等的,但由于它们的数据类型不同,所占用的存储空间也不同。

存储空间:

  • int 类型通常占用 4个字节(32位),但这可能会因平台或编译器的不同而有所不同。
  • double 类型通常占用 8个字节(64位),用来表示更大的范围和更精确的数值。

因此,虽然 33.0 在值上相等,但它们的数据类型和所占用的存储空间是不同的。

8 C++ 的程序中, cin 是一个合法的变量名。( )

答案:对

解析:

9 小杨今年春节回奶奶家了,奶奶家的数字电视可以通过遥控器输入电视剧名称来找到想播放的电视剧,所以 可以推知里面有交互式程序在运行。( )

答案:对

解析:略

10 任何一个 for 循环都可以转化为等价的 while 循环( )。

答案:对

解析:略

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

编程题 1

试题名称 :小杨买书
3.1.1
题面描述
小杨同学积攒了一部分零用钱想要用来购买书籍,已知一本书的单价是 13 元,请根据小杨零用钱的金额,编写程序计算最多可以购买多少本书,还剩多少零用钱。
3.1.2 输入格式
输入一个正整数m ,表示小杨拥有的零用钱数。
3.1.3 输出格式
输出包含两行,第一行,购买图书的本书,第二行剩余的零用钱数。
3.1.4 样例 1
3.1.5 样例 2
3.1.6 参考程序
#include<bits/stdc++.h>
using namespace std;
int main(){int m;cin >> m;cout << m / 13 << endl;cout << m % 13 << endl;return 0;
} 

编程题 2

试题名称 :找因数
3.2.1 问题描述
A 最近刚刚学习了因数的概念,具体来说,如果一个正整数a可以被另一个正整数b整除,那么我们就说b是a的因数。
请你帮忙写一个程序,从小到大输出正整数a的所有因数。
3.2.2 输入描述
输入一行一个正整数a 。保证a<=1,000 。
3.2.3 输出描述
输出若干行,为a的所有约数,从小到大排列。
3.2.4 特别提醒
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。

 

3.2.11 参考程序
#include<bits/stdc++.h>
using namespace std;
int main(){int a;cin >> a;for (int i = 1; i <= a; ++i) {if (a % i == 0) {cout << i << endl;}}return 0;
} 

 

相关文章:

GESP C++ 2024年03月一级真题卷

一、单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09; 第 1 题 C表达式 (3 - 2) * 3 5 的值是( )。 A. -13 B. 8 C. 2 D. 0 答案&#xff1a;B 解析&#xff1a;略 第 2 题 C 语句 cout << "5%2" << 5 % 2 执行后的输出是…...

Linux驱动开发基础(Hello驱动)

所学内容来自百问网 目录 1. 文件在内核中的表示 2. 打开字符设备节点时&#xff0c;内核中也有对应的struct file 3. 编写驱动程序步骤 4. 相关知识点 4.1 涉及函数解析 4.2 module_init/module_exit的实现 4.3 register_chrdev的内部实现 4.4 class_destroy/device_…...

centos7安装 ES集群 elasticsearch

这里写自定义目录标题 编写启动脚本 elasticsearch.sh启动可能报错&#xff1a;elasticsearch 7.10启动报错 bootstrap checks failed解决方法问题原因&#xff1a;注意 退出xshell&#xff0c;重新登录&#xff1a; 上面两个配置项改完后&#xff0c;ES启动用户(es 或root) **…...

互联网应用主流框架整合【Redis数据结构及常用命令】

在大部分情况下我们使用Redis只是执行一些简单的命令操作&#xff0c;通常无需区分是否是在一个连接池里的同一个链接去执行&#xff0c;如果需要执行多条命令&#xff0c;需要保证命令在同一个链接里完成&#xff0c;则采用SessionCallback接口操作即可 Redis数据结构-字符串…...

GORM 自动迁移与命名策略

在现代软件开发中&#xff0c;数据库结构的维护和迁移是常见的挑战之一。GORM&#xff0c;作为 Go 语言中强大的 ORM 库&#xff0c;提供了自动迁移功能&#xff0c;帮助开发者轻松地管理数据库表结构的变更。此外&#xff0c;GORM 还允许开发者通过命名策略&#xff08;Naming…...

python社会科学问题研究的计算实验

实验十五&#xff1a;社会科学问题研究的计算实践 1.实验目标及要求 &#xff08;1&#xff09;掌握网络视角 &#xff08;2&#xff09;掌握社会网络基础内容 &#xff08;3&#xff09;掌握友谊悖论 2.实验主要内容 随机生成一次符合社会网络特征的网络&#xff0c;通过计…...

Element Plus 发布 2.8.0

功能特性 组件更新 [color-picker] alpha-slider a11y (#14245 by tolking)添加 mention 组件 (#17586 by Fuphoenixes)[tree-v2] 添加 scrollTo 方法 (#14050 by kaine0923)[drawer] 添加 append-to 属性 (#17761 by tolking)[table] tree children 添加严格检查 (#13519 by t…...

解释区块链技术的应用场景和优势-水文

区块链技术是一种去中心化的分布式账本技术&#xff0c;其应用场景和优势如下&#xff1a; 金融领域&#xff1a;区块链可以用于加密货币交易&#xff0c;提供安全的、去中心化的支付系统。它也可以用于股票、债券和其他金融交易的记录和结算&#xff0c;提高交易的透明度和效率…...

等保测评基础知识(一)

1、时间类&#xff1a; 网络安全法&#xff1a; 2017年6月1日等保2.0实施时间&#xff1a; 2019年12月1日密码法&#xff1a; 2020年1月1日个人信息保护法&#xff1a; 2021年11月1日&#xff0c;数据安全法实施时间&#xff1a; 2021年9月1日关键信息基础…...

股指期货套期保值中的展期管理有哪些?

在复杂的金融市场环境中&#xff0c;展期作为一种重要的风险管理工具&#xff0c;被广泛应用于期货交易中&#xff0c;特别是当投资者需要对长期资产进行套期保值时。展期的核心思想在于&#xff0c;通过连续替换高流动性的近月期货合约来替代流动性较差的远月合约&#xff0c;…...

如何通过参考文献找到原文

当只有参考文献想要获取原文时&#xff0c;通常会用到以下方法&#xff1a; 举例参考文献1. 杨忠华,周勃,宁宝宽,等.面向新能源产业的专业研究生研创能力培养实践探索——基于“政产学研用”融合驱动[J].高教学刊,2024,10(23):19-22.DOI:10.19980/j.CN23-1593/G4.2024.23.004…...

春秋云境 | SQL | CVE-2022-4230

目录 靶标介绍 开启靶场 wpscan漏洞介绍 查询数据库表名 查询表中字段名 查询字段下数据 靶标介绍 WP Statistics WordPress 插件13.2.9之前的版本不会转义参数&#xff0c;这可能允许经过身份验证的用户执行 SQL 注入攻击。默认情况下&#xff0c;具有管理选项功能 (ad…...

3.串口(UART)

串口理论部分可看51部分&#xff1a;链接 数据帧 帧头(2字节&#xff0c;例如AA、BB) 数据长度&#xff08;2字节&#xff09; 数据 CRC16校验&#xff08;2字节&#xff09; 帧尾&#xff08;2字节&#xff09; 代码编写 串口一发送命令控制LED灯(PB5、PE5) LED灯、串口、…...

macOS Sonoma 14.6.1 (23G93) Boot ISO 原版可引导镜像下载

macOS Sonoma 14.6.1 (23G93) Boot ISO 原版可引导镜像下载 2024 年 8 月 8 日凌晨&#xff0c;macOS Sonoma 14.6.1 发布&#xff0c;本更新包含了重要的错误修复&#xff0c;并解决了导致高级数据保护无法启用或停用的问题。同时带来了 macOS Ventura 13.6.9 安全更新。 本…...

论企业私域流量运营中的玩法创新与开源 AI 智能名片 O2O 商城小程序的应用

摘要&#xff1a;本文旨在探讨企业在构建私域流量池时的多种玩法策略&#xff0c;并着重分析如何针对不同类型客户制定个性化方案。同时&#xff0c;引入开源 AI 智能名片 O2O 商城小程序这一工具&#xff0c;阐述其在私域流量运营中的重要作用和价值&#xff0c;为企业提升运营…...

nginx.conf alias 静态资源 别名 nginx配置

Linux系统Bug 报权限不足错误 user root; 解决server_name太长时报错的问题 #解决server_name太长时报错的问题server_names_hash_bucket_size 64; 解决文件上传默认限制1M的问题 #解决文件上传默认限制1M的问题client_max_body_size 100m; 监听所有端口 server_name _; a…...

pve虚拟机使用

文章目录 1.pve 直通硬盘 1.pve 直通硬盘 查看硬盘号&#xff1a; ls /dev/disk/by-id -lqm set 101 --virtio1 /dev/disk/by-id/usb-HIKSEMI__93963907-0:0挂载sata类型&#xff1a; qm set 101 --sata1 /dev/disk/by-id/ata-ST4000DM004-2U9104_WFN7TMVV可以将一个硬盘挂…...

Linux:进程概念详解

1. 冯诺依曼体系结构 截至目前&#xff0c;我们所认识的计算机&#xff0c;都是有一个个的硬件组件组成 。 【注意】&#xff1a; a. 这里的存储器指的是内存 b. 不考虑缓存情况&#xff0c;这里的CPU能且只能对内存进行读写&#xff0c;不能访问外设(输入或输出设备) c.外…...

cms框架cookice注入漏洞

目录 一、环境 二、开始分析 2.1代码审计&#xff08;未授权访问&#xff09; 一、环境 环境私聊获取 二、开始分析 2.1代码审计&#xff08;未授权访问&#xff09; 我们可以看到构造函数ip是通过X_FORWARDED_FOR来获取的&#xff0c;而这个刚好可以伪造&#xff0c;那我…...

RabbitMQ高级特性 - 非持久化 / 持久化(交换机、队列、消息)

文章目录 RabbitMQ 持久化机制概述实现非持久化(交换机、队列、消息)实现持久化(交换机、队列、消息)RabbitMQ 持久化机制 概述 前面讲到了 生产者消息确认机制 和 消费者消息确认机制,保证了消息传输的可靠性,但是这还不够,试想如果 Broker 突然崩溃,那么所有的 交换…...

OpenGL ES->工作机制

渲染流程 渲染目的&#xff1a;输入3D立体坐标&#xff0c;输出绘制后的2D平面像素工作流程&#xff1a;顶点着色器->图元装配->几何着色器->光栅化->片段着色器->测试与混合&#xff0c;整个工作流程被封装在GPU内部&#xff0c;无法改变。运行在CPU的代码调用…...

ue4.27 C++ 解析内容为json的字符串

json字符串为 R"({"x": -1870.0, "y": -11400.0})"&#xff0c;里面内容是个json对象。 const FString& Message R"({"x": -1870.0, "y": -11400.0})"; TSharedRef<TJsonReader<>> Reader TJs…...

图论③ | Java | 孤岛的总面积、沉没孤岛、水流问题 、建造最大岛屿

101. 孤岛的总面积 卡玛 101. 孤岛的总面积 https://kamacoder.com/problempage.php?pid1173 孤岛是那些位于矩阵内部、所有单元格都不接触边缘的岛屿。 本题要求找到不靠边的陆地面积&#xff0c;那么我们只要从周边找到陆地然后 通过 dfs或者bfs 将周边靠陆地且相邻的陆地都…...

基于VEH的无痕HOOK

这里的无痕HOOK指的是不破坏程序机器码,这样就可以绕过CRC或MD5的校验。 VEH利用了Windows的调试机制和异常处理,人为抛出异常,从异常的上下文中获取寄存器信息。 DLL入口 // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" #include "CHoo…...

芯片内部如何实现过欠压功能?

大家好,这里是大话硬件。 在前面通过推送《芯片内部如何实现VREF参考稳压源?》实现了芯片内部VREF功能,今天分享一下芯片内部是如何实现过欠压保护。 UC3842芯片系列的数据手册如下: 从上面的描述可知,芯片在工作时,需要电压达到16V,但是电压跌落到10V后,芯片就不能工…...

Basic‘ attribute type should not be a container解决方法

在使用Spring Data JPA的时候&#xff0c;实体类中定义一个用List修饰的成员ip&#xff0c;IDEA会提示Basic‘ attribute type should not be a container错误&#xff0c;导致编译不通过。 查阅一些博客和文档说是Spring Data JPA这个框架会把实体类的属性当做是MySQL数据库中…...

Linkis-RPC的设计思想

我的技术网站 java-broke.site&#xff0c;有大厂完整面经&#xff0c;工作技术&#xff0c;架构师成长之路&#xff0c;等经验分享 Linkis-RPC的设计目标是提供一种灵活、可扩展的微服务间通信机制&#xff0c;支持以下功能&#xff1a; 异步请求与响应&#xff1a;支持请求方…...

31 - memmove()函数

文章目录 1 函数原型2 参数3 返回值4 示例 1 函数原型 memmove()&#xff1a;移动内存块&#xff0c;函数原型如下&#xff1a; void * memmove ( void * destination, const void * source, size_t num );cstring库描述如下&#xff1a; Move block of memory 1. Copies th…...

【深度学习】创建和训练Transformer神经网络模型,将葡萄牙语翻译成英语

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言1. 安装2. 数据处理2.1 下载数据集2.2 设置标记器2.3 使用tf.data设置数据管道 3. 测试数据集4. 定义组件4.1 嵌入和位置编码层4.2 添加并规范化4.3 基础注意力…...

[Qt][多元素控件]详细讲解

目录 0.前言1.List Widget2.Table Widget3.Tree Widget 0.前言 Qt中提供的多元素控件有&#xff1a; 列表&#xff1a; QListWidgetQListView 表格&#xff1a; QTableWidgetQTableView 树形&#xff1a; QTreeWidgetQTreeView Widget和View之间的区别&#xff0c;以QTableWi…...