2025年全国青少年信息素养大赛初赛真题:(算法创意实践挑战赛C++小学组:带解析)
一、单项选择题
- 在 ( C++ ) 中,表示逻辑运算符“或”的是?()
A. | |
B. &
C. ==
D. @
答案:A
解析:||(或)、&(与)、==(是否相等)、@(不属于C++中的运算符)
- 下列选项中,输出结果为 0 的是?()
A. cout << “5-5”;
B. cout << 5-5;
C. cout << 2 *3;
D. cout << 7 /2;
答案:B
解析:
A输出内容为:5-5
B输出内容为:0
C输出内容为:6
D输出内容为:3
- 执行以下程序段,输入 30 50,输出的结果为?()
int a,b;
cin >> a >> b;
if(a > b) {
cout << a;
}
else {
cout << b;
}
A. 30
B. 50
C. 30 50
D. 无输出
答案:B
解析:代码的含义为输出两个数中的较大数
- 在 ( C++ ) 中,a = a - b 可以简写为 a -= b。执行下列代码,输出结果为?()
int a = 18;
a -= 9;
cout << a;
A. 2
B. -6
C. 9
D. 1
答案:C
解析:
-=是复合运算符,a-=9的含义为a=a-9
a初始值为18,执行完a-=9后,a的值为9
- 下列选项中,可以判断变量 n 为偶数的是?()
A. n%1 == 0
B. n%2 == 0
C. n%5 == 0
D. n%7 ==0
答案:B
解析:偶数一定是2的倍数,所有偶数除以2的余数均为0,表达式为n%2==0
-
执行以下程序,输出的结果是?()
1 int array[3] = { 4,5,6}; 2 array[0] = array[0] - 3; 3 cout << array[0] << " " << array[1] << " " << array[2];
A. 4 5 6
B. 1 5 6
C. 4 2 6
D. 4 5 3答案:B 解析: 数组的下标从0开始 初始时:array[0]=4,array[1]=5,array[2]=6 执行array[0] = array[0] - 3 代码后,array[0]=1 所以输出结果为1 5 6
-
现有数组定义为
int num[4] = {6};
,则数组 num 中的元素分别是?()A. 6666
B. 0000
C. 6000
D. 0006答案:C 解析: 数组只显示初始化了一个值,所以:num[0]=6 其它元素用默认初始值0:num[1]、num[2]、num[3]均为0
-
以下程序的功能是对一个正整数 n 进行数位分离,并按逆序打印每一位。①处应该填写?()
#include <iostream> using namespace std; int main(