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