GESP C++ 2024年06月一级真题卷
一、单选题(每题 2 分,共 30 分)
答案:A
解析:标识符命名规则,标识符由字母、数字和下划线组成,第一个字符不能是数字
答案:D
解析:
在 C++ 中,表达式 3 - 3 * 3 / 5
的值是由运算符优先级决定的。运算符优先级规则是:
- **乘法(
*
)和除法(/
)优先级高于加法(+
)和减法(-
)。 - 乘法和除法按从左到右的顺序进行计算。
让我们逐步计算 3 - 3 * 3 / 5
:
-
计算乘法和除法:
3 * 3
先计算得到9
。- 然后
9 / 5
。由于这是整数除法,结果是1
(在 C++ 中,整数除法会舍去小数部分)。
-
计算减法:
- 最后计算
3 - 1
,结果是2
。
- 最后计算
所以,表达式 3 - 3 * 3 / 5
的值是 2
。
答案:B
解析:
N % 3 最大是2,N % 7最大的6,所以2+6=8
答案:C
解析:
-
格式化字符串
printf("5%%2={%d}\n", 5 % 2)
:5%%2
中的%%
会被解释为单个%
,因为在printf
中,%%
是表示输出%
字符的方式。{%d}
表示一个占位符,它将被后面的表达式5 % 2
的结果替换。5 % 2
是取模运算,结果为1
。
-
替换后:
- 结果将是
5%2={1}
。
- 结果将是
最终输出:
因此,执行后的输出是 C. 5%2={1}。
答案:B
解析:
在 C++ 中,语句 cin >> i
从标准输入中读取一个整数,并将其存储在整型变量 i
中。那么当输入 5+2
时,程序的行为如下:
分析:
-
输入处理:
- 当使用
cin >> i
时,cin
会读取输入的字符,直到遇到第一个非数字字符为止(即读取到空格、非数字字符等时停止)。在输入5+2
的情况下,cin
将首先读取数字5
,然后遇到+
符号,输入过程停止,并将5
存储在变量i
中。 +2
部分将留在输入缓冲区中,尚未处理。
- 当使用
-
输出处理:
cout << i
将输出存储在变量i
中的值,此时i
中存储的是5
,因此输出将是5
。
结论:
- B. 将输出 5 是正确的。

答案:C
解析:%.0f
格式化符表示输出浮点数并省略小数部分(即输出为整数形式)。
答案:C
解析:按照优先级:括号>乘、除和取模>加减
9/4-6%4*10=2-2*10=-18

答案:C
解析:输入10,10%3=1,所以输出“第五行代码”,注意%2d,输出两个字符,1是一个字符,不够用空格填充

答案:C
解析:
主要i++和++i的区别:
i++是先赋值后计算,++i是先计算后赋值
分析循环和语句:
-
初始声明:
int Sum = 0, i = 0;
声明并初始化两个整型变量Sum
和i
,它们的初始值都是0
。
-
for 循环:
for ( ; i < 10; )
:- 这里没有指定初始化表达式和迭代表达式,只有一个循环条件
i < 10
。 - 循环的内容是
Sum += i++;
。这行代码先将i
的当前值加到Sum
中,然后再将i
自增。
- 这里没有指定初始化表达式和迭代表达式,只有一个循环条件
-
循环执行过程:
- 第一次循环:
i
为0
,Sum
变为0
(Sum += 0
),然后i
自增为1
。 - 第二次循环:
i
为1
,Sum
变为1
(Sum += 1
),然后i
自增为2
。 - 第三次循环:
i
为2
,Sum
变为3
(Sum += 2
),然后i
自增为3
。 - 以此类推,直到
i
达到10
。
- 第一次循环:
-
循环结束后:
- 当
i
增加到10
时,循环条件i < 10
不再满足,循环退出。 Sum
的最终值是0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 = 45
。
- 当
-
输出:
cout << i << " " << Sum;
输出i
的值和Sum
的值。- 此时,
i
的值是10
,Sum
的值是45
。

