118 #GESP133. GESP一级第二次训练题单

GESP一级第二次训练题单

  1. 表达式((3 == 0) + 'A' + 1 + 3.0)的结果类型为( ){{ select(1) }}
  • double
  • int
  • char
  • bool
  1. 如果a和b均为int类型的变量,下列表达式不能正确判断“a等于0且b等于0”的是(){{ select(2) }}
  • (a == 0) && (b == 0)
  • (a == b == 0)
  • (!a) && (!b)
  • (a == 0) + (b == 0) == 2
  1. 如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断“a 等于 0 且 b等于 0”的是( )。 {{ select(3) }}
  • (a == b == 0)
  • !(a || b)
  • (a + b == 0)
  • (a == 0) + (b == 0)
  1. 在下列代码的横线处填写(),可以使得输出是“1248”{{ select(4) }} image
  • i++
  • i*=2
  • i+=2
  • i * 2
  1. 执行以下C++语言程序后,输出结果是( )

image {{ select(5) }}

  • 210
  • 113
  • 98
  • 15
  1. if 语句中的条件表达式的结果必须为 bool 类型。() {{ select(6) }}
  • 正确
  • 错误
  1. for 语句的循环体至少会执行一次。() {{ select(7) }}
  • 正确
  • 错误
  1. 在下列代码的横线处填写( ),可以使得输出是“147”。
#include <iostream>
using namespace std;
int main() {
    for (int i = 1; i <= 8; i++)
        if (_________) //在此填入代码
            cout << i;
    return 0;
}

{{ select(8) }}

  • i % 2 == 1
  • i % 3 == 1
  • i = i + 3
  • i + 3
  1. 执行以下C++语言程序后,输出结果是( )。
#include <iostream>
using namespace std;
int main() {
    int sum;
    for (int i = 1; i <= 20; i++)
        if (i % 3 == 0 || i % 5 == 0)
            sum += i;
    cout << sum << endl;
    return 0;
}

{{ select(9) }}

  • 63
  • 98
  • 113
  • 无法确定
  1. if 语句可以没有 else 子句。{{ select(10) }}
  • 正确
  • 错误
  1. do ... while 语句的循环体至少会执行一次。 {{ select(11) }}
  • 正确
  • 错误
  1. 如果 a 和 b 为 int 类型的变量,则表达式 a = b 可以判断 a 和 b 是否相等。{{ select(12) }}
  • 正确
  • 错误
  1. 如果 a 为 int 类型的变量,则表达式(a % 4 == 2)可以判断 a 的值是否为偶数。{{ select(13) }}
  • 正确
  • 错误
  1. C++表达式 2 - 1 && 2 % 10 的值是( ) {{ select(14) }}
  • 0
  • 1
  • 2
  • 3
  1. 在C++语言中, int 类型的变量 x 、 y 、 z 的值分别为 2 、 4 、 6 ,以下表达式的值为真的是( )

{{ select(15) }}

  • x > y || x > z
  • x != z - y
  • z > y + x
  • x < y || !x < z
  1. 对 int 类型的变量 a 、 b 、 c ,下列语句不符合C++语法是( )

{{ select(16) }}

  • c += 5;
  • b = c % 2.5;
  • a = (b = 3, c = 4, b + c);
  • a -= a = (b = 6) / (c = 2);
  1. 下面C++代码执行后的输出是( )
int m = 14;
int n = 12;
if (m % 2 == 0 && n % 2 == 0)
    cout << "都是偶数";
else if (m % 2 == 1 && n % 2 == 1)
    cout << "都是奇数";
else
    cout << "不都是偶数或奇数";

{{ select(17) }}

  • 都是偶数
  • 都是奇数
  • 不都是偶数或奇数
  • 以上说法都不正确
  1. 下面C++代码执行后的输出是( )
int m = 14;
int n = 12;
if (m % 2 && n % 2)
    cout << "都是偶数";
else if (m % 2 == 1 && n % 2 == 1)
    cout << "都是奇数";
else
    cout << "不都是偶数或奇数";

{{ select(18) }}

  • 都是偶数
  • 都是奇数
  • 不都是偶数或奇数
  • 以上说法都不正确
  1. 下面C++代码执行后的输出是( )
int m = 7;
if (m / 5 || m / 3)
    cout << 0;
else if (m / 3)
    cout << 1;
else if (m / 5)
    cout << 2;
else
    cout << 3;

{{ select(19) }}

  • 0
  • 1
  • 2
  • 3
  1. 下面C++代码段执行后的输出是( )
int cnt = 0;
for (int i = 1; i <= 5; i++)
    cnt = cnt + 1;
