#GESP202603C2T2. 判断题

判断题

第 1 题

小明的妈妈最近刚刚给他买了一块电话手表,除了可以看时间,小明也可以用它和妈妈打电话、收发信息,那么可以推测这块手表中装有一款特定操作系统。

{{ select(1) }}

  • 正确
  • 错误

第 2 题

C++语句 cout << ('4' % '2' == '2' * '2'%2); 执行后的输出是1。

{{ select(2) }}

  • 正确
  • 错误

第 3 题

下面的C++代码段执行时将报错,因为10是整数类型,a是布尔类型。由于类型不同,不能进行加法运算。

bool a = true;
cout << (10 + a);

{{ select(3) }}

  • 正确
  • 错误

第 4 题

下面C++代码段执行后将输出 0-3-6-9-

for (int i=0; i<10; i++){
    if (i % 3)
        continue;
    cout << i << "-";
}

{{ select(4) }}

  • 正确
  • 错误

第 5 题

执行下面的C++代码段,如果是基本数据类型,则语句 cout << (N); 将被执行0次或无数次(即死循环)。

cin >> N;
while (N)
    cout << (N);

{{ select(5) }}

  • 正确
  • 错误

第 6 题

下面的C++代码段可正常执行,删除 continue 不影响执行效果。

for (int i=0; i < 10; i++){
    i+=1;
    continue;
}
cout << (i);

{{ select(6) }}

  • 正确
  • 错误

第 7 题

下面的C++代码段用于计算1到N之间且包含N的所有数字中含有的3的个数。如果将 while (i!=0) 改为 while (abs(i)),则执行结果相同。

cout << "请输入正整数N:";
cin >> N;
cnt = 0;
for (int k=1; k<N+1; k++){
    i = k;
    while (i != 0) {
        if (i % 10 == 3)
            cnt += 1;
        i /= 10;
    }
}
cout << cnt;

{{ select(7) }}

  • 正确
  • 错误

第 8 题

下面的C++代码段执行将不会有输出,因为内层循环j总是0开始,i*j%10将会被满足,执行break,故而小于10,不会满足if判断条件。

for (int i=1; i < 10; i++)
    for (int j=0; j < i; j++)
        if (i*j % 10 == 0)
            break;
if(i >= 10)
    cout << (i*j);

{{ select(8) }}

  • 正确
  • 错误

第 9 题

下列C++代码执行后将输出 1#4#9#16#16

int cnt=0;
for (int i=1; i<5; i++){
    for (int j=1; j<i+1; j++)
        if (i*j % 10 == 0)
            break;
    if (j >= i+1)
        cout << (i*j) << "#";
}
if(i > 5)
    cout << (i*j);

{{ select(9) }}

  • 正确
  • 错误

第 10 题

下面C++代码执行后输出如左图所示,将 "%d" 修改为 "%3d" 即可实现右图输出。

for (int i=1; i<10; i++){
    for (int j=1; j<10; j++)
        printf("%d", i*j);
    printf("\n");
}

{{ select(10) }}

  • 正确
  • 错误