CCF-GESP 等级考试 2023年3月认证C++一级真题

2024-05-25 18:36

本文主要是介绍CCF-GESP 等级考试 2023年3月认证C++一级真题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2024年03月真题

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

第 1 题 以下不属于计算机输入设备的有( )。

  • A. 键盘
  • B. 音箱
  • C. 鼠标
  • D. 传感器

第 2 题 计算机系统中存储的基本单位用B来表示,它代表的是( )。

  • A. Byte
  • B. Block
  • C. Bulk
  • D. Bit

第 3 题 常量7.0的数据类型是( )。

  • A. double
  • B. float
  • C. void
  • D. int

第 4 题 下列关于C++语言的叙述,不正确的是( )。

  • A. 变量定义时可以不初始化
  • B. 变量被赋值之后的类型不变
  • C. 变量没有定义也能够使用
  • D. 变量名必须是合法的标识符

第 5 题 以下不可以作为C++标识符的是( )。

  • A. x321
  • B. 0x321
  • C. x321_
  • D. _x321

第 6 题 以下哪个不是C++语言的关键字?

  • A. int
  • B. for
  • C. do
  • D. cout

第 7 题 如果a、b和c都是int类型的变量,下列哪个语句不符合C++语法?

  • A. c = a + b;
  • B. c += a + b;
  • C. c = a = b;
  • D. c = a ++ b;

第 8 题 如果用两个int类型的变量a和b分别表达长方形的长和宽,则下列哪个表达式不能用来计算长方形的周长?

  • A. a + b * 2
  • B. 2 * a + 2 * b
  • C. a + b + a + b
  • D. b + a * 2 + b

第 9 题 表达式((3 == 0) + ‘A’ + 1 + 3.0)的结果类型为( )。

  • A. double
  • B. int
  • C. char
  • D. bool

第 10 题 如果a为int类型的变量,且a的值为6,则执行a *= 3;之后,a的值会是( )。

  • A. 3
  • B. 6
  • C. 9
  • D. 18

第 11 题 如果a和b均为int类型的变量,下列表达式不能正确判断“a等于0且b等于0”的是( )。

  • A. (a == 0) && (b == 0)
  • B. (a == b == 0)
  • C. (!a) && (!b)
  • D. (a == 0) + (b == 0) == 2

第 12 题 如果a为int类型的变量,下列哪个表达式可以正确求出满足“大于等于a 且是4的倍数”的整数中最小的?

  • A. a * 4
  • B. a / 4 * 4
  • C. (a + 3) / 4 * 4
  • D. a - a % 4 + 4

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

