#4214. 信息素养大赛C++初赛模拟题(四)

信息素养大赛C++初赛模拟题(四)

一.单选题

  1. 表达式(4 * (11 + 12) / 4)的计算结果为( )。

{{ select(1) }}

  • 47
  • 20
  • 23
  • 56
  1. 在C++语言中, int 类型的变量 x 、 y 、 z 的值分别为 2 、 4 、 6 ,以下表达式的值为真的是( )。

{{ select(2) }}

  • x > y || x > z
  • x != z - y
  • z > y + x
  • x < y || !x < z
  1. 在下列代码的横线处填写( ),可以使得输出是正整数 1234 各位数字的平方和。

image

{{ select(3) }}

  • n / 10
  • (n / 10) * (n / 10)
  • n % 10
  • (n % 10) * (n % 10)
  1. 下面C++代码用于判断键盘输入的整数是否为质数。质数是只能被1和它本身整除的数。在横线处应填入代码是( )。

image

{{ select(4) }}

  • N % i
  • N % i == 0
  • N / i == 0
  • N / i
  1. 以下哪个是 C++语言的关键字?( )

    {{ select(5) }}

  • main
  • max
  • double
  • sqrt
  1. 在C++中,与 for(int i = 10; i < 20; i +=2) cout << i; 输出结果相同的是( )。

    {{ select(6) }}

  • for(int i = 10; i < 19; i +=2) cout << i;
  • for(int i = 11; i < 19; i +=2) cout << i;
  • for(int i = 10; i < 21; i +=2) cout << i;
  • 以上均不对
  1. C++表达式 int(-123.123 / 10) 的值是( )。

{{ select(7) }}

  • -124
  • -123
  • -13
  • -12
  1. 下面C++代码执行后的输出是( )。

image

{{ select(8) }}

  • 1
  • 3,9,11
  • 3,6,9,10
  • 1,5,7,11,13,15
  1. 以下数组定义,符合 C++语言语法的是( )。

{{ select(9) }}

  • int a[];
  • int b['3'];
  • int c[3.0];
  • int[3] d;
  1. 如果 a 为 char 类型的变量,下列哪个表达式可以正确判断“a是大写字母”?( )

{{ select(10) }}

  • a - 'A' <= 26
  • 'A' <= a <= 'Z'
  • 'A' <= 'a' <= 'Z'
  • ('A' <= a) && (a <= 'Z')
  1. C++代码用于抽取字符串中的电话号码。约定:电话号码全部是数字,数字之间没有其他符号如连字符或空格等。代码中变量strSrc仅仅是示例,可以包含更多字符。下面有关代码说法,正确的说法是( )。

image

{{ select(11) }}

  • 代码将换行输出各个含有数字的电话号码。
  • 代码将不换行输出各个含有数字的电话号码,号码中间没有分隔。
  • 代码将不换行输出各个含有数字的电话号码,号码中间有分隔。
  • 不能够输出数字电话号码。
  1. 下面C++程序执行的结果是( )。

image

{{ select(12) }}

  • 5
  • 6
  • 10
  • 12
  1. 下列关于C++语言中函数的叙述,正确的是( )。

{{ select(13) }}

  • 函数调用前必须定义。
  • 函数调用时必须提供足够的实际参数。
  • 函数定义前必须声明。
  • 函数声明只能写在函数调用前。
  1. 执行以下 C++语言程序后,输出结果是( )。 image

{{ select(14) }}

  • 3
  • 30
  • 33
  • 无法确定。
  1. 下面C++代码执行后输出是( )。

image

{{ select(15) }}

  • 1,2,3
  • 1
  • 2
  • 3
  1. 在下列代码的横线处填写( ),可以使得输出是“20 10”。

image

{{ select(16) }}

  • int x, int y
  • int * x, int * y
  • int a, int b
  • int & a, int & b
  1. 下面的C++代码实现对list的快速排序,有关说法,错误的是( )。

image

{{ select(17) }}

  • qSort(less)+qSort(greater)+(vector<int>)pivot
  • (vector<int>)pivot +(qSort(less)+ qsort(greater)
  • (qSort(less)+(vector<int>)pivot + qsort(greater))
  • qSort(less)+ pivot + qSort(greater)

18.下面的排序算法都要处理多趟数据,哪种排序算法不能保证 在下一趟处理时从待处理数据中选出最大或最小的数据?( )

{{ select(18) }}

  • 选择排序
  • 快速排序
  • 堆排序
  • 冒泡排序
  1. 下面的代码片段用于将两个高精度整数进行相加。请在横线处填入( ),使其能正确实现相应功能。

image

{{ select(19) }}

  • result =to string(sum%10)+ result;
  • result =to string(carry%10)+ result;
  • result=to string(sum /10)+ result;
  • result=to string(sum %10 + carry)+ result;
  1. 内排序有不同的类别,下面哪种排序算法和冒泡排序是同一类?( )

{{ select(20) }}

  • 希尔排序
  • 快速排序
  • 堆排序
  • 插入排序

二.判断题

  1. C++表达式 ('1' + '1') 的值为 '2' 。

{{ select(21) }}

  • 正确
  • 错误
  1. 在 C++语言中,计算结果必须存储在变量中才能输出。

{{ select(22) }}

  • 正确
  • 错误
  1. C++表达式 2*int('9')*2 的值为36。

{{ select(23) }}

  • 正确
  • 错误
  1. 如果 a 为 char 类型的变量,且取值为小写字母,则执行语句 a = a - 'a' + 'A';后,a 的值会变为与原值对应的大写字母。

{{ select(24) }}

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

{{ select(25) }}

  • 正确
  • 错误
  1. 分治算法的核心思想是将一个大问题分解成多个相同或相似的子问题进行解决,最后合并得到原问题的解。

{{ select(26) }}

  • 正确
  • 错误
  1. 在 C++语言中,数组被定义时,它的大小就确定了。

{{ select(27) }}

  • 正确
  • 错误
  1. 字符常量'0'和'\0'是等价的。

{{ select(28) }}

  • 正确
  • 错误
  1. 在C++语言中,可以通过定义结构体,定义一个新的数据类型。

{{ select(29) }}

  • 正确
  • 错误
  1. 下面C++代码可以计算1到100的累加和,采用的是穷举法。 image

{{ select(30) }}

  • 正确
  • 错误