答案:C
解析:
分析程序:
- N 的值输入:程序首先要求用户输入一个整数
N
。 - 判断条件:
- 如果
N >= 2
,程序将Flag
设为true
,并开始检查N
是否能被 2 到N-1
之间的任何数整除。 - 如果
N
在这个范围内被某个数整除,Flag
会被设为false
并退出循环。 - 最终,
Flag
的值决定了N
是否为质数。如果Flag
为true
,输出 "是质数";否则输出 "不是质数"。
- 如果
分析选项:
A. 如果输入负整数,可能输出“是质数”
- 错误。如果输入负整数,由于
N < 2
,Flag
将保持false
,所以输出 "不是质数"。这个选项描述不准确。
B. 如果输入2,将输出“不是质数”,因为此时循环不起作用
- 错误。当
N == 2
时,循环不会执行,但Flag
在if (N >= 2)
之后被设为true
,因此会输出 "是质数"。
C. 如果输入2,将输出“是质数”,即便此时循环体没有被执行
- 正确。对于
N == 2
,程序不会进入for
循环,因为循环条件i < N
不成立。但是Flag
被设为true
,所以输出 "是质数"。
D. 如果将 if (N >= 2)
改为 if (N > 2)
将能正确判断N是否质数
- 错误。如果将条件改为
if (N > 2)
,输入2
时Flag
不会被设置为true
,输出将错误地显示 "不是质数"。

答案:C
解析:
选项C:将 i += 1 移到 if (i % 2 == 1) 前一行,先执行i += 1 ,i直接变成了2,那么sum就加不了1了

答案:D
解析:略

答案:D
解析:
分析程序:
i=0,i*i<64,所以i<8,i每次自增2,所以符合条件的i分别是0,2,4,6一个4个数,合计计数4次,所以cnt是4
答案:C
解析:scratch、python和c++三种
答案:B
解析:
计算机的发展一般分为三个主要阶段,每个阶段对应着技术的重大进步和计算机性能的显著提高。
第一阶段:电子管计算机(1940s-1950s)
- 时间范围:1940年代至1950年代。
- 主要技术:使用电子管作为主要的逻辑元件。
- 代表机型:ENIAC、UNIVAC、IBM 701。
- 特点:体积庞大、功耗高、发热量大,运算速度相对较慢。主要用于科学计算和军事应用。
第二阶段:晶体管计算机(1950s-1960s)
- 时间范围:1950年代中期至1960年代。
- 主要技术:使用晶体管替代电子管。
- 代表机型:IBM 1401、IBM 7090。
- 特点:体积显著减小,功耗和发热量大幅降低,可靠性提高,运算速度明显提升。晶体管的发明使计算机更小、更快、更可靠,推动了商业计算机的普及。
第三阶段:集成电路计算机(1960s-至今)
- 时间范围:1960年代至今。
- 主要技术:使用集成电路(IC),后期发展为超大规模集成电路(VLSI)。
- 代表机型:IBM System/360、Apple II、IBM PC、现代的个人计算机和服务器。
- 特点:计算机的性能、存储容量和运算速度持续提高,成本不断降低,体积越来越小。计算机进入家庭和办公场所,普及应用在各个领域。
二、判断题(每题 2 分,共 20 分)
答案:错
解析:
如果x是int类型

答案:错
解析:

答案:对
解析:略
答案:错
解析:是5*2
答案:错
解析:是5*2
答案:对
解析:略
答案:错
解析:
printf
不是一个关键字,而是一个标准库函数的名称。printf
是 C 标准库中的函数,用于格式化输出。 
答案:错
解析:因为 //
是 C++ 中的注释符号,用于表示单行注释。//
后面的内容会被视为注释,不会参与计算。
N += 8/4//2
实际上等价于 N += 8/4
,即 N += 2
。
答案:错
解析:
在 C++ 中,表达式 !!N
是一种将变量 N
转换为布尔值(0 或 1)的技巧。让我们详细分析这个表达式的含义和行为。
解释 !!N
-
单一否定
!N
:!N
是逻辑非运算符,用于将N
转换为布尔值。- 如果
N
的值为0
,则!N
为true
(布尔值1
)。 - 如果
N
的值非0
,则!N
为false
(布尔值0
)。
-
双重否定
!!N
:!!N
先对N
应用一次逻辑非运算符!
,然后再对结果应用一次逻辑非运算符!
。- 所以,
!!N
结果会是true
(1)或false
(0),具体取决于N
是否为零。- 如果
N
为0
,则!N
是true
(1),!!N
结果是false
(0)。 - 如果
N
非零,!N
是false
(0),!!N
结果是true
(1)。
- 如果
结论
!!N
的值不会等于N
的值,而是将N
转换为布尔值后再进行转换:N
为0
时,!!N
的值是0
。N
为非0
时,!!N
的值是1
。
#include <iostream>
using namespace std;int main() {int N1 = 5; // 非零值int N2 = 0; // 零值cout << "!!N1 = " << !!N1 << endl; // 输出: 1cout << "!!N2 = " << !!N2 << endl; // 输出: 0return 0;
}
在这个示例中:
!!N1
的结果是1
,因为N1
是非零值。!!N2
的结果是0
,因为N2
是零值。
因此,!!N
的值是 N
的布尔表示,转换为 0
或 1
。
答案:对
解析:略
三、编程题(每题 25 分,共 50 分)
编程题 1

#include<bits/stdc++.h>
using namespace std;
int main(){int h,m,s;cin>>h>>m>>s;int k;cin>>k;int now=h*60*60+m*60+s;now+=k;int hh = now/3600;now %= 3600;int mm = now/60;now %= 60;cout<<hh<<" "<<mm<<" "<<now<<"\n";return 0;
}
编程题 2

#include <bits/stdc++.h>
using namespace std;int main() {int n; // 定义一个整数变量 ncin >> n; // 从标准输入读取一个整数值并存储在变量 n 中int fl = 0; // 定义并初始化标志变量 fl,初始值为 0// 遍历从 1 到 n 的每个整数 ifor (int i = 1; i <= n; i++) {// 如果 i 的立方等于 nif (i * i * i == n) {fl = 1; // 设置标志变量 fl 为 1break; // 跳出循环,因为找到了满足条件的 i}}// 根据标志变量 fl 的值输出结果if (fl)cout << "Yes\n"; // 如果 fl 为 1,输出 "Yes"elsecout << "No\n"; // 如果 fl 为 0,输出 "No"return 0; // 程序成功结束
}
相关文章:

GESP C++ 2024年06月一级真题卷
一、单选题(每题 2 分,共 30 分) 第 1 题 在 C 中,下列不可做变量的是 ( ) 。 A. five-Star B. five_star C. fiveStar D. _fiveStar 答案:A 解析:标识符命名规则,标识符由字母、数…...

在 Ubuntu Server 上配置静态 IP 地址
在 Ubuntu Server 上配置静态 IP 地址 测试时使用的Ubuntu server版本是22.04 一、Ubuntu 17.10之前版本 使用 ifupdown 配置文件来设置静态 IP。配置文件通常位于 /etc/network/interfaces。 1.1 编辑 /etc/network/interfaces 文件: sudo vim /etc/network/in…...

数据结构——栈的讲解(超详细)
前言: 小编已经在前面讲完了链表和顺序表的内容,下面我们继续乘胜追击,开始另一个数据结构:栈的详解,下面跟上小编的脚步,开启今天的学习之路! 目录 1.栈的概念和结构 1.1.栈的概念 1.2.栈的结构…...

三防平板助力MES系统,实现工厂移动式生产报工
在当今竞争激烈的制造业环境中,提高生产效率、优化生产流程以及实现精准的生产管理已经成为企业生存和发展的关键。 MES系统作为连接企业计划层和控制层的桥梁,在实现生产过程的信息化、数字化和智能化方面发挥着重要作用。与此同时,三防平板…...

WEB渗透Bypass篇-常规函数绕过
常规函数绕过 <?php echo exec(whoami);?> ------------------------------------------------------ <?php echo shell_exec(whoami);?> ------------------------------------------------------ <?php system(whoami);?> ------------------------…...

C++从入门到起飞之——string类的模拟实现 全方位剖析!
🌈个人主页:秋风起,再归来~🔥系列专栏:C从入门到起飞 🔖克心守己,律己则安 目录 1、多文件之间的关系 2、模拟实现常用的构造函数 2.1 无参构造函数 2.2 有参的构造函数 2.3 析构函…...