cout << cnt;

{{ select(20) }}

  • 1
  • 4
  • 5
  • 10
  1. 下面C++代码执行后的输出是( )
int tnt = 0;
for (int i = 1; i < 5; i += 2)
    tnt = tnt + i;
cout << tnt;

{{ select(21) }}

  • 2
  • 4
  • 9
  • 10
  1. 下面C++代码执行后的输出是( )
int n = 5;
int cnt = 1;
while (n >= 0)
{
    cnt += 1;
    n -= 2;
}
cout << cnt;

{{ select(22) }}

  • 3
  • 4
  • 6
  • 7
  1. 下面C++代码用于求正整数的所有因数,即输出所有能整除一个正整数的数。如,输入10,则输出为1、2、5、10;输入12,则输出为1、2、3、4、6、12;输入17,则输出为1、17。在横线处应填入代码是( )
int n = 0;
cout << "请输入一个正整数: ";
cin >> n;

for (_________________) // 此处填写代码
    if (n % i == 0)
        cout << i << endl;

{{ select(23) }}

  • int i = 1; i < n; i + 1
  • int i = 1; i < n + 1; i + 1
  • int i = 1; i < n; i++
  • int i = 1; i < n + 1; i++
  1. 在下列代码的横线处填写( ),可以使得输出是正整数 1234 各位数字的平方和
int n = 1234, s = 0;
for ( ; n; n /= 10)
    s += _______ ; // 此处填写代码
cout << s << endl;

{{ select(24) }}

  • n / 10
  • (n / 10) * (n / 10)
  • n % 10
  • (n % 10) * (n % 10)
  1. 执行以下C++语言程序后,输出结果是( )
int n = 5, s = 1;
for ( ; n = 0; n--)
    s *= n;
cout << s << endl;

{{ select(25) }}

  • 1
  • 0
  • 120
  • 无法确定
  1. C++的循环语句for(int i=0;i<10;i+=2)表示i0开始到10结束但不包含10,间隔为2。 {{ select(26) }}
  • 正确
  • 错误
  1. 在C++语言中,do-while循环不可能导致死循环,但while有可能。 {{ select(27) }}
  • 正确
  • 错误
  1. 在下面的C++代码中,由于循环中的continue是无条件被执行,因此将导致死循环。
for(int i=1;i<10;i++)continue;

{{ select(28) }}

  • 正确
  • 错误
  1. 假设现在是上午十点,求出N小时(正整数)后是第几天几时,如输入20小时则为第2天6点,如N输入4则为今天14点。为实现相应功能,应在横线处填写代码是( )。 image {{ select(29) }}
  • (10 + N) % 24 , (10 + N) / 24
  • (10 + N) / 24 , (10 + N) % 24
  • N % 24 , N / 24
  • 10 / 24 , 10 % 24
  1. 下面的程序用于判断N是否为偶数,横线处应填写代码是( )。 image {{ select(30) }}
  • N % 2 == 0
  • N % 2 = 0
  • N % 2
  • N % 2 != 0
  1. 下面对C++代码执行后输出的描述,正确的是( )。 image {{ select(31) }}
  • 如果输⼊的N是⼩于等于2整数,第5⾏将输出0。
  • 如果输⼊的N是⼤于等于2整数,第5⾏将输出N-1。
  • 如果输⼊的N是⼤于等于2整数,第5⾏将输出N。
  • 以上说法均不正确。
  1. 下面C++代码执行后的输出是( )。

image{{ select(32) }}

  • 10
  • 9
  • 3
  • 1
  1. 下面C++代码执行后的输出是( )

image{{ select(33) }}

  • 90
  • 44
  • 20
  • 10
  1. 下面C++代码执行后的输出是( )

