11对长度为n的线性表排序,在最坏情况下,比较次数不是n(rt一1)/2的排序方法是( )。
A.快速排序B.冒泡排序C.直接插入排序D.堆排序
参考答案:D
参考解析:除了堆排序算法的比较次数是0(nlog2n),其他的都是n(n—1)/2。
12字面常量42、4.2、42L的数据类型分别是( )。
A.long,double、int
B.lon9、float、int
C.int、double、long
D.int、float、long
参考答案:C
参考解析:本题考查整型变量的类型和浮点变量的类型,42默认为int型数据,42后面加上L后,表示long型数据,4.2默认为double型数据。
13下列叙述中正确的是( )。
A.栈是“先进先出”的线性表
B.队列是“先进后出”的线性表
C.循环队列是非线性结构
D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
参考答案:D
参考解析:栈是先进后出的线性表,所以A错误;队列是先进先出的线性表,所以B错误;循环队列是线性结构的线性表,所以C错误。
14不能作为重载函数的调用的依据是( )。
A.参数个数B.参数类型C.函数类型D.函数名称
参考答案:D
参考解析:所谓重载函数是指同一个函数名可以对应多个函数的实现,编译器会根据参数个数、参数类型和函数返回值类型不同而自动调用相应的函数。
15下列语句中,错误的是( )。
A.const int buffer=256;B.const double*point;C.int const buffer=256;D.double*eonst point:
参考答案:D
参考解析:const是一个C++关键字,用于限定不允许改变的变量。选项B是指向常量的指针,定义时可以不初始化;选项D是指针常量,定义时必须初始化。故答案为D。
16下列运算符中,在c++语言中不能重载的是( )。
A.*B.>=C.::D./
参考答案:C
参考解析:不能被重载的运算符还包括:“.”、“.*”、“->*”和“?:”。
17有如下说明:
int a[10]={1,2,3,4,5,6,7,8,9,10},* P=a; 则数值为9的表达式是( )。
A.*P+9B.木(P+8)C.*P+=9D.P+8
参考答案:B
参考解析:本题考查指向数组的指针,本题中指针变量P指向数组a,那么*P的值就是1,即表示数组的第一个元素,那么数值为9的表达式就是将指针向后移动8个地址,即P+8指向的是数组元素值为9,所以数值为9的表达式是*(P+8)。
18执行下列语句段后,输出字符“*”的个数是( )。
for(int i=50;i>1;i-=2)Cout<<'*':
A.24B.25C.26D.50
参考答案:B
参考解析:本题考查for循环语句,题目中每执行完循环体后,i都会减2.那么只有50到2之间的偶数才能输出“*”,所以总共输出25次。
19算法的有穷性是指( )。
A.算法程序的运行时间是有限的
B.算法程序所处理的数据量是有限的
C.算法程序的长度是有限的
D.算法只能被有限的用户使用
参考答案:A
参考解析:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。有穷性是指算法程序的运行时间是有限的。
20下面关于break语句的描述中,不正确的是( )。
A.break可以用于循环体内
B.break语句可以在for循环语句中出现多次
C.break语句可以在switch语句中出现多次
D.break语句可用于if条件判断语句内
参考答案:D
参考解析:本题考查的是break语句的使用,break可以结束switch语句和for循环语句,但是不能使用在条件判断语句内。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |