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

CCF-GESP 等级考试 2024年3月认证C++三级真题解析

2024年3月真题

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

在这里插入图片描述
正确答案:D
考察知识点:数据编码
解析:机器数是计算机中对数字的二进制表示形式,首位表示符号,0表示正数,1表示负数,其余位为数值位。真值是数字的实际值。常见二进制表示形式(数据编码)有原码、反码、补码。
原码:符号位加上真值的绝对值的二进制表示。
反码:正数的反码与原码相同;负数的反码是对其原码除符号位外的所有位取反。
补码:正数的补码与原码相同;负数的补码是其反码加 1。

[-5] = [1000000000000101]原[1000 0000 0000 0101]_{原}[1000000000000101]=[1111111111111010]反[1111 1111 1111 1010]_{反}[1111111111111010]=[1111111111111011]补[1111 1111 1111 1011]_{补}[1111111111111011]=[FFFB]补[F F F B]_{补}[FFFB]。答案为D。

在这里插入图片描述
正确答案:C
考察知识点:数据编码、位运算
解析:计算机中,存储数据采用其补码形式,而补码可以不考虑符号直接进行运算。
按位左移(<<):整体左移,右边补0,左边丢弃。 a<<b a*2^(b):a乘2的b次方
-4为-2的二倍,可用 -2<<1 来求解 -4。
-2 = [FFFE][FFFE][FFFE] = [1111111111111110]2[1111111111111110]_2[1111111111111110]2
-2<<1 = [1111111111111100]2[1111111111111100]_2[1111111111111100]2 = [FFFC][FFFC][FFFC]。答案为C。

在这里插入图片描述
正确答案:C
考察知识点:进制转换、位运算
解析:按位或(|):按位进行运算:对应位都为0,结果为0,否则为1。
3|16 = 00011200011_2000112 | 10000210000_2100002 = 10011210011_2100112=19,答案为C。

在这里插入图片描述
在这里插入图片描述
正确答案:B
考察知识点:进制转换、数据编码、位运算
解析:在计算机中,有符号整数以补码存储。-5 的补码是1111111111111011补1111 1111 1111 1011_补1111111111111011,左移1位结果为:1111111111110111补1111 1111 1111 0111_补1111111111110111,右移一位结果为1111111111111011补1111 1111 1111 1011_补1111111111111011,依然是-5。答案为 B。

在这里插入图片描述
正确答案:C
考察知识点:字符类型、ASCII码、字符串操作
解析:本题代码实现的功能是将字符串s中所有字符的ASCII码累加起来。字符’0’的ASCII码是48,字符’3’的ASCII码是51,字符’1’的ASCII码是49,字符’6’的ASCII码是54,累加和为154,答案为C。

在这里插入图片描述
在这里插入图片描述
正确答案:C
考察知识点:基本数据类型
解析:本题代码中将满足条件:a[i]%2&&a[i]%3(不能被2整除且不能被3整除) 的数组元素置为0。则最终能被2整除或者能被3整除的数组元素仍然大于0,答案为C。

在这里插入图片描述
正确答案:A
考察知识点:一维数组
解析:第一个for循环给数组元素逐个赋值,a[i]=i+1。i是定义在循环外部,因此第一个循环执行完毕,i的值为20,即第二个循环循环变量的初始值为20,则输出的第一个值为a[20-1]的值,即20,答案为A。

在这里插入图片描述
正确答案:C
考察知识点:字符串及其操作
解析:本题代码实现的功能将字符串str中的所有字母转成大写字母,遍历整个字符串,当检测到小写字母时,将其转成大写字母。横向处填写小写字母转大写字母的代码,答案选 C。

