#2159. C++提高组初中
C++提高组初中
单项选择题(共35题,每题2分,共计70分;)温馨小提示:题并不是越靠后越难哦!
1、以下合法的标识符是( )
{{ select(1) }}
- IF
- -123
- a b
- int
2、设 x 和 y 均为 int 型变量, 则以下语句: x+=y, y=x-y, x-=y;的功能是()
{{ select(2) }}
- 把 x 和 y 按从小到大排列
- 把 x 和 y 按从大到小排列
- 无确定结果
- 交换 x 和 y 中的值
3、数据类型 int 占多少个字节()
{{ select(3) }}
- 1
- 4
- 8
- 10
4、要将字符 A 存储到内存中, 下列正确的写法是( )
{{ select(4) }}
- char x='A' ;
- int x='A' ;
- char x="A" ;
- int x="A";
5、若有定义 int x=4;则执行语句 x += x *= x+1;后, x 的值为( )
{{ select(5) }}
- 5
- 20
- 40
- 无答案
6、下列赋值语句正确的有哪些? ( )
{{ select(6) }}
- -m = 1
- m = 4n
- a + 2 = b – 3
- xx = y * y
7、语句“x=++b” 与下面() 项的语句等价
{{ select(7) }}
- ++b; x=b;
- x=b; ++b;
- b++; b=x;
- x=b; ++x;
8、在 C++语言中, 要求必须是整型的运算符是()
{{ select(8) }}
- /
- ++
- %
- =
9、(8+6)× a-10+c÷2 在 C++中应表示为( )
{{ select(9) }}
- (8+6)× a-10+c÷2
- (8+6)*a-10+c÷2
- (8+6)*a-10+c/2
- (8+6)× a-10+c/2
10、在 C++语言里, 自定义的标识符( )
{{ select(10) }}
- 能使用关键字且不区分大小写
- 不能使用关键字且不区分大小写
- 能使用关键字且区分大小写
- 不能使用关键字且区分大小写
11、计算机存储数据的基本单位是( )。
{{ select(11) }}
- bit
- Byte
- GB
- KB
12、计算机存储数据的最小单位是( )。
{{ select(12) }}
- bit
- Byte
- GB
- KB
13、字符“0” 的 ASCII 码为 48, 则字符“9” 的 ASCII 码为( ) 。
{{ select(13) }}
- 39
- 57
- 120
- 视具体的计算机而定
14、以下不属于面向对象程序设计语言的是( )。
{{ select(14) }}
- C++
- Python
- Java
- C
15、下列程序的输出结果是( )
#include <iostream>
using namespace std;
int main() {
int a = 011, b = 0x11;
cout << ++a << ' ' << b++;
return 0;
}
{{ select(15) }}
- 10 17
- 11 11
- 10 16
- 12 12
16.一个数组定义为double array[3];,则这个数组占用内存的大小为()。 {{ select(16) }}
- 24
- 12
- 6
- 3
17.一个int类型的值,做以下哪个操作,一定会变回原来的值?() {{ select(17) }}
- 左移3位,再右移3位。
- 右移3位,再左移3位。
- 按位或7,再按位与-8。
- 按位异或7,再按位异或7。
18.在下列代码的横线处填写(),可以使得输出是“7”。
{{ select(18) }}

- min>array[i]
- min<array[i]
- min=array[i]
- 以上均不对。
19.下列关于负数的原码、反码、补码的描述中,正确的是() {{ select(19) }}
- 原码和反码互为按位取反(符号位除外),补码为反码加1
- 原码和反码互为按位取反(符号位除外),补码为原码加1
- 反码和补码互为按位取反(符号位除外),原码为反码加1
- 补码和原码互为按位取反(符号位除外),反码为补码加1
20.枚举算法的主要特点是() {{ select(20) }}
- 以空间换时间
- 逐个尝试所有可能的解
- 动态规划
- 贪心策略
21.如果a和b均为int类型的变量,下列表达式能正确判断“a等于0且b等于0”的是() {{ select(21) }}
- ((~a)&&(~b))
- ((a&b)==0)
- ((a|b)==0)
- ((a^b)==0)
22.二进制数 101.11 对应的十进制数是( )。
{{ select(22) }}
- 6.5
- 5.5
- 5.75
- 5.25
23.以比较作为基本运算,在 N个数中找出最大数,最坏情况下所需要的最少的比较次数为 ( )。
{{ select(23) }}
- N
- N-1
- N+1
24.对于入栈顺序为 a, b, c, d, e 的序列,下列( )不是合法的出栈序列。
{{ select(24) }}
- a,b,c,d,e
- e,d,c,b,a
- b,a,c,d,e
- c,d,a,e,b
- 如果一棵二叉树只有根结点,那么这棵二叉树高度为 1。请问高度为 5 的完全二叉树有 ( )种不同的形态?
{{ select(25) }}
- 16
- 15
- 17
- 32
- 表达式 a*(b+c)*d 的后缀表达式为( ),其中 * 和 + 是运算符。
{{ select(26) }}
- **a+bcd
- abc+*d*
- abc+d**
- *a*+bcd
27 . 6 个人,两个人组一队,总共组成三队,不区分队伍的编号。不同的组队情况有( )种。
{{ select(27) }}
- 10
- 15
- 30
- 20
28.一个二维数组定义为int array[5][3];,则array[1][2]和array[2][1]在内存中的位置相差多少字节?() {{ select(28) }}
- 2字节。
- 4字节。
- 8字节。
- 无法确定。
29.如果变量 x的地址是 0x6ffe14, 下面 C++ 代码执行以后输出的是( )。

{{ select(29) }}
- 0x6ffe11
- 0x6ffe14
- 0x6ffe18
- 0x6ffe15
30.排序算法是稳定的(StableSorting),就是指排序算法可以保证,在待排序数据中有两个相等记录的关键字R和S(R出现在S之前),在排序后的列表中R也一定在S前。下面关于排序稳定性的描述,正确的是()。 {{ select(30) }}
- 冒泡排序是不稳定的。
- 插入排序是不稳定的。
- 选择排序是不稳定的。
- 以上都不正确。
31.一个数组定义为int a[5]={1,2,3,4,5};,一个指针定义为int *p=&a[2];,则执行a[1]=*p;后,数组a中的值会变为()。 {{ select(31) }}
- {1,3,3,4,5}
- {2,2,3,4,5}
- {1,2,2,4,5}
- {1,2,3,4,5}
- 考虑如下递归算法
solve(n)
if n≤1 return 1
else if n>=5 return n*solve(n-2)
else return n*solve(n-1)
则调用solve(7)得到的返回结果为( )。
{{ select(32) }}
- 105
- 840
- 210
- 420
33.下列关于 C++语言中数组的叙述,不正确的是( )。 {{ select(33) }}
- 可以定义0个元素的数组。
- 不能定义-1个元素的数组。
- 数组下标越界访问会产生编译错误。
- 程序运行时发生数组下标的越界访问,程序依然可能正常结束。
- 在下列代码的横线处填写( ),可以使得输出是 “120” 。

{{ select(34) }}
- res += array[i];
- res *= array[i]
- res = array[i]
- 以上均不对。
35.有四个人要从A点坐车到B点,车一开始在A点。该车一次最多可坐两个人。已知这四个人中每个人独自坐车到达B点的时间分别为1,2,4,7,且两个人坐车的时间为两人独自坐车时间的较大者。则最短( )时间可以让四个人都到B点(包括从B点把车开回A点的时间)
{{ select(35) }}
- 14
- 15
- 16
- 17