自学内容网 自学内容网

2023年06月CCF-GESP编程能力等级认证C++编程一级真题解析

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

第1题

以下不属于计算机输出设备的有( )。
A. 麦克风
B. 音箱
C. 打印机
D. 显示器

答案:A

第2题

ChatGPT是OpenAI研发的聊天机器人程序,它能通过理解和学习人类的语言来进行对话,还能根据聊天的上下文进行互动,完成很多工作。请你猜猜看,下面任务中,ChatGPT不能完成的是( )。
A. 改邮件
B. 编剧本
C. 擦地板
D. 写代码

答案:C

第3题

常量’3’的数据类型是( )。
A. double
B. float
C. char
D. int

答案:C

第4题

下列关于C++语言变量的叙述,正确的是( )。
A. 变量可以没有定义
B. 对一个没有定义的变量赋值,相当于定义了一个新变量
C. 执行赋值语句后,变量的类型可能会变化
D. 执行赋值语句后,变量的值可能不会变化

答案:D

第5题

以下可以作为C++标识符的是( )。
A. number_of_Chinese_people_in_millions
B. 360AntiVirus
C. Man&Woman
D. break

答案:A

第6题

以下哪个不是C++语言的关键字?( )
A. double
B. else
C. while
D. endl

答案:D

第7题

如果a、b和c都是int类型的变量,下列哪个语句不符合C++语法?( )
A. a = (b == c);
B. b = 5.5;
C. c = a + b + c;
D. a + c = b + c;

答案:D

第8题

如果用一个int类型的变量a表达正方形的边长,则下列哪个表达式不能用来计算正方形的面积?( )
A. a * a
B. 1 * a * a
C. a ^ 2
D. a * 2 * a / 2

答案:C

第9题

表达式(4 * (11 + 12) / 4)的计算结果为( )。
A. 47
B. 20
C. 23
D. 56

答案:C

第10题

如果a为int类型的变量,且a的值为6,则执行a %= 4;之后,a的值会是( )。
A. 1
B. 2
C. 3
D. 4

答案:B

第11题

如果a和b均为 int类型的变量,下列表达式能正确判断“a等于0且b等于0”的是( )。
A. (a == b == 0)
B. !(a || b)
C. (a + b == 0)
D. (a == 0) + (b == 0)

答案:B

第12题

如果a和b为int类型的变量,且值分别为7和2,则下列哪个表达式的计算结果不是3.5?( )
A. 0.0 + a / b
B. (a + 0.0) / b
C. (0.0 + a) / b
D. a / (0.0 + b)

答案:A

第13题

在下列代码的横线处填写( ),使得输出是“20 10”。
在这里插入图片描述

A. a + b
B. b
C. a - b
D. b - a

答案:C

第14题

在下列代码的横线处填写( ),可以使得输出是“147”。
在这里插入图片描述

A. i % 2 == 1
B. i % 3 == 1
C. i = i + 3
D. i + 3

答案:B

第15题

执行以下C++语言程序后,输出结果是( )。
在这里插入图片描述

A. 63
B. 98
C. 113
D. 无法确定

答案:D

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

第16题

计算机硬件主要包括运算器、控制器、存储器、输入设备和输出设备。

答案:正确

第17题

诞生于1958年的103机是中国第一台通用数字电子计算机,比1946年在美
国诞生的第一台通用电子计算机ENIAC晚了十多年。

答案:正确

第18题

在C++语言中,计算结果必须存储在变量中才能输出。

答案:错误

第19题

在C++语言中,标识符的命名不能完全由数字组成,至少有一个字母就可以。

答案:错误

第20题

10是一个int类型常量。

答案:正确

第21题

if语句可以没有else子句。

答案:正确

第22题

do … while语句的循环体至少会执行一次。

答案:正确

第23题

如果a和b为int类型的变量,则表达式a = b可以判断a和b是否相等。

答案:错误

第24题

如果a为int类型的变量,则表达式(a % 4 == 2)可以判断a的值是否为
偶数。

答案:错误

第25题

表达式(37 / 4)的计算结果为9,且结果类型为int。

答案:正确

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

第26题

时间规划
【问题描述】
小明在为自己规划学习时间。现在他想知道两个时刻之间有多少分钟,你能通过编程帮他做到吗?
【输入描述】
输入4行,第一行为开始时刻的小时,第二行为开始时刻的分钟,第三行为结束时刻的小时,第四行为结束时刻的分钟。
输入保证两个时刻是同一天,开始时刻一定在结束时刻之前。时刻使用24小时制,即小时在0到23之间,分钟在0到59之间。
【输出描述】
输出一行,包含一个整数,从开始时刻到结束时刻之间有多少分钟。
【样例输入1】
9
5
9
6
【样例输出1】
1
【样例输入2】
9
5
10
0
【样例输出2】
55

答案:

#include <iostream>
using namespace std;
int main() {
int h1 = 0, m1 = 0, h2 = 0, m2 = 0;
cin >> h1 >> m1;
cin >> h2 >> m2;
cout << (h2 - h1) * 60 + (m2 - m1) << endl;
return 0;
}

第27题

累计相加
【问题描述】
输入一个正整数,求形如:1 + 1 + 2 + 1 + 2 + 3 + 1 + 2 + 3 + 4 +… ⋯ (1 + 2 + 3 + 4 + 5 + … ⋯ )的累计相加。
【输入描述】
输入一个正整数。约定1 ≤ ≤ 100。
【输出描述】
输出累计相加的结果。
【样例输入1】
3
【样例输出1】
10
【样例输入2】
4
【样例输出2】
20
【样例输入3】
10
【样例输出3】
220

答案:

#include <iostream>
using namespace std;
int main() {
int n = 0;
cin >> n;
int sum = 0;
for (int i = 1; i <= n; i++)
sum += (i + 1) * i / 2;
cout << sum << endl;
return 0;
}

原文地址:https://blog.csdn.net/gozhuyinglong/article/details/136044198

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!