在这里插入图片描述
在这里插入图片描述
正确答案:C
考察知识点:字符串及其操作
解析:代码通过统计空格的数量来间接统计单词数(单词数 = 空格数 + 1):
遍历字符串,遇到空格时,nwords 加 1,并跳过后续连续的空格(while(str[++i]==’ '))。
最终 nwords 的值为空格的数量,单词数为 nwords + 1。
字符串 str 中有 3 个空格(分隔 gESP 与 is、is 与 Interesting、Interesting 与 !),因此 nwords = 3。答案为C。

在这里插入图片描述
正确答案:C
考察知识点:字符类型、ASCII码、进制
解析:ASCII编码的范围为0~127。
B选项0开头,8进制,转成十进制为61。
C选项0x开头,16进制,转成十进制为112。
D选项0x开头,16进制,转成十进制为96。
都在合理范围内,且C最大。答案为C。

在这里插入图片描述
正确答案:D
考察知识点:数组
解析:第一个循环给数组元素逐个赋值,a[i]=i+1。循环变量 i 定义在循环外部,因此两个循环公用,第二个循环循环变量初始值为20,从后往前,当相邻两个元素的和不是3的倍数时,cnt自增1。19+18、18+17、16+15、15+14、13+12、12+11、10+9、9+8、7+6、6+5、4+3、3+2。共12个,答案为D。

在这里插入图片描述
在这里插入图片描述
正确答案:A
考察知识点:字符数组
解析:字符数组部分初始化,未初始化的部分值为0,即字符’\0’。字符数组存储字符串,字符串的长度为’\0’之前的字符个数,因此本题中str的字符串长度为4,答案为A。

在这里插入图片描述
正确答案:B
考察知识点:位运算
解析:按位或(|):按位进行运算:对应位都为0,结果为0,否则为1。
a | b = 3|16 = 00011200011_2000112 | 10000210000_2100002 = 10011210011_2100112= 19;
a+b=3+16=19。答案为B。

在这里插入图片描述
正确答案:C
考察知识点:计算机基础
解析:鸿蒙通常指华为公司发布的鸿蒙操作系统,是一款基于微内核的面向全场景的分布式操作系统。它旨在打破不同设备之间的壁垒,让多种设备通过系统直接连通,实现应用程序在手机、平板电脑、电视、智能手表、智能家电等多种设备上的跨端运行。答案为C。

在这里插入图片描述
正确答案:C
考察知识点:计算机历史
解析:王选,是中国著名计算机学家,重大贡献:发明汉字激光照排系统、华光系列和方正电子出版系统等。答案为C。

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

在这里插入图片描述
正确答案:错误
考察知识点:数据编码
解析:整数的原码、反码、补码相同。表述错误。

在这里插入图片描述
正确答案:错误
考察知识点:位运算符-左移运算符
解析:这里的<<为左移运算符,作用是将整数的二进制形式整体左移,右边补0,左边丢弃。 表述错误。

在这里插入图片描述
在这里插入图片描述
正确答案:错误
考察知识点:流程控制语句-循环
解析:这段代码的说法错误。穷举法是逐一列举所有可能的情况来寻找答案,而此代码是通过循环依次累加 1 到 100 的数,采用的是累加求和的方法,并非穷举法。代码运行后会计算出 1 到 100 的累加和为 5050 并输出。表述错误。

在这里插入图片描述
正确答案:错误
考察知识点:位运算-按位左移、按位右移
解析:按位左移(<<):整体左移,右边补0,左边丢弃。
按位右移(>>):整体右移,正数左边补0,负数左边补1,右边丢弃。
若a为负数,左移2位,左边丢弃2位,可能改变a的符号;再进行右移,高位根据此时a的符号进行补位,可能会导致结果与原 a 不同。所以执行操作 (a << 2) >> 2 后的值不一定是 a。表述错误。

在这里插入图片描述
正确答案:错误
考察知识点:进制、位运算-按位左移
解析:0开头表示这个数是一个八进制数,因此需要先将其转成二进制再进行左移1位的运算。(010)——>(10)8(10)_8(10)8——>(001000)2(001000)_2(001000)2,左移1位的结果:(010000)2(010000)_2(010000)2,转成十进制为16。表述错误。

在这里插入图片描述
正确答案:正确
考察知识点:字符串及其操作
解析:str.find(s1), 在字符串str中从查找字符串或者字符,找到返回第一次出现的下标,找不到返回-1。显然字符串中存在字符串"s",且第一次出现的下标为2。表述正确。

在这里插入图片描述
正确答案:错误
考察知识点:字符数组
解析:数组一旦完成定义,其大小即固定,无法调整。字符数组也遵循这个规则。表述错误。

在这里插入图片描述
正确答案:正确
考察知识点:数组
解析:可以用简单循环找到其中最小的整数。首先假设数组的第一个元素为最小值,然后通过循环遍历数组剩下的元素,若遇到比当前最小值还小的元素,就更新最小值,最终得到数组中的最小整数。表述正确。

在这里插入图片描述
正确答案:正确
考察知识点:计算机基础
解析:路由器的主要功能是连接不同的网络(如将家庭局域网连接到互联网),并为连接的设备分配 IP 地址等网络参数,实现网络数据的转发等。能让数字电视设置 IP 地址并接入以收看节目,说明该 WIFI 盒子可以为设备分配 IP 地址等网络相关功能,具备路由器的基本功能。表述正确。

在这里插入图片描述
正确答案:正确
考察知识点:控制语句结构-循环
解析:本题考察 while 循环和 for 循环,他们之间可以进行等价转化。表述正确。

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

在这里插入图片描述
在这里插入图片描述

本题考察:字符串操作。

#include<bits/stdc++.h>
using namespace std;
int main(){int n, sum=0;string s;cin>>n>>s;for(int i=0;i<n;i++){if(s[i]>='a'&&s[i]<='z') sum+=s[i]-'a'+1; //小写字母转成对应的数字else sum-=s[i]; //大写字母转成对应的数字}cout<<sum;return 0;
}

在这里插入图片描述
在这里插入图片描述

本题考察 枚举算法:列出所有的可能性,判断是否符合要求。

#include<bits/stdc++.h>
using namespace std;
int main(){int n,a[1005]={},cnt=0;cin>>n;for(int i=1;i<=n;i++) cin>>a[i];for(int i=1;i<=n;i++){for(int j=i+1;j<=n;j++){int m=a[i]+a[j]; //计算a[i]+a[j], 保证i<j//判断m是否是完全平方数:存在两个相同的整数相乘等于这个数int t=sqrt(m);   //计算m的平方根,转成整数if(t*t==m) cnt++;  }}cout<<cnt;return 0;
}
http://www.dtcms.com/a/470375.html

相关文章:

  • 本地部署 DeepSeek 私有助手:从零到上线的完整方案
  • CTF攻防世界WEB精选基础入门:weak_auth
  • 石家庄网站建设蓝点公路建设网站
  • 免费制作网页的网站企业app定制开发公司
  • 若依框架Springboot开发开放接口供他人调用
  • 在Centos上安装Python指定版本
  • 体育赛事 APP 开发:从技术到体验的全方位突破
  • 【阿里云】记一次oss攻击
  • MySQL高效备份实战指南
  • OpenBLT移植教程
  • 怎样做站长建网站荥阳市建设局网站
  • 虚拟仿真实训:打破时空界限,重塑未来技能,引领教育新变革
  • MySQL字符集配置全攻略:告别乱码
  • 「机器学习笔记10」贝叶斯学习——从逆向思维到简化现实的强大武器
  • 01-Python简介与环境搭建-教程
  • 高端设计网站都有哪些微信公众号推广赚钱
  • 数字化转型:概念性名词浅谈(第七十二讲)
  • 济南网站建设泉诺上海手机网站哪家最好
  • 鸿蒙Next文件上传下载:全场景高效数据传输方案
  • STM32G474单片机开发入门(九)低功耗模式实战
  • 怎么样给一个网站做横向导航栏搜索引擎优化的概念是什么
  • 网站开发近期市场做一个网站的预算
  • mac使用国内源安装brew并且配置使用国内源安装软件
  • 基因组组装:3. juicer 比对 HiC 数据至参考基因组
  • 工信部网站原来是wordpress发送自定义邮件
  • 怎么再贴吧给自己的网站做宣传网站建设的维护工作有哪些
  • Thinkphp通过supervisor 执行 queue 队列不间断报错Unable to write output 解决
  • Wireshark常用过滤规则
  • 24小时自助建站网站运营与管理的内容包括
  • 巴塘网站建设建设投资基金管理有限公司网站