数据库国产化大趋势下,还需要学习Oracle吗?
由于众所周知的原因,近两年各行各业都开始了数据库国产化替代的进程,从国外商业数据库替换到国产或者开源数据库,相信很多的数据库从业人员会把部分精力转移到其他数据库产品的学习中,也有一些人在大肆的宣扬Oracle已经过时了&…...

WebLogic
二、WebLogic 2.1 后台弱口令GetShell 漏洞描述 通过弱口令进入后台界面,上传部署war包,getshell 影响范围 全版本(前提后台存在弱口令) 漏洞复现 默认账号密码:weblogic/Oracle123weblogic常用弱口令: Default Passwords | CIRT.net这里注意&am…...

Aspose.Words.dll 插入模板表格,使用的是邮件合并MailMerge功能,数据源是DataTable或list对象,实例
本实例中的实例功能有: 1、 Aspose.Words.dll 插入模板指定域替换为文字或html标签,见1 2、Aspose.Words.dll 插入模板表格,使用的是邮件合并MailMerge功能,数据源是DataTable或List对象(将list转换成DataTable),见1和2 3、word转换Pdf文件,见1 4、将多个word输出文…...

同时打开多个微信
注: 以下方法用到的 D:\微信\WeChat\WeChat.exe是我的电脑微信路径,可右击桌面微信快捷方式 > 属性 > 目标查看 以下方法都需要先关掉已登录的微信后操作 <一> 找到微信路径 新建一个txt文件输入以下内容 start D:\微信\WeChat\WeChat.exe …...

MPU6050的STM32数据读取
目录 1. 概述2. STM32G030对MPU6050的读取3. STM32F1xx对MPU6050的读取 1. 概述 项目中,往往需要根据不同的环境使用不同的芯片处理某些数据,当使用不同的芯片对六轴陀螺仪芯片MPU6050进行数据处理中,硬件的连接、I/O口的设置往往需要根据相…...

【微信小程序开发】——奶茶点餐小程序的制作(二)
👨💻个人主页:开发者-曼亿点 👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨💻 本文由 曼亿点 原创 👨💻 收录于专栏:…...

Java 文件上传七牛云
Java系列文章目录 文章目录 Java系列文章目录一、前言二、学习内容:三、问题描述四、解决方案:4.1 新建空间4.2 查找密钥4.3 进入开发者中心查找JavaSDK文档4.4 查找文件上传方法4.5 运行测试 五、总结:5.1 学习总结: 一、前言 学…...

大语言模型生成无人系统(如机械臂、无人机等)可以执行的指令序列
大语言模型生成无人系统(如机械臂、无人机等)可以执行的指令序列涉及将自然语言指令转化为具体的、可执行的指令集合。以下是一个详细的流程,展示了如何从自然语言指令生成无人系统的执行指令序列。 1. 输入自然语言指令 用户输入自然语言指…...

尚硅谷谷粒商城项目笔记——十、调试前端项目renren-fast-vue【电脑CPU:AMD】
十、调试前端项目renren-fast-vue 如果遇到其他问题发在评论区,我看到后解决 1 先下载安装git git官网下载地址 2 登录gitee搜索人人开源找到renren-fast-vue复制下载链接。【网课视频中也有详细步骤】 3 下载完成后桌面会出现renren-fast-vue的文件夹 4 开始调…...

Python 的元组和列表的区别是什么?
以下是 Python 中元组(tuple)和列表(list)的主要区别: 1. 语法表示:元组使用小括号 () 来定义,例如 (1, 2, 3) ;列表使用方括号 [] 来定义,例如 [1, 2, 3] 。 2. 可变性…...

