0 #x1009. 小低组初赛题目

小低组初赛题目

小学低年级组初赛测试题

一、单项选择(共 15 题,每题 2 分,共计 30 分,每题有且仅有一个正确选项)

  1. 不可以作为 c++中的变量名的是 {{ select(1) }}
  • I 以下 love China
  • I_loveChina
  • I_love_China
  • i_loveChina
  1. 在体育课上,N(N>0 且是 3 的倍数)位同学要分成三人一组来打篮球,规则如下: 同学们按照衣服上的编号从 1 到 N 的顺序站成一队,从第一位同学开始,每三位同学为一队, 其中三位同学中编号最小的为队长。例如编号为 1,2,3 的同学为一队,并且编号为 1 同学 为队长。输入一个数字 N,来判断这个同学是不是队长。要实现这个功能,应该在横线处写 的代码为
int n;  

cin >> n; 

if(____){ 

cout <<"是队长"; 

}else{ 

cout <<"不是队长"; 

}

{{ select(2) }}

  • n%2==1
  • n%3==0
  • (n-1)/3==1
  • (n-1)%3==0
  1. 定义一个 double 类型的变量,下面定义不合法的是 {{ select(3) }}
  • double a = 3.14;
  • double a = (double) 3.14;
  • double a = (double)(3.14);
  • double a = double 3.14; .
  1. 执行下列 c++代码,输出的是
    int x = 5,sum=0;
    for(int i=1;i<6;i++){
        sum += (x - i) \* (x - i);
    }
    cout << sum;
    

{{ select(4) }}

  • 30
  • 31
  • 16
  • 18
  1. 下面是小红同学一周的课余时间安排,当输入 5 时,将会输出
    int n;
    cin >> n;
    switch(n){
        case 1: cout << "写作业 " ; break;
        case 2:
        case 3: cout << "学游泳 " ; break;
        case 4:
        case 5:
        case 6: cout << "弹钢琴 " ;
        case 7: cout << "睡觉 " ;
    }
    

{{ select(5) }}

  • 什么也不会输出
  • 弹钢琴 睡觉
  • 弹钢琴
  • 以上都不对
  1. 小华是一名设计师,他正在为一个客户设计一个网站。客户要求网站的主颜色必须是特 定的蓝色,并提供了这个颜色的 RGB 值:(0, 105, 211)。为了在网站的 CSS 代码中使用这个 颜色,小华需要将 RGB 值转换为十六进制表示。他知道,在十六进制表示中,每种颜色(红、绿、 蓝)都用两位数字表示,范围从 00 到 FF。请你帮小华计算下(0,105,211)对应的的 16 进 制表示是

{{ select(6) }}

  • #00105211
  • #0069D3
  • #0066DD
  • #0066D2
  1. 下列流程图输出结果是 image {{ select(7) }}
  • 2
  • 1
  • 3
  • 12
  1. 根据前两个图形中数字的规律,第三个图形的空白处应该填 image {{ select(8) }}
  • 7
  • 10
  • 12
  • 6
  1. 如图分别为 1 到 4 月的兔子情况,假设一对小兔子要一个月才到成熟期(可以生小兔子 的时期),而一对成熟兔子每月会生一对小兔子。如果第一个月时只有一对成熟兔子,7 个 月时会有几对小兔子 image {{ select(9) }}
  • 15
  • 8
  • 12
  • 5
  1. 以下不属于输出设备的是 {{ select(10) }}
  • 键盘
  • 打印机
  • 显示器
  • 音响
  1. 左边给定的是纸盒的外表面,右边哪一项是由它折叠而成 image

{{ select(11) }}

  1. 小明和小红玩一个数字游戏。他们轮流报数,每次可以报 1 个或者 2 个数字,谁先报到30 就赢了。如果小明先报数,并且两人都采用最佳策略,谁会赢得游戏? {{ select(12) }}
  • 小明肯定赢
  • 小红肯定赢
  • 平局
  • 先报数的人肯定输
  1. 某班级人数不知,连续输入成绩直到输入 0 停止,输入结束后求出总成绩。在以下 C++代码横线处应填
    int socre, sum = 0;
    __1__
        cin >> socre;
        sum += socre;
    __2__
    cout << sum;
    

