#ZMOJ0001. 阶段性测试1-选择题

阶段性测试1-选择题

1.100以内最大的素数是 ( )。

{{ select(1) }}

  • 89
  • 97
  • 91
  • 93

2.23的二进制是 ( )。

{{ select(2) }}

  • 00010111
  • 00110011
  • 01010011
  • 00010101

3.以下合法的C++语言变量名是( )。

{{ select(3) }}

  • _1a
  • 2a_
  • do
  • a.12

4.下列赋值语句正确的有哪些( )

{{ select(4) }}

  • -m = 1
  • m = 4n
  • a = b2
  • a + 2 = b - 3

5.假设int m = 65;以下类型转换的语句哪种是错误的

{{ select(5) }}

  • float(m)
  • (char)m
  • (bool)(m)
  • double m

6.正确的变量定义是( )

{{ select(6) }}

  • unsigned long d = "1000";
  • float m1 = m2 = 10.0;
  • char c1 = 'A', c2 = A;
  • double x = 0.618, y = 3.14;

7. 设int x; 与计算 | x | 等价的表达式是( )

{{ select(7) }}

  • x > 0 ? x : x
  • x > 0 ? x : -x
  • x < 0 ? x : -x
  • x < 0 ? -x : -x

8.设以下程序:

int a = 10, b = 5, c = 3;

if(a < b) {

  a = b;
}

if(a > c) {

  a += c;

}
 else{
  c = a + c;
}

cout << a << b << c << endl;

最后的输出结果是( )。 {{ select(8) }}

  • 1353
  • 1053
  • 553
  • 10513

9. 若有如下程序段,其中s、a、b、c均已定义为整形变量,且a、c均已经赋值,c > 0。

s = a;

for(b = 1; b <= c; b++)

       s += 1;

则与上述程序段功能等价的赋值语句是( )。 {{ select(9) }}

  • s = a + b
  • s = a + c
  • s = s + c
  • s = b + c

10. 设以下程序:

float x = 2, y = 1;

for(int i = 0; i(   )10; i++) {

y *= 2;

}

cout << y << endl;

其运行结果是2048,则for循环体内空白处应填( )。 {{ select(10) }}

  • 大于
  • 大于等于
  • 小于
  • 小于等于

11. 执行下面的程序段后,k的值是( )。

int k = 1, n = 325;

do {

    k *= n % 10;

    n /= 10;

}while(n);

{{ select(11) }}

  • 3
  • 30
  • 523
  • 325

12. 表达式的值为0的是( )。

{{ select(12) }}

  • 5 / 5 % 5
  • 5 > 2
  • !4
  • 'A' && 7

13.设int a = 11, b = 2;执行下述程序段后,变量a和b的值分别是( )。

do {

    a /= b++;

}while(a > b);

{{ select(13) }}

  • 1 3
  • 1 4
  • 2 3
  • 2 4

14.

int i, j;

for( i = 5; i > 0; i--) {

    for( j = 0; j < 4; j++) {

        ……
        }

    }

循环体执行的次数是( )。 {{ select(14) }}

  • 5
  • 4
  • 20
  • 无限次

15. 读以下程序

#include <iostream>

using namespace std;

int main() {

    int s, a, n;
 
    s = 0;

    a = 1;

    cin >> n;

    do {

        s += 1;

        a -= 2;

    }while(a != n);

    cout << s << endl;

    return 0;

}

若要使输出的结果为2,那么从键盘输入给n的值是( )。 {{ select(15) }}

  • -1
  • -3
  • -5
  • 0

16. 要求按以下程序计算图中表达式的答案

image

#include <iostream>

using namespace std;

int main() {

int n;

float s;

s = 1.0;

for(n = 10; n > 1; n--) {

s = s + 1 / n;


}

cout << s << endl;

return 0;

}

程序运行后输出错误的结果,导致错误结果的的程序行是( ) {{ select(16) }}

  • s = 1.0
  • for(n = 10; n > 1; n--)
  • s = s + 1 / n
  • cout << s << endl;

17.设int a, x = 2;执行语句

a = x > 0 ? 3 * x : x = 10;

后,变量a的值是( )。 {{ select(17) }}

  • 1
  • 2
  • 6
  • 10

18.设有以下程序段:

int x = 2, y = 2, z = 0, a;

a = ++x || ++y && z++;

cout << x << y << z;

执行后输出的结果是( )。 {{ select(18) }}

  • 220
  • 331
  • 320
  • 321