【Impala】学习笔记
Impala学习笔记 【一】Impala介绍【1】简介(1)简介(2)优点(3)缺点 【2】架构(1)Impalad(守护进程)(2)Statestore(存储状态…...

视频汇聚平台EasyCVR接入移动执法记录仪,视频无法播放且报错500是什么原因?
GB28181国标视频汇聚平台EasyCVR视频管理系统以其强大的拓展性、灵活的部署方式、高性能的视频能力和智能化的分析能力,为各行各业的视频监控需求提供了优秀的解决方案。视频智能分析平台EasyCVR支持多协议接入,兼容多类型的设备,包括IPC、NV…...

【Linux基础】Linux基本指令(二)
目录 🚀前言一,mv指令二,more & less指令2.1 more 指令2.1 less指令 三,重定向技术(重要)3.1 echo指令3.2 输出重定向 >3.3 追加重定向 >>3.4 输入重定向 < 四,head & tail指令4.1 head 指令4.2 t…...

全面介绍 Apache Doris 数据灾备恢复机制及使用示例
引言 Apache Doris 作为一款 OLAP 实时数据仓库,在越来越多的中大型企业中逐步占据着主数仓这样的重要位置,主数仓不同于 OLAP 查询引擎的场景定位,对于数据的灾备恢复机制有比较高的要求,本篇就让我们全面的介绍和示范如何利用这…...

Python pandas常见函数
Pandas库 基本概念读取数据数据处理数据输出其他常用功能 pip install pandas基本概念 数据结构 Series: 一维数据结构 import pandas as pd data pd.Series([10, 20, 30, 40], index[a, b, c, d]) print(data)DataFrame: 二维数据结构 data {Name: [Alice, Bob, Charlie],Ag…...

行业落地分享:阿里云搜索RAG应用实践
最近这一两周看到不少互联网公司都已经开始秋招提前批了。 不同以往的是,当前职场环境已不再是那个双向奔赴时代了。求职者在变多,HC 在变少,岗位要求还更高了。 最近,我们又陆续整理了很多大厂的面试题,帮助一些球友…...

【SQL】温度比较
目录 题目 分析 代码 题目 表: Weather ------------------------ | Column Name | Type | ------------------------ | id | int | | recordDate | date | | temperature | int | ------------------------ id 是该表具有唯…...

Istio 项目会往用户的 Pod 里注入 Envoy 容器,用来代理 Pod 的进出流量,这是什么设计模式?
Istio 项目会往用户的 Pod 里注入 Envoy 容器,用来代理 Pod 的进出流量,这是什么设计模式? A. 装饰器 B. sidecar C. 工厂模式 D. 单例 选择B Sidecar模式是一种设计模式,它将应用程序的一部分功能作为单独的进程实现ÿ…...

(24)(24.1) FPV和仿真的机载OSD(三)
文章目录 前言 5 呼号面板 6 用户可编程警告 7 使用SITL测试OSD 8 OSD面板列表 前言 此面板允许在机载 OSD 屏幕上显示业余无线电呼号(或任何其他单个字符串)。它将从 SD 卡根目录下名为“callsign.txt”的文件中读取字符串。 5 呼号面板 此面板允…...

测试开发岗面试总结
某基金管理公司线下测试开发面试题总结。 测开题目如下 可以尝试自己先写,写完之后再去看参考解法哦 ~ 1、编写一段代码,把 list 的数平方(语言不限) ListA [1, 3, 5, 7, 9, 11] 2、使用 Python 语言编写一个日志装饰器 3、进程、线程、协程有什么…...

编程-设计模式 7:桥接模式
设计模式 7:桥接模式 定义与目的 定义:桥接模式将抽象部分与它的实现部分分离,使得它们都可以独立地变化。目的:该模式的主要目的是解耦一个类的抽象部分与其实现部分,使得这两部分可以独立地发展和变化。 实现示例…...

C语言----结构体
结构体 结构体的含义 自定义的数据类型 它是由很多的数据组合成的一个整体,结构型数据 其中的每一个数据,都是结构体的成员 书写的位置: 函数的里面:局部位置,只能再本函数中使用 函数的外面:全局位置,在所有的函数中都可以…...

基于HKELM混合核极限学习机多输出回归预测 (多输入多输出) Matlab代码
基于HKELM混合核极限学习机多输出回归预测(多输入多输出)Matlab代码 每个输出都有以下线性拟合图等四张图!!!具体看图,独家图像!!! 程序已经调试好,替换数据集根据输出个数修改out…...

经纬恒润荣获小米汽车优秀质量奖!
小米SU7上市已超百天,在品质经过客户严选的同时,产量与交付量屡创新高,6-7月连续两个月交付量均超过10000台。为奖励对小米汽车质量和交付做出卓越贡献的合作伙伴团队及个人,小米向质量表现突出的供应商授予了优秀质量奖。经纬恒润…...