CCF编程能力等级认证GESP—C++2级—20231209

CCF编程能力等级认证GESP—C++2级—20231209

  • 单选题(每题 2 分,共 30 分)
  • 判断题(每题 2 分,共 20 分)
  • 编程题 (每题 25 分,共 50 分)
    • 小杨做题
    • 小杨的 H 字矩阵
  • 参考答案
    • 单选题
    • 判断题
    • 编程题1
    • 编程题2

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

1、以下不可以做为C++变量的是( )。

A. FiveStar
B. fiveStar
C. 5Star
D. Star5

2、 在C++中,与 for(int i = 10; i < 20; i +=2) cout << i; 输出结果相同的是( )。

A. for(int i = 10; i < 19; i +=2) cout << i;
B. for(int i = 11; i < 19; i +=2) cout << i;
C. for(int i = 10; i < 21; i +=2) cout << i;
D. 以上均不对

3、以下C++代码实现从小到大的顺序输出能整除N的数(N的因子),例如N=18时输出1 2 3 6 9 18,横线处应填入( )。

	cin >> N;for (________)if (N % i == 0)cout << i << " ";
A. int i = 0; i < N; i++
B. int i = 1; i < N; i++
C. int i = 0; i < N+1; i++
D. int i = 1; i < N+1; i++

4、下面C++代码用于判断输入的整数是否为对称数,如1221、12321是对称数,但123、972不是对称数。下面对该题对应代码的说法,正确的是( )。

	cin >> N;newNum = 0;while (N){newNum = newNum * 10 + N % 10;N = N / 10;}if (newNum == N)cout << N << "为对称数";
A. 代码没有语法错误,如果N为对称数,第8行将能正确输出。
B. 代码没有语法错误,但如果N为负数,将导致死循环。
C. 代码存在语法错误,程序不能被执行。
D. 代码没有语法错误,但不能达到预期目标,因为循环结束N总为0

5、下面C++代码用于判断N(大于等于2的正整数)是否为质数(素数)。下面对如下代码的说法,正确的是( )。

	cin >> N;for (int i = 2; i < N / 2; i++)if (N % i == 0){cout << N << " 不是质数";break;}if (i >= N / 2)cout << N << " 是质数";
A. 代码能正确判断N是否为质数。
B. 代码总是不能判断N是否质数。
C. 删除第5break ,将能正确判断N是否质数。
D. 代码存在漏洞,边界存在问题,应将第2行和第7行的 N / 2 改为 N / 2 + 1

6、下面C++代码执行后的输出是( )。

	N = 4;for (int i = 0; i < N; i++){for (int j = 1; j < i; j++)if (i ** j % 2 == 0)cout << i << "#";continue;}cout << "0";
A. 2#3#0
B. 1#2#0
C. 1#0#
D. 2#3#

7、下面C++代码执行后的输出是( )。

	cnt = 0;for (i = 1; i < 10; i++)for (j = 1; j < i; j += 2)if (i * j % 2 == 0){cnt++;break; }if (i >= 10) cout << cnt << "#";cout << cnt;
A. 0
B. 8#8
C. 4
D. 4#4

8、下面C++代码执行后的输出是( )。

	N = 100;while (N > 0)if (N % 2)break;else if (N % 3 == 0)N -= 5;elseN -= 20;cout << N; 
A. 100
B. 95
C. 55
D. 0

9、下面C++代码执行后的输出是( )。

	x = 1;while (x < 100){if (x % 3 != 0)cout << x << ",";else if (x / 10)break;elsex += 55;x += 2; }cout << x;
A. 1
B. 1,3
C. 15,17
D. 1,10,12

10、下面C++代码执行后的输出是( )。

	cnt = 0;for (i = 0; i < 5; i++)for (j = 0; j < i; j++)cnt += 1;cout << cnt;
A. 5
B. 10
C. 20
D. 30

11、以下C++代码用于输出1-100(含)的整数平方数(完全平方数),如16是4的平方,横线处应填写( )。

	for (i = 1; i < 100 + 1; i++)if (____)cout << i << " "; 
A. int(sqrt(i)) * int(sqrt(i)) = i
B. int(sqrt(i)) == sqrt(i)
C. int(sqrt(i)) * int(sqrt(i)) == i
D. int(sqrt(i)) == int(i/sqrt(i))

12、下面的C++代码用于实现如下图所示的效果,应在以下图C++代码中填入( )。

在这里插入图片描述

	cin >> N;for (i = 0; i < N; i++){nowNum = 0;for (j = 0; j < i + 1; j++){cout << nowNum << "";nowNum += 1;if (nowNum == 10)nowNum = 0; }}
A. 与第8行下面填入一行: cout << nowNum;
B. 与第2行下面填入一行: cout << endl;
C. 与第7行下面填入一行: cout << nowNum;
D. 与第9行下面填入一行: cout << endl;

