5320:[GESP202403] 二级客观题
文件提交:无需freopen
内存限制:128 MB
时间限制:1.000 S
评测方式:文本裁判
金币值:
命题人:
提交:6
解决:0
题目描述
# 一、单选题(每题 2 分,共 30 分)
1. 下列流程图的输出结果是?( )

- 优秀
- 良好
- 不及格
- 没有输出
2. 以下选项中不符合 C++变量命名规则的是?( )
- `student`
- `2\_from`
- `\_to`
- `Text`
3. 以下选项中,不能用于表示分支结构的C++保留字是?( )
- `switch`
- `return`
- `else`
- `if`
4. 下列说法错误的是?( )
- `while `循环满足循环条件时不断地运行,直到指定的条件不满足为止
- `if `语句通常用于执行条件判断
- 在C++中可以使用` foreach` 循环
- `break` 和` continue` 语句都可以用在 `for `循环和`while`循环中
5. 下列4个表达式中,答案不是整数8的是?( )
- `abs(-8)`
- `min(max(8, 9), 10)`
- `int(8.88)`
- `sqrt(64)`
6. 下面C++代码执行后的输出是?()
```cpp
int n,a,m,i;
n=3, a = 5;
m = (a - 1) \* 2;
for (i=0; i= s)
t /= 2;
else
t -= 1;
ans += 1;
}
cout << ans;
```
- `2`
- `3`
- `4`
- `5`
9. 下面C++代码执行后的输出是?()
```cpp
int n, masks, days,cur;
n = 17, masks = 10, days = 0;
cur = 2;
while (masks != n){
if (cur == 0 || cur == 1)
masks += 7;
masks -= 1;
days += 1;
cur = (cur + 1) % 7;
}
cout << days;
```
- `5`
- `6`
- `7`
- `8`
10. 以下C++代码判断一个正整数N的各个数位是否都是偶数。如果都是,则输出“是”,否则输出“否”。例如N=2024时输出“是”。则横线处应填入( )。
```cpp
int N,Flag;
cin >> N;
Flag = true;
while (N != 0){
if (N %2 != 0){
Flag = false;
_____________
}
else
N /= 10;
}
if(Flag == true)
cout << "是";
else
cout << "否";
```
- `break`
- `continue`
- `N = N / 10`
- `N = N % 10`
11. 有句俗话叫“三天打渔,两天晒网”。如果小杨前三天打渔,后两天晒网,一直重复这个过程,以下程序代码用于判断,第n天小杨是在打鱼还是晒网,横线处应填写?( )
```cpp
int n,i;
cin >> n;
i = n % 5;
if (__________________) // 在此处填写代码
cout << "晒网";
else
cout << "打鱼";
```
- `i == 0`
- `i == 4`
- `i == 0 && i == 4`
- `i == 0 || i == 4`
12. 一个数的所有数字倒序排列后这个数的大小保持不变,这个数就是回文数,比如 101 与 6886 都是回文数,而 100 不是回文数。以下程序代码用于判断一个数是否为回文数,横线处应填写?( )
```cpp
int n,a,k;
cin >> n;
a = 0;
k = n;
while (n > 0){
a = __________; // 在此处填写代码
n /= 10;
}
if (a == k)
cout << "是回文数";
else
cout << "不是回文数";
```
- `10 \* a + n % 10`
- `a + n % 10`
- `10 \* a + n / 10`
- `a + n / 10`
13. 给定两个整数$n$与$k$ ,打印出一个栅栏图形,这个栅栏应该分成 $n$段,段与段之间的间隔为 `+` , 段内的填充为$k$ 个 - 。形如$n=5,k=6$时,图形如下:

以下程序代码用于绘制该图形,横线处应填写?( )
```cpp
int n, k, i, j;
n = 5, k = 6;
for (i = 0; i < n; i++){
__________ // 在此处填写代码
for (j = 1; j < k; j++)
cout << '-' ;
}
cout << '+';
```
- `cout << '+' << endl;`
- `cout << '+' << ' ' << endl;`
- `cout << '+';`
- `cout << '+' << ' ';`
14. 小杨的父母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是。( )
- 小程序
- 计时器
- 操作系统
- 神话人物
15. 中国计算机学会(CCF)在2024年1月27日的颁奖典礼上颁布了王选奖,王选先生的重大贡献是( )。
- 制造自动驾驶汽车
- 创立培训学校
- 发明汉字激光照排系统
- 成立方正公司
# 二、判断题(每题 2 分,共 20 分)
16. 如果有以下C++代码:
```cpp
double s;
int t;
s = 18.5;
t = int(s) + 10;
```
那么`cout << t`的结果为 `28.5 `。
- 正确
- 错误
17. `Xyz `, `xYz` ,` xyZ` 是三个不同的变量。
- 正确
- 错误
18. `cout << (8< 9< 10) `的输出结果为 true 。
- 正确
- 错误
19. `for (i = 0; i < 100; i+=2) ; `语句中变量i的取值范围是0到99。
- 正确
- 错误
20. C++中`cout << float(2022)`与`cout << float('2022')`运行后的输出结果均为2022。
- 正确
- 错误
21. 已知`A`的ASCII码值为65,表达式 `int('C')+abs(-5.8) `的值为72.8。
- 正确
- 错误
22. `bool() `函数用于将给定参数或表达式转换为布尔类型。语句 `bool(-1) `返回的是 `false `值。( )
- 正确
- 错误
23. 如果变量 `a `的值使得C++表达式 `sqrt(a)==abs(a)` ,则 `a` 的值为0。( )
- 正确
- 错误
24. 小杨今年春节回奶奶家了,奶奶家的数字电视要设置ip地址并接入到WIFI盒子才能收看节目,那这个WIFI盒子具有路由器的功能。( )
- 正确
- 错误
25. 任何一个`for`循环都可以转化为等价的 `while `循环( )。
- 正确
- 错误