#include <iostream>
using namespace std;
int main(){
int a = 10, b = 20;
a = ______________;//在此处填入代码
b = a / 100;
a = a % 100;
cout << a << " " << b << endl;
return 0;
  • A. a + b
  • B. (a + b) * 100
  • C. b * 100 + a
  • D. a * 100 + b

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

#include <iostream>
using namespace std;
int main(){
for(int i = 1; i <= 8;______)//在此处填入代码
cout << i;
return 0;
}
  • A. i++
  • B. i *= 2
  • C. i += 2
  • D. i * 2

第 15 题 执行以下C++语言程序后,输出结果是( )。

#include <iostream>
using namespace std;
int main(){
int sum = 0;
for(int i = 1; i <= 20; i ++)
if(i % 3 == 0 || i % 5 == 0)
sum += i;
cout << sum << endl;
return 0;
}
  • A. 210
  • B. 113
  • C. 98
  • D. 15

2 判断题

第 1 题 在Windows 系统中通过键盘完成对选定文本移动的按键组合是先Ctrl+X,移动到目标位置后按Ctrl+V。( )

第 2 题 程序员用C、C++、Python、Scratch等编写的程序能在 CPU 上直接执行。( )

第 3 题 在C++语言中,注释不宜写得过多,否则会使得程序运行速度变慢。( )

第 4 题 在C++语言中,标识符中可以有数字,但不能以数字开头。( )

第 5 题 '3’是一个int类型常量。( )

第 6 题 if 语句中的条件表达式的结果必须为bool类型。( )

第 7 题 for 语句的循环体至少会执行一次。( )

第 8 题 如果a为int类型的变量,则赋值语句a = a + 3;是错误的,因为这条语句会导致a无意义。( )

第 9 题 如果a为int类型的变量,则表达式(a / 4 == 2)和表达式(a >= 8 && a <= 11)的结果总是相同的。( )

第 10 题 表达式(3.5 * 2)的计算结果为7.0,且结果类型为double。( )

3 编程题

3.1 编程题1

题目名称:每月天数
题面描述

小明刚刚学习了每月有多少天,以及如何判断平年和闰年,想到可以使用编程方法求出给定的月份有多少天。你能做到吗?

输入格式

输入一行,包含两个整数,分别表示一个日期的年、月。

输出格式

输出一行,包含一个整数,表示输入月份有多少天。

样例

输入

2022 1

输出

31

输入

2020 2

输出

29

3.2 编程题2

题目名称:长方形面积
题面描述

小明刚刚学习了如何计算长方形面积。他发现,如果一个长方形的长和宽都是整数,它的面积一定也是整数。现在,小明想知道如果给定长方形的面积,有多少种可能的长方形,满足长和宽都是整数?

如果两个长方形的长相等、宽也相等,则认为是同一种长方形。约定长方形的长大于等于宽。正方形是长方形的特例,即长方形的长和宽可以相等。

输入格式

输入一行,包含一个整数 ( A ),表示长方形的面积。约定 ( 2 ≤ A ≤1000 )。

输出格式

输出一行,包含一个整数 ( C ),表示有 ( C ) 种可能的长方形。

样例

输入

4

输出

2

输入

6

输出

2

这篇关于CCF-GESP 等级考试 2023年3月认证C++一级真题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1002296

相关文章

C++右移运算符的一个小坑及解决

《C++右移运算符的一个小坑及解决》文章指出右移运算符处理负数时左侧补1导致死循环,与除法行为不同,强调需注意补码机制以正确统计二进制1的个数... 目录我遇到了这么一个www.chinasem.cn函数由此可以看到也很好理解总结我遇到了这么一个函数template<typename T>unsigned

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

C++ STL-string类底层实现过程

《C++STL-string类底层实现过程》本文实现了一个简易的string类,涵盖动态数组存储、深拷贝机制、迭代器支持、容量调整、字符串修改、运算符重载等功能,模拟标准string核心特性,重点强... 目录实现框架一、默认成员函数1.默认构造函数2.构造函数3.拷贝构造函数(重点)4.赋值运算符重载函数

C++ vector越界问题的完整解决方案

《C++vector越界问题的完整解决方案》在C++开发中,std::vector作为最常用的动态数组容器,其便捷性与性能优势使其成为处理可变长度数据的首选,然而,数组越界访问始终是威胁程序稳定性的... 目录引言一、vector越界的底层原理与危害1.1 越界访问的本质原因1.2 越界访问的实际危害二、基

c++日志库log4cplus快速入门小结

《c++日志库log4cplus快速入门小结》文章浏览阅读1.1w次,点赞9次,收藏44次。本文介绍Log4cplus,一种适用于C++的线程安全日志记录API,提供灵活的日志管理和配置控制。文章涵盖... 目录简介日志等级配置文件使用关于初始化使用示例总结参考资料简介log4j 用于Java,log4c

C++归并排序代码实现示例代码

《C++归并排序代码实现示例代码》归并排序将待排序数组分成两个子数组,分别对这两个子数组进行排序,然后将排序好的子数组合并,得到排序后的数组,:本文主要介绍C++归并排序代码实现的相关资料,需要的... 目录1 算法核心思想2 代码实现3 算法时间复杂度1 算法核心思想归并排序是一种高效的排序方式,需要用

C++11范围for初始化列表auto decltype详解

《C++11范围for初始化列表autodecltype详解》C++11引入auto类型推导、decltype类型推断、统一列表初始化、范围for循环及智能指针,提升代码简洁性、类型安全与资源管理效... 目录C++11新特性1. 自动类型推导auto1.1 基本语法2. decltype3. 列表初始化3

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件