#X000106. GESP C++一级试卷(2024年6月)
GESP C++一级试卷(2024年6月)
GCF 编程能力等级认证
Grade Examination of Software Programming
C++ 一级 2024年06月
(满分:100分 考试时间:90分钟)
学校:______ 姓名:______
一、单选题(每题2分,共30分)
第1题
在C++中,下列不可做变量的是( )。 {{ select(1) }}
- five-Star
- five_star
- fiveStar
- _fiveStar
第2题
C++表达式3 - 3 * 3 / 5的值是( )。 {{ select(2) }}
- -1.2
- 1
- 0
- 2
第3题
在C++中,假设N为正整数,则表达式cout << (N % 3 + N % 7)可能输出的最大值是( )。 {{ select(3) }}
- 6
- 8
- 9
- 10
第4题
C++语句printf("5%%2={%d}\n",5 % 2)执行后的输出是( )。 {{ select(4) }}
- 1={1}
- 5%2={5%2}
- 5%2={1}
- 5 ={1}
第5题
对整型变量i,执行C++语句cin >> i, cout << i时如果输入5+2,下述说法正确的是( )。 {{ select(5) }}
- 将输出整数7
- 将输出5
- 语句执行将报错,输入表达式不能作为输出的参数
- 语句能执行,但输出内容不确定
第6题
下面C++代码执行后的输出是( )。
float a;
a = 101.101;
a = 101;
printf("a+1=(%.0f)",a+1);
{{ select(6) }}
- 102={102}
- a+1={a+1}
- a+1={102}
- a先被赋值为浮点数,后被赋值为整数,执行将报错
第7题
表达式9/4 - 6 % (6 - 2) * 10的值是( )。 {{ select(7) }}
- -17.75
- -18
- -14
- -12.75
第8题
下面C++代码执行时输入10后,正确的输出是( )。
int N;
cout << "请输入正整数: ";
cin >> N;
if (N % 3)
printf("第5行代码%2d", N % 3);
else
printf("第6行代码%2d", N % 3);
{{ select(8) }}
- 第5行代码1
- 第6行代码1
- 第5行代码 1
- 第6行代码 1
第9题
下面C++代码执行后输出是( )。
int Sum = 0, i = 0;
for ( ; i < 10; )
Sum += i++;
cout << i << " " << Sum;
{{ select(9) }}
- 9 45
- 10 55
- 10 45
- 11 55
第10题
下面C++代码用于判断N是否为质数(只能被1和它本身整除的正整数)。程序执行后,下面有关描述正确的是( )。
int N;
cout << "请输入整数: ";
cin >> N;
bool Flag = false;
if (N >= 2){
Flag = true;
for (int i=2; i < N; i++)
if (N % i == 0){
Flag = false;
break;
}
}
if(Flag)
cout << "是质数";
else
cout << "不是质数";
{{ select(10) }}
- 如果输入负整数,可能输出"是质数"
- 如果输入2,将输出"不是质数",因为此时循环不起作用
- 如果输入2,将输出"是质数",即使此时循环没有被执行
- 如果将if (N >= 2)改为if (N > 2)将能正确判断N是否质数
第11题
下面的C++代码用于求1~N之间所有奇数之和,其中N为正整数,如果N为奇数,则求和时包括N。有关描述错误的是( )。
int N;
cout << "请输入正整数: ";
cin >> N;
int i = 1, Sum = 0;
while (i <= N){
if (i % 2 == 1)
Sum += i;
i += 1;
}
cout << i << " " << Sum;
{{ select(11) }}
- 执行代码时如果输入10,则最后一行输出将是11 25
- 执行代码时如果输入5,则最后一行输出将是6 9
- 将i += 1移到if (i % 2 == 1)前一行,同样能实现题目要求
- 删除if (i % 2 == 1),并将i += 1改为i += 2,同样可以实现题目要求
第12题
如果一个整数N能够表示为X*X的形式,那么它就是一个完全平方数,下面C++代码用于完成判断N是否为一个完全平方数,在横线处应填入的代码是( )。
int N;
cin >> N;
for(int i = 0; i <= N; i++)
if(______)
cout << N << "是一个完全平方数\n";
{{ select(12) }}
- i == N*N
- i*10 == N
- i+i == N
- i*i == N
第13题
执行下面C++代码后输出的cnt的值是( )。
int cnt=0;
for(int i = 0; i*i < 64; i+=2)
cnt++;
cout << cnt;
{{ select(13) }}
- 8
- 7
- 4
- 1
第14题
小杨父母带他到某培训机构给他报名参加CCF组织的GESP认证考试的第1级,那他可以选择的话让语言有几种?( ) {{ select(14) }}
- 1
- 2
- 3
- 4
第15题
ENIAC于1946年投入运行,是世界上第一台真正意义上的计算机,它的主要部件都是( )组成的。 {{ select(15) }}
- 感应线圈
- 电子管
- 晶体管
- 集成电路
二、判断题(每题2分,共20分)
第16题
在C++代码中变量X被赋值为16.44,则cout << X / 10执行后输出的一定是1。( ) {{ select(16) }}
- 正确
- 错误
第17题
C++的整型变量N被赋值为10,则语句cout << N / 4 << "->" << N % 4 << "->" << N / 4.0执行后输出是2->2->2.0。( ) {{ select(17) }}
- 正确
- 错误
第18题
定义C++的float型变量N,则语句cin >> N; cout << int(float(N))可以输入正负整数和浮点数,并将其转换为整数后输出。( ) {{ select(18) }}
- 正确
- 错误
第19题
C++的整型N被赋值为5,语句printf("%d*2",N)执行后将输出10。( ) {{ select(19) }}
- 正确
- 错误
第20题
在C++中,break语句用于终止当前层次的循环,循环可以是for循环,也可以是while循环。( ) {{ select(20) }}
- 正确
- 错误
第21题
在C++,continue语句通常与if语句配合使用。( ) {{ select(21) }}
- 正确
- 错误
第22题
在C++代码中,不可以将变量命名为printf,因为printf是C++语言的关键字。( ) {{ select(22) }}
- 正确
- 错误
第23题
在C++中有整型变量N,则表达式N += 8/4/2相当于N += 8/(4/2)。( ) {{ select(23) }}
- 正确
- 错误
第24题
C++中定义变量int N,则表达式(!!N)的值也是N的值。( ) {{ select(24) }}
- 正确
- 错误
第25题
GESP测试是对认证者的编程能力进行等级认证,同一级别的能力基本上与编程语言无关。( ) {{ select(25) }}
- 正确
- 错误