#XSY20260504. 信息素养初赛模拟三
信息素养初赛模拟三
一.单选题(每题 5 分,共 75 分)
- 下列关于C++变量的叙述,正确的是( )
A. 变量可以没有定义就直接使用
B. 对未定义的变量赋值相当于定义了新变量
C. 执行赋值语句后,变量的类型不会改变
D. 变量名可以完全是数字
{{ select(1) }}
- 变量可以没有定义就直接使用
- 对未定义的变量赋值相当于定义了新变量
- 执行赋值语句后,变量的类型不会改变
- 变量名可以完全是数字
- 红军记录行军温度(可能为 -15.5℃),应使用哪种变量类型?( ) {{ select(2) }}
- int
- double
- char
- bool
- 关于
endl,以下说法正确的是( )
A. endl 只能用在 cin 后面
B. endl 的作用是换行
C. endl 和 "\n" 完全一样
D. 一个 cout 语句只能用一次 endl
{{ select(3) }}
- endl 只能用在 cin 后面
- endl 的作用是换行
- endl 和 "\n" 完全一样
- 一个 cout 语句只能用一次 endl
- 红军仓库有子弹200发,分给7个战斗小组,以下哪个表达式可以算出剩余子弹数?( ) {{ select(4) }}
- 200 / 7
- 200 % 7
- 200 - 7
- 200 * 7
- 红军修建营地,需要计算面积。
pow(3, 4)的结果是( ) {{ select(5) }}
- 7
- 12
- 81
- 64
- 关于 if-else if-else 结构,以下说法正确的是( )
A. 所有条件分支都会依次执行
B. 一旦某个条件满足,执行对应语句后跳出整个结构
C. else if 可以单独使用
D. else 分支必须存在
{{ select(6) }}
- 所有条件分支都会依次执行
- 一旦某个条件满足,执行对应语句后跳出整个结构
- else if 可以单独使用
- else 分支必须存在
- C++表达式
2 - 1 && 2 % 10的值是( ) {{ select(7) }}
- 0
- 1
- 2
- 3
- 红军长征途中经过若干桥梁,观察以下代码:
for (int i = 1; i <= 4; i *= 2) {
cout << i << " ";
}
输出结果是( ) {{ select(8) }}
- 1 2 3 4
- 1 2 4
- 1 2 4 8
- 1 2
- 观察以下代码:
int i = 1, sum = 0;
while (i <= 4) {
sum += i;
i++;
}
cout << sum << endl;
输出结果是( ) {{ select(9) }}
- 4
- 6
- 10
- 无限循环
- 以下哪个是C++中合法的
do-while循环?( )
A. do { cout << 1; } while (true);
B. do cout << 1; while (true)
C. do (cout << 1) while (true);
D. while do { cout << 1; };
{{ select(10) }}
- do { cout << 1; } while (true);
- do cout << 1; while (true)
- do (cout << 1) while (true);
- while do { cout << 1; };
- 观察以下代码:
char c = char(65);
cout << c << endl;
输出结果是( ) {{ select(11) }}
- 65
- A
- a
- 编译错误
- 红军根据作战阶段制定不同计划,观察以下代码:
int phase = 1; // 1=侦察 2=突击 3=撤退
if (phase == 1) {
cout << "侦察敌情";
} else if (phase == 2) {
cout << "发起突击";
} else {
cout << "安全撤退";
}
输出结果是( ) {{ select(12) }}
- 侦察敌情
- 发起突击
- 安全撤退
- 侦察敌情发起突击
- 红军根据信号等级选择通讯方式,观察以下代码:
int signal = 3;
switch (signal) {
case 1: cout << "烽火"; break;
case 2: cout << "骑马"; break;
case 3: cout << "电报"; break;
default: cout << "其他"; break;
}
输出结果是( ) {{ select(13) }}
- 烽火
- 骑马
- 电报
- 其他
- 关于C++一维数组,以下说法正确的是( )
A. 数组下标从 1 开始
B. int arr[5] 的有效下标范围是 0~4
C. 数组大小可以在运行时随意改变
D. arr[5] 是合法的数组访问
{{ select(14) }}
- 数组下标从 1 开始
- int arr[5] 的有效下标范围是 0~4
- 数组大小可以在运行时随意改变
- arr[5] 是合法的数组访问
- 以下哪个是正确定义和调用函数的写法?( )
A. int add(int a, b) { return a + b; }
B. int add(int a, int b) { return a + b; }
C. int add(a, b) { return a + b; }
D. add(int a, int b) { return a + b; }
{{ select(15) }}
- int add(int a, b) { return a + b; }
- int add(int a, int b) { return a + b; }
- int add(a, b) { return a + b; }
- add(int a, int b) { return a + b; }
二.判断题(每题 5 分,共 25 分)
- 在C++中,程序按照代码书写顺序从上到下依次执行,这是顺序结构的特征。( ) {{ select(16) }}
- 正确
- 错误
- 循环嵌套中,外层循环每执行一次,内层循环完整执行一遍。( ) {{ select(17) }}
- 正确
- 错误
- 模拟法就是按照题目描述的过程,一步步用代码"模仿"出来。( ) {{ select(18) }}
- 正确
- 错误
- 表达式
6 & 3的值是2。( ) {{ select(19) }}
- 正确
- 错误
- 选择排序每一轮从未排序部分选出最小的元素,放到已排序部分的末尾。( ) {{ select(20) }}
- 正确
- 错误