13、某公司新出了一款无人驾驶的小汽车,通过声控智能驾驶系统,乘客只要告诉汽车目的地,车子就能自动选择一条优化路线,告诉乘客后驶达那里。请问下面哪项不是驾驶系统完成选路所必须的。( )

A. 麦克风
B. 扬声器
C. 油量表
D. 传感器

14、现代计算机是指电子计算机,它所基于的是( )体系结构。

A. 艾伦·图灵
B. 冯·诺依曼
C. 阿塔纳索夫
D. 埃克特-莫克利

15、输入一个正整数N,想找出它所有相邻的因数对,比如,输入12,因数对有(1,2)、(2,3)、(3,4)。下面哪段代
码找不到所有的因数对?( )

A. for(i=1;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1);
B. for(i=2;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1);
C. for(i=2;i<N/2;i++) if(!(N%(i-1)) && !(N%i)) printf("(%d,%d)\n", i-1, i);
D. for(i=1;i<N/2;i++) if(!(N%i) && !(N%(i+1))) printf("(%d,%d)\n", i, i+1);

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

1、 C++表达式 -7/2 的值为整数-3。( )

2、C++表达式 2*int(‘9’)*2 的值为36。( )

3、C++表达式 3+2 && 5-5 的值为false。( )

4、在C++代码中,执行 srand(0) 后连续两次执行 rand() 的结果相等。 ( )

5、C++代码中 while(1){…} 的判断条件不是逻辑值,将导致语法错误。( )

6、执行以下C++代码后将输出0。( )

Sum = 0;
for (i = -500; i < 500; i++)sum += i;
cout << Sum;

7、在C++代码中,运算符只能处理相同的数据类型,不同类型之间必须转换为相同的数据类型。( )

8、在C++代码中,虽然变量都有数据类型,但同一个变量也可以先后用不同类型的值赋值。( )

9、小杨最近在准备考GESP,他用的Dev C++来练习和运行程序,所以Dev C++也是一个小型操作系统。( )

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

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

小杨做题

【问题描述】
为了准备考试,小杨每天都要做题。第 1 天,小杨做了a道题;第 2 天,小杨做了b道题;从第 3 天起,小杨每天做的题目数量是前两天的总和。
此外,小杨还规定,当自己某一天做了大于或等于 m 题时,接下来的所有日子里,他就再也不做题了。
请问,到了第 N 天,小杨总共做了多少题呢?
【输入描述】
总共 4 行。第一行一个整数a ,第二行一个整数b ,第三行一个整数m ,第四行一个整数n 。
保证0 <= a, b <= 10; a,b < M <= 1,000,000; 3 <= N <= 364。
【输出描述】
一行一个整数,表示小杨 N 天里总共做了多少题目。
【特别提醒】
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
【样例输入 1】
1
2
10
5
【样例输出 1】
19
【样例解释 1】
小杨第一天做 1 题,第二天做 2 题,第三天做1 + 2 = 3 题,第四天做2 + 3 = 5 题,第五天做 3 + 5 = 8 题。因此他总共做了 1 + 2 + 3 + 5 + 8 = 19 题。
【样例输入 2】
1
1
5
8
【样例输出 2】
12
【样例解释 2】
小杨前 5 天分别做了1,1,2,3,5 题,由于第 5 天小杨做了 5 题,而 m = 5 ,于是小杨从此以后不再做题。因此小杨总共做了 1 + 1 + 2 + 3 + 5 = 12 题。

小杨的 H 字矩阵

【问题描述】
小杨想要构造一个N * N 的 H 字矩阵(N 为奇数),具体来说,这个矩阵共有 N 行,每行 N 个字符,其中最左列、最右列都是 | ,而中间一行(即第 N + 1 2 \frac{N+1}{2} 2N+1 行)的第2 ~ N - 1 个字符都是 - ,其余所有字符都是半角小写字母a 。例如,一个 N = 5 的 H 字矩阵如下:

|aaa|
|aaa|
|---|
|aaa|
|aaa|

请你帮小杨根据给定的N打印出对应的“H 字矩阵”。
【输入描述】
一行一个整数N ( 5 <= N <= 49,保证 N 为奇数)。
【输出描述】
输出对应的“H 字矩阵”。
请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出 N 行,每行除了换行符外恰好包含 N 个字符,这些字符要么是 - ,要么是 | ,要么是 a 。你的输出必须和标准答案完全一致才能得分,请在提交前仔细检查。
【特别提醒】
在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。
【样例输入 1】
5
【样例输出 1】

|aaa|
|aaa|
|---|
|aaa|
|aaa|

【样例输入 2】
7
【样例输出 2】