{{ select(13) }}

  • ①处填 do{, ②处填 }while(score)
  • ①处填 while(score>0) { , ②处填 }
  • ①处填 “for( ; ; ) { , ②处填 if(!score) break;}
  • 以上都不对
  1. 如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断“a 等于 0 或 b 不等于 0”的是 {{ select(14) }}
  • (!a) || (!b)
  • (! ( a==0 &&b == 0) )
  • (!a ) || (b )
  • (a == 0) - (b != 0) == 0
  1. ‘^’在 C++中表示异或运算,规则是:如果异或运算左右两边的值同时为真或同时为假,那么计算结果为假,否则计算结果为真。下面程序的运行结果是
    for(int i=1;i<=4;i++){
        bool f = 0;
        for(int j=1;j<=i+1;j++){
            if(f ^ (j==i)){
                cout<<"\*";
                f=1;
            }
            cout<<" ";
        }
    cout<<"\*"<<endl;
    

image

{{ select(15) }}

二,阅读程序(程序输入不超过数组或字符串定义的范围;判断题正确填√,错误填×,除特殊说明外,判断题 1.5 分,选择题 3 分,共计 40 分)

第一题

image

  1. 将第 4 行的 int 改为 unsigned int,程序行为不变 {{ select(16) }}
  1. 将第 6 行(a % 2)和(b % 2)的小括号去掉,程序行为不变 {{ select(17) }}
  1. 当输入为 6666 8666 时,程序输出“1”。 {{ select(18) }}
  1. 当输入为 1234 4321 时,程序输出“0” {{ select(19) }}
  1. 若输出的结果为 0,下列说法正确的是 {{ select(20) }}
  • a 和 b 均为偶数
  • a 和 b 是一个奇数和一个偶数
  • a 和 b 的个位数相同
  • a 和 b 的位数不同

第二题

image

  1. 若输入 n 为 0,此程序可能会发生死循环或运行错误 {{ select(21) }}
  1. 若输入 n 为 1,第 7 行的 if 判断语句和第 8 行的 cnt++语句执行次数不同 {{ select(22) }}
  1. 若输入 n 为 2,输出也为 2。 {{ select(23) }}

24.下列语句中可以替换第 6 行程序的是 {{ select(24) }}

  • for (int i = 1; i < n; i++) {
  • for (int i = 0; i <= n; i++) {
  • for (int i = n; i > 0; i--) {
  • for (int i = n; i >= 0; i--) {
  1. 当输入为 24 时,输出为: {{ select(25) }}
  • 8
  • 6
  • 4
  • 3
  1. 当输入为 484 时,输出为: {{ select(26) }}
  • 9
  • 7
  • 5
  • 4

第三题

image

  1. 将第 5 行的 long long 改为 long,程序行为不变 {{ select(27) }}
  1. 在程序运行的任意时刻,sum 的值都永远小于等于 x {{ select(28) }}
  1. 若不按输入规则,输入 n 为 0,此程序可以在 1s 内完成计算 {{ select(29) }}
  1. 当输入 n 为 4,程序的输出为: {{ select(30) }}
  • 33
  • 34
  • 46
  • 47
  1. 当输入 n 为 6,程序的输出为: {{ select(31) }}
  • 1074
  • 1073
  • 1072
  • 1071
  1. 以下哪段代码的功能和第 10、11 行相同: {{ select(32) }}
  • sum += x; x *= i++;
  • sum += (x *= i++);
  • x *= ++i; sum += x;
  • sum += (x *= ++i);
  1. 已知阶乘表示为 n!,阶乘的计算 n!=n*(n-1)*...*2*1;特别的,0!=1。则此程序的目的为: {{ select(33) }}
  • 计算 0!+1!+...+n!的和
  • 计算 1!+2!+...+n!的和
  • 计算 0!+(0!+1!)+...+(0!+...+n!)的和
  • 计算 1!+(1!+2!)+...+(1!+...+n!)的和

完善程序(单选题,每小题 3 分,共计 30 分)

1. (统计 1 的个数)统计给定范围从 x 到 y(x < y,包括 x 和 y)的所有正整数中,数字 1出现的次数

image

  1. ①处应该填 {{ select(34) }}
  • i <= y
  • i < y
  • i >= y
  • i > y
  1. ②处应该填 {{ select(35) }}
  • 0
  • i
  • x
  • y
  1. ③处应该填 {{ select(36) }}
  • num >= 0
  • num > 0
  • num <= y
  • num >= x
  1. ④处应该填 {{ select(37) }}
  • cnt = 1
  • cnt + 1
  • cnt++
  • num++
  1. ⑤处应该填 {{ select(38) }}
  • num -= 10
  • num -= num % 10
  • num %= 10
  • num /= 10

2、(最长连续天数)妈妈每天都会给小明发零花钱,每天的钱数不同,要求统计零花钱一直下降的最长连续天数

image

  1. ①处应该填 {{ select(39) }}
  • 0
  • 1
  • 365
  • -7
  1. ②处应该填 {{ select(40) }}
  • i <= n
  • i < n
  • i < n + 1
  • i < n - 1
  1. ③处应该填 {{ select(41) }}
  • money <= head
  • money >= head
  • money > head
  • money > head
  1. ④处应该填 {{ select(42) }}
  • days = max(days, num)
  • days = min(days, num)
  • num = max(days, num)
  • num = min(days, num)
  1. ⑤处应该填 {{ select(43) }}
  • head = 0
  • cin >> head
  • money = head
  • head = money