#XSY20260502. 信息素养初赛模拟一

信息素养初赛模拟一

一.单选题(每题 5 分,共 75 分)

  1. 红军某连队需要统计战士人数,以下哪个变量类型最适合存储人数?( ) {{ select(1) }}
  • double
  • char
  • int
  • bool

  1. 红军通讯兵记录电报编号,以下变量定义中,正确的是( )
A. int 3rdMsg = 101;
B. double msg-id = 5.5;
C. char code = 'R';
D. int return = 10;

{{ select(2) }}

  • int 3rdMsg = 101;
  • double msg-id = 5.5;
  • char code = 'R';
  • int return = 10;

  1. 长征途中记录当日行军距离,以下代码输出结果是( )
int distance = 35;
int total = distance;
distance = 50;
cout << total << endl;

{{ select(3) }}

  • 35
  • 50
  • 85
  • 0

  1. 红军指挥部需要输入密码并输出验证结果,以下代码正确的是( )
A. int n; cin << n; cout >> n;
B. int n; cin >> n; cout << n;
C. int n; cout >> n; cin << n;
D. int n; cin >> n; cout >> n;

{{ select(4) }}

  • int n; cin << n; cout >> n;
  • int n; cin >> n; cout << n;
  • int n; cout >> n; cin << n;
  • int n; cin >> n; cout >> n;

  1. 红军仓库有子弹137发,分给12名战士,以下表达式结果为5的是( ) {{ select(5) }}
  • 137 / 12
  • 137 % 12
  • 137 - 12
  • 137 * 12

  1. 以下关于C++逻辑运算符的说法,正确的是( )
A. && 表示逻辑或
B. || 表示逻辑与
C. ! 表示逻辑非
D. ! 可以作用于变量,但不能作用于表达式

{{ select(6) }}

  • && 表示逻辑或
  • || 表示逻辑与
  • ! 表示逻辑非
  • ! 可以作用于变量,但不能作用于表达式

  1. 红军根据伤亡情况判断是否需要增援,观察以下代码:
int wounded = 12, total = 30;
if (wounded > total * 0.3) {
    cout << "请求增援";
} else {
    cout << "继续作战";
}

输出结果是( ) {{ select(7) }}

  • 请求增援
  • 继续作战
  • 请求增援继续作战
  • 编译错误

  1. 三目运算符 (a > b) ? a : b 的功能是( ) {{ select(8) }}
  • 如果 a > b 成立,返回 b,否则返回 a
  • 如果 a > b 成立,返回 a,否则返回 b
  • 返回 a 和 b 的平均值
  • 判断 a 和 b 是否相等

  1. 红军长征途中经过若干省份,观察以下代码:
for (int i = 1; i <= 5; i++) {
    cout << "第" << i << "省" << endl;
}

共输出几行?( ) {{ select(9) }}

  • 4
  • 5
  • 6
  • 无限循环

  1. 红军行军途中需要持续侦察,观察以下代码:
int step = 1;
while (step <= 4) {
    cout << step << " ";
    step++;
}

输出结果是( ) {{ select(10) }}

  • 1 2 3
  • 1 2 3 4
  • 0 1 2 3
  • 1 2 3 4 5

  1. 以下代码的输出结果是( )
int k = 10;
do {
    cout << k << " ";
    k++;
} while (k <= 5);

{{ select(11) }}

  • 无输出
  • 10
  • 10 11 12 13 14 15
  • 无限循环

  1. 表达式 int(3.14) 的值是( ) {{ select(12) }}
  • 3.14
  • 3
  • 4
  • 0

  1. 红军根据侦察到的方向选择行军路线,观察以下代码:
int direction = 2;
switch (direction) {
    case 1: cout << "东"; break;
    case 2: cout << "南";
    case 3: cout << "西"; break;
    default: cout << "北"; break;
}

输出结果是( ) {{ select(13) }}

  • 南西
  • 南西北
  • 东西北

  1. 红军需要输出3行4列的阵地布防图,观察以下代码:
for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 4; j++) {
        cout << "* ";
    }
    cout << endl;
}

共输出多少个星号?( ) {{ select(14) }}

  • 7
  • 10
  • 12
  • 3

  1. 红军用电报码记录暗号,观察以下代码:
char code[20] = "Red";
cout << strlen(code) << endl;

输出结果是( ) {{ select(15) }}

  • 2
  • 3
  • 4
  • 20

二.判断题(每题 5 分,共 25 分)

  1. 在C++中,int a = 5; a = a + 3; 执行后,a 的值为8。( ) {{ select(16) }}
  • 正确
  • 错误
  1. while 循环保证循环体至少执行一次。( ) {{ select(17) }}
  • 正确
  • 错误
  1. 在C++函数中,值传递的参数在函数内被修改,不会影响函数外的变量。( ) {{ select(18) }}
  • 正确
  • 错误
  1. 递归函数必须有停止条件,否则会无限递归。( ) {{ select(19) }}
  • 正确
  • 错误
  1. 指针变量存储的是另一个变量的地址,通过 * 运算符可以访问该地址中的值。( ) {{ select(20) }}
  • 正确
  • 错误