小学低年级组初赛测试题
一、单项选择(共 15 题,每题 2分,共计 30 分,每题有且仅有一个正确选项)
1. 不可以作为 c++ 中的变量名的是( )。
A. I以下 love China
B. I_loveChina
C. I_love_China
D. i_loveChina
2. 在体育课上, N(N>0 且是 3的倍数 )位同学要分成三人一组来打篮球,规则如下:
同学们按照衣服上的编号从 1到 N的顺序站成一队 ,从第一位同学开始 ,每三位同学为一队 ,
其中三位同学中编号最小的为队长。例如编号为 1,2,3 的同学为一队,并且编号为 1同学
为队长 。输入一个数字 N,来判断这个同学是不是队长 。要实现这个功能 ,应该在横线处写
的代码为( )。
1. int n;
2. cin >> n;
3. if(_____){
4. cout <<" 是队长 ";
5. }else{
6. cout <<" 不是队长 ";
7. }
A. n%2==1
B. n%3==0
C. (n-1)/3==1
D. (n-1)%3==0
3. 定义一个 double 类型的变量,下面定义不合法的是( )。
A. double a = 3.14;
B. double a = (double) 3.14;
C. double a = (double)(3.14);
D. double a = double 3.14;
4. 执行下列 c++ 代码,输出的是( )。
1. int x = 5,sum=0;
2. for(int i=1;i<6;i++){
3. sum += (x - i) * (x - i);
4. }
5. cout << sum;
A. 30
B. 31
C. 16
D. 18
5. 下面是小红同学一周的课余时间安排,当输入 5时,将会输出( )。
1. int n;
2. cin >> n;
3. switch(n){
4. case 1: cout << "写作业 " ; break;
5. case 2:
6. case 3: cout << "学游泳 " ; break;
7. case 4:
8. case 5:
9. case 6: cout << "弹钢琴 " ;
10. case 7: cout << "睡觉 " ;
11. }
A. 什么也不会输出
B. 弹钢琴 睡觉
C. 弹钢琴
D. 以上都不对
6. 小华是一名设计师 ,他正在为一个客户设计一个网站。客户要求网站的主颜色必须是特
定的蓝色 ,并提供了这个颜色的 RGB 值 :(0, 105, 211) 。为了在网站的 CSS 代码中使用这个
颜色 ,小华需要将 RGB 值转换为十六进制表示 。他知道 ,在十六进制表示中 ,每种颜色 (红 、绿 、
蓝 )都用两位数字表示 ,范围从 00 到 FF 。 请你帮小华计算下 ( 0, 105 , 211 ) 对应的的 16 进
制表示是( )。
A. #00105211
B. #0069D3
C. #0066DD
D. #0066D2
7. 下列流程图输出结果是( )。
A. 2
B. 1
C. 3
D. 12
8. 根据前两个图形中数字的规律,第三个图形的空白处应该填 ( )。
A. 7
B. 10
C. 12
D. 6
9. 如图分别为 1到 4月的兔子情况 ,假设一对小兔子要一个月才到成熟期 ( 可以生小兔子
的时期 ),而一对成熟兔子每月会生一对小兔子。如果第一个月时只有一对成熟兔子, 7个
月时会有( )对小兔子。
A. 15
B. 8
C. 12
D. 5
10. 以下不属于输出设备的是( )。
A. 键盘
B. 打印机
C. 显示器
D. 音响
11. 左边给定的是纸盒的外表面,右边哪一项是由它折叠而成 ( )。
12. 小明和小红玩一个数字游戏。他们轮流报数 ,每次可以报 1个或者 2个数字 ,谁先报 到
30 就赢了。如果小明先报数 ,并且两人都采用最佳策略 ,谁会赢得游戏?( )
A. 小明肯定赢
B. 小红肯定赢
C. 平局
D. 先报数的人肯定输
13. 某班级人数不知 ,连续输入成绩直到输入 0停止 ,输入结束后求出总成绩 。在以下 C++
代码横线处应填( )。
1. int score,sum=0;
2. ___ ① __
3. cin >> score;
4. sum += score;
5. __ ② _ _
6. cout << sum;
A. ① 处填 do{ , ② 处填 }while(score)
B. ① 处填 while(score>0) { , ② 处填 }
C. ① 处填 “ for( ; ; ) { , ② 处填 if( ! score) break;}
D. 以上都不对。
14. 如果 a 和 b 均为 int 类型的变量 ,下列表达式能正确判断 “ a 等于 0 或 b不等于 0”
的是( ) 。
A. (!a) || (!b)
B. (! ( a==0 &&b == 0) )
C. (! a ) || (b )
D. (a == 0) - (b ! = 0) == 0
15. ‘ ^’ 在 C++ 中表示异或运算,规则是: 如果异或运算左右 两边的值同时为真或同时为
假 , 那么计算结果为假,否则计算结果为真 。 下面程序的运行结果是( )。
1. for(int i=1;i<=4;i++){
2. bool f = 0;
3. for(int j=1;j<=i+1;j++){
4. if(f ^ (j==i)){
5. cout<<"*";
6. f=1;
7. }
8. cout<<" ";
9. }
10. cout<<"*"<<endl;
A. B.
C. D.
二 、阅读程序 ( 程序输入不超过数组或字符串定义的范围 ;判断题正确填 √ ,错误填 × ;
除特殊说明外,判断题 1.5 分,选择题 3分,共计 40 分)
第一题
1. #include <iostream>
2. using namespace std;
3. int main(){
4. int a, b;
5. cin >> a >> b;
6. if ((a % 2) == (b % 2)) {
7. cout << "1";
8. } else {
9. cout << "0";
10. }
11. return 0;
12. }
假设输入的 a、 b均是不超过 10000 的正整数,完成下面的判断题和单选题:
判断题
16. 将第 4行的 int 改为 unsigned int ,程序行为不变。 ( )
17. 将第 6行 (a % 2) 和 (b % 2) 的小括号去掉,程序行为不变。 ( )
18.
2024北京中小学信息学能力测评活动(BCSP-X 2024)小低组基础知识题目