|aaaaa|
|aaaaa|
|-----|
|aaaaa|
|aaaaa|

参考答案

单选题

题号123456789101112131415
答案CADDDADCDBCDCBB

判断题

题号12345678910
答案×××××××

编程题1


编程题2


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/470132.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式中全面解析 SPI 通信协议方法

SPI 的英文全称为 Serial Peripheral Interface&#xff0c;顾名思义为串行外设接口。SPI 是一种同步串行通信接口规范&#xff0c;主要应用于嵌入式系统中的短距离通信。该接口由摩托罗拉在20世纪80年代中期开发&#xff0c;后发展成了行业规范。 SPI 是一种高速的、全双工的…

第三十回 张都监血溅鸳鸯楼 武行者夜走蜈蚣岭-python可接受任意数量参数的函数

武松回到孟州城&#xff0c;来到张都监后花园墙外&#xff0c;这是一个马院&#xff0c;问清楚后槽张团练他们三人还在鸳鸯楼吃酒&#xff0c;直接一刀杀了。武松从后门这里爬过墙&#xff0c;来到了厨房&#xff0c;将两个还在服侍的丫环杀了。 武松认得路&#xff0c;蹑手蹑…

Photoshop 中的“彩蛋”

在 Photoshop 中隐藏了几个“彩蛋” Easter Eggs&#xff0c;是开发者留下的小秘密或玩笑功能&#xff0c;也许是他们在紧张的开发过程中的一种自我调节吧&#xff0c;就如复活节彩蛋一样&#xff0c;同样也可以给 Photoshop 的用户们带来一点小“惊喜”。 这些彩蛋通常以有趣的…

C语言—数组一维(含冒泡排序)

1.用数组存储10个整型数&#xff0c;通过键盘输入一个数&#xff0c;找出该数在数组中的下标值&#xff1b; /*1.用数组存储10个整型数&#xff0c;通过键盘输入一个数&#xff0c;找出该数在数组中的下标值&#xff1b;*/#include <stdio.h>int main(void) {int nums[…

Java实现贫困地区人口信息管理系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 人口信息管理模块2.2 精准扶贫管理模块2.3 特殊群体管理模块2.4 案件信息管理模块2.5 物资补助模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 人口表3.2.2 扶贫表3.2.3 特殊群体表3.2.4 案件表3.2.5 物资补助表 四…

详解Python中的str.format方法

字符串的内置方法大致有40来个&#xff0c;但是一些常用的其实就那么20几个&#xff0c;而且里面还有类似的用法&#xff0c;区分度高比如&#xff1a;isalpha,isalnum,isdigit&#xff0c;还有一些无时不刻都会用到的split切分&#xff0c;join拼接&#xff0c;strip首尾去指定…

深度学习的新进展:探索人工智能的未来

文章目录 &#x1f4d1;引言深度学习技术概述计算机视觉领域的深度应用自然语言处理的深度革命跨领域应用的深度拓展深度学习的挑战与未来展望结语 &#x1f4d1;引言 在科技日新月异的今天&#xff0c;深度学习作为人工智能领域的一颗璀璨明珠&#xff0c;正在引领着技术创新…

Nvidia 推出了本地版聊天 Chat with RTX;OpenAI联创Karpathy宣布离职专注个人项目

&#x1f989; AI新闻 Nvidia 推出了本地版聊天 Chat with RTX 摘要&#xff1a;英伟达最近发布了名为“Chat with RTX”的Demo版个性化AI聊天机器人&#xff0c;适用于Windows平台&#xff0c;需要Nvidia的30系/40系显卡&#xff0c;显存至少为8GB&#xff0c;系统配置包括1…

极市平台 | 16个图像分类方向开源数据集资源汇总(附下载链接,建议收藏!)

本文来源公众号“极市平台”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;16个图像分类方向开源数据集资源汇总&#xff08;附下载链接&#xff09; 本文汇总了16个图像分类相关的开源数据集&#xff0c;均附有下载链接。要构建…

Shell 学习笔记(三)-shell变量

Shell 语言是一种动态类型和弱类型语言, 因此,在Shell中无需显示地声明变量, 且变量的类型会根据不同的操作符而发生变化. 静态类型语言: 在程序编译期间就确定变量类型的语言, 如java, C等 动态类型语言: 在程序运行期间才确定变量类型的语言, 如PHP, Python等. 一 shell变量…

姿态传感器MPU6050模块的基本使用总结

以下两篇文章可作为参考&#xff1a; 姿态传感器MPU6050原理及应用超详细讲解 - 采芯网 基于STM32的四旋翼无人机项目&#xff08;二&#xff09;&#xff1a;MPU6050姿态解算&#xff08;含上位机3D姿态显示教学&#xff09;-CSDN博客 基本介绍 随着科技的发展&#xff0c;我们…