image{{ select(34) }}

  • 11
  • 10
  • 5
  • 4
  1. 下面C++代码用于判断一个数是否为质数(素数),在横线处应填入代码是( ) image{{ select(35) }}
  • cnt = 1
  • cnt = 2
  • cnt =+ 1
  • cnt += 1
  1. 对下面的代码,描述正确的是( ) image{{ select(36) }}
  • 输出 2 6 3 5 4 8 1 0 9 10 10
  • 输出 2 6 3 5 4 8 1 0 9 9
  • 输出 2 6 3 5 4 8 1 0 9 10
  • 提示有编译错误
  1. 执行下面C++代码后输出是( ) image{{ select(37) }}
  • 3
  • 21
  • 27
  • 49
  1. 下图所示C++代码对大写字母 'A' 到 'Z' 分组,对每个字母输出所属的组号,那么输入 'C' 时将输出的组号是?( ) image{{ select(38) }}
  • 3
  • 3 5
  • 3 5 9
  • 以上都不对
  1. for(int i = 1; i < 10; i += 3) ; 表示i从1开始到10结束间隔为3,相当于1、4、7、10。( ) {{ select(39) }}
  • 正确
  • 错误
  1. if 语句中的条件表达式的结果可以为 int 类型。() {{ select(40) }}
  • 正确
  • 错误
  1. 在下面的C++代码 while(1) continue; 中,由于循环中的 continue 是无条件被执行,因此将导致死循环。( ) {{ select(41) }}
  • 正确
  • 错误
  1. C++表达式(1+1==2?flag=1:flag=2) ('1'+'1'=='2'? flag=1:flag=2) 的结果值和表达式 (flag==2) 的相同。( ) {{ select(42) }}
  • 正确
  • 错误
  1. 任何一个 while 循环都可以转化为等价的 for 循环( )。 {{ select(43) }}
  • 正确
  • 错误
  1. 下面C++代码执行时输入21后,有关描述正确的是( )。

image

{{ select(44) }}

  • 代码第4行被执行
  • 第4和第7行代码都被执行
  • 仅有代码第7行被执行
  • 第8行代码将被执行,因为input()输入为字符串
  1. 下面C++代码第2行,总共被执行次数是·( )

image

{{ select(45) }}

  • 10
  • 19
  • 20
  • 21
  1. 下面C++代码执行后的输出是( )

image

{{ select(46) }}

  • 0
  • 7
  • 18
  • 20
  1. 下面C++代码执行后的输出是( )

image

{{ select(47) }}

  • 9#6#3#
  • 9#6#3#0#
  • 8#7#5#4#2#1#
  • 10#8#7#5#4#2#1#
  1. 下面C++代码用于判断键盘输入的整数是否为质数。质数是只能被1和它本身整除的数。在横线处应填入代码是( )

image{{ select(48) }}

  • N % i
  • N % i == 0
  • N / i == 0
  • N / i
  1. 在C++中,while可能是死循环,而for循环不可能是死循环。() {{ select(49) }}
  • 正确
  • 错误
  1. 在C++,break语句用于提前终止当前层次循环,适用于while循环,但不适用于for循环。( ) {{ select(50) }}
  • 正确
  • 错误
  1. 下面C++代码执行时输入10后,正确的输出是( )

image {{ select(51) }}

  • 第5行代码1
  • 第6行代码1
  • 第5行代码 1
  • 第6行代码 1
  1. 下面C++代码执行后输出是( )

image {{ select(52) }}

  • 9 45
  • 10 55
  • 10 45
  • 11 55
  1. 下面C++代码用于判断N是否为质数(只能被1和它本身整除的正整数)。程序执行后,下面有关描述正确 的是( )

image {{ select(53) }}

  • 如果输入负整数,可能输出“是质数”
  • 如果输入2,将输出“不是质数”,因为此时循环不起作用
  • 如果输入2,将输出“是质数”,即便此时循环体没有被执行
  • 如果将 if (N >= 2) 改为 if (N > 2) 将能正确判断N是否质数
  1. 下面的C++代码用于求1~N之间所有奇数之和,其中N为正整数,如果N为奇数,则求和时包括N。有关描述错误的是( )

image {{ select(54) }}

  • 执行代码时如果输入10,则最后一行输出将是 11 25
  • 执行代码时如果输入5,则最后一行输出将是 6 9
  • 将 i += 1 移到 if (i % 2 == 1) 前一行,同样能实现题目要求
  • 删除 if (i % 2 == 1) ,并将 i += 1 改为 i += 2 ,同样可以实现题目要求
  1. 如果一个整数N能够表示为 X*X 的形式,那么它就是一个完全平方数,下面C++代码用于完成判断N是否为一个完全平方数,在横线处应填入的代码是( ) image {{ select(55) }}
  • i == N*N
  • i*10 == N
  • i+i == N
  • i*i == N
  1. 执行下面C++代码后输出的cnt的值是( )

image{{ select(56) }}

  • 8
  • 7
  • 4
  • 1
  1. 在C++中, break 语句用于终止当前层次的循环,循环可以是 for 循环,也可以是 while 循环。() {{ select(57) }}
  • 正确
  • 错误
  1. 在C++, continue 语句通常与 if 语句配合使用。( ) {{ select(58) }}
  • 正确
  • 错误
  1. C++中定义变量 int N ,则表达式(!!N)的值也是 N 的值。( ) {{ select(59) }}
  • 正确
  • 错误