#GESP20230602. GESP C++ 二级(2023 年 06 月)

GESP C++ 二级(2023 年 06 月)

image

C++ 二级 (2023 年 06 月 ,满分 50 分)

一、单选题(每题 2 分,共 30 分)

  1. 高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。 {{ select(1) }}
  • 编辑
  • 保存
  • 调试
  • 编译

  1. 能够实现下面流程图功能的伪代码是( )。

    image {{ select(2) }}

  • if条件判断 then语句块
  • if条件判断 then什么也不做 else语句块
  • while条件判断 do语句块
  • while not条件判断 do语句块

  1. 下列关于 C++语言的叙述,正确的是( )。 {{ select(3) }}
  • char类型变量不能赋值给 int类型的变量。
  • 两个 int类型变量相乘,计算结果还是 int类型。
  • 计算两个 int类型变量相乘时,如果乘积超出了 int类型的取值范围,程序会报错崩溃。
  • 计算两个 double类型变量相除时,如果除数的值为 0.0,程序会报错崩溃。

  1. 下列关于 C++语言的叙述,不正确的是( )。 {{ select(4) }}
  • if语句中的判断条件必须用小括号‘(’和‘)’括起来。
  • for语句中两个‘;’之间的循环条件可以省略,表示循环继续执行的条件一直满足。
  • 循环体包含多条语句时,可以用缩进消除二义性。
  • 除了“先乘除、后加减”,还有很多运算符优先级。

  1. 以下哪个是 C++语言的关键字?( ) {{ select(5) }}
  • main
  • max
  • double
  • sqrt

  1. 以下哪个不是 C++语言的运算符?( ) {{ select(6) }}
  • > =
  • /=
  • ||
  • <>

  1. 如果 a为 int类型的变量,b为 char类型的变量,则下列哪个语句不符合 C++语法?( ) {{ select(7) }}
  • a = a + 1.0;
  • a = (int)(b - '0');
  • b = (char)(a + '0');
  • (int)b = a;

  1. 如果用两个 int类型的变量 a和 b分别表达平行四边形的两条边长,用 int类型的变量 h表达 a边对应的高,则下列哪个表达式不能用来计算 b边对应的高?( ) {{ select(8) }}
  • a / b * (0.0 + h)
  • (0.0 + a * h) / b
  • a * h / (b + 0.0)
  • (a + 0.0) * h / b

  1. 以下哪个循环语句会无限次执行?( ) {{ select(9) }}
  • for(int a= 0; a; a++);
  • for(bool b= false; b<= true; b++);
  • for(char c='A'; c<'z'; c++);
  • for(double d= 0.0; d< 10.0; d+= 0.001);

  1. 如果 a为 char类型的变量,且 a的值为'C'(已知'C'的 ASCII码为 67),则执行 cout<<(a+ 2);会输出( )。 {{ select(10) }}
  • E
  • C+2
  • C2
  • 69

  1. 如果 a和 b均为 int类型的变量,下列表达式能正确判断“a等于 1且 b等于 1”的是( )。 {{ select(11) }}
  • (a == b) && (b == 1)
  • (a && b)
  • (a == b == 1)
  • (a * b == 1)

  1. 如果 a为 char类型的变量,下列哪个表达式可以正确判断“a是数字”?( ) {{ select(12) }}
  • '0' <= a && a<= '9'
  • '1' <= a && a <= '0'
  • '0' <= a <= '9'
  • '1' <= a <= '0'

  1. 在下列代码的横线处填写( ),使得输出是 9。

    image {{ select(13) }}

  • (a + b)
  • (a + b - '0')
  • (char)(a + b)
  • (char)(a + b -'0')

  1. 在下列代码的横线处填写( ),可以使得输出是 42。

    image {{ select(14) }}

  • i % 3 == 0
  • 20 % i == 0
  • i <= 8
  • i >= 18

  1. 执行以下 C++语言程序后,输出结果是( )。

    image {{ select(15) }}

  • A
  • B
  • C
  • D

二、判断题(每题 2 分,共 20 分)【正确(A)错误(B)】

  1. 诞生于 1986年的中华学习机CEC-I入选了 2021年的 CCF计算机历史记忆(一类),它的内存只有 64KB。当时的汉字编码字符集 GB2312中共有 6763个汉字,假如每个汉字用 2个字节编码,将整个 GB2312汉字字符集都放入 CEC-I的内存,也只占用了不超过 1/5的内存空间。 {{ select(16) }}
  • 正确
  • 错误

  1. 域名是由一串用点分隔的名字来标识互联网上一个计算机或计算机组的名称,CCF编程能力等级认证官方网站的域名是 gesp.ccf.org.cn,其中顶级域名是 gesp。 {{ select(17) }}
  • 正确
  • 错误

  1. 在使用 C++语言编写程序时,不能使用 sqrt、abs等数学函数,包含或<math.h>头文件后就能够使用了。 {{ select(18) }}
  • 正确
  • 错误

  1. 在 C++语言中,标识符中可以有下划线‘’。同时,‘’也是 C++语言的运算符。 {{ select(19) }}
  • 正确
  • 错误

  1. 如果 a是 double类型的变量,而且值为 3.5,则表达式 a* 10的计算结果为 35,且结果类型为 int。 {{ select(20) }}
  • 正确
  • 错误

  1. 在 if语句中,如果条件成立时需要执行多条语句,可以使用大括号‘{’和‘}’将这些语句括起来。 {{ select(21) }}
  • 正确
  • 错误

  1. 循环语句的循环体有可能无限制地执行下去。 {{ select(22) }}
  • 正确
  • 错误

  1. ++和==都是 C++语言的运算符,但+=不是。 {{ select(23) }}
  • 正确
  • 错误

  1. 如果 a为 char类型的变量,且取值为大写字母'F',则执行语句 a= a+ 1;后,a的值会变为大写字母'G'。 {{ select(24) }}
  • 正确
  • 错误

  1. 表达式 sqrt(9.0)的计算结果为 3,且结果类型为 int。 {{ select(25) }}
  • 正确
  • 错误