以下关于C语言与C++语言的叙述中,正确的是()
A:只要将C程序的扩展名.c改为.cpp,就可将过程式的C程序转换为面向对象的CH程序 B:由于C++是在C的基础上扩展的,所以C++编译器能编译C源程序 C:在C程序中,也可以用结构体类型定义类 D:与C不同,C++程序中的函数必须属于某个类
如果在程序中的多个地方需要使用同一个常数,那么最好将其定义为一个符号常量,这样()
A:可以缩短程序代码的长度 B:便于进行编译过程的优化 C:可以加快程序的运行速度 D:便于修改此常数并提高可读性
若程序在运行时陷入死循环,则该情况属于()
A:语法错误 B:运行时异常 C:动态的语义错误 D:静态的语义错误
设数组a[1..m,1..n](m>1,n>2)中的元素以行为主序存放,每个元素占用1个存储单元,则最后一个数组元素a[m,n]相对于数组空间首地址的偏移量为()
A:(m-1)*n+n-1 B:(m-1)*n C:m*(n-1) D:m*n
设push、pop分别表示入栈、出栈操作,若初始栈为空,对于元素序列abc,则操作序列push、pop、pop、push、push、pop()
A:得到出栈序列为abc B:得到出栈序列为bac C:得到出栈序列为bca D:是非法的操作序列
在有11个元素的有序数组a[1..11]中进行二分查找(即折半查找),依次与()比较后,成功找到元素a[5]。
A:a[6]、a[2]、a[5] B:a[6]、a[4]、a[5] C:a[6]、a[3]、a[4]、a[5] D:a[6]、a[8]、a[4]、a[5]
一个高度为h的满二叉树的结点总数为2h-1,其每一层结点个数都达到最大值。从根结点开始顺序编号,即根结点编号为1,其左、右孩子结点编号分别为2和3,再下一层从左到右的编号为4、5、6、7,依此类推,每一层都从左到右依次编号,直到最后的叶子结点层为止。那么,在一棵满二叉树中,对于编号为m和n的两个结点,若m=2n+1,则()
A:m是n的左孩子 B:m是n的右孩子 C:n是m的左孩子 D:n是m的右孩子
从未排序的序列中依次取出一个元素与已排序序列中的元素进行比较,然后将其放在已排序序列的合适位置上,该排序方法称为()
A:插入排序 B:选择排序 C:快速排序 D:冒泡排序
非空二叉排序树的定义是:若根结点具有左子树,则左子树中所有结点的关键码均小于根结点的关键码;若根结点具有右子树,则右子树中所有结点的关键码均大于根结点的关键码;左、右子树也是二叉排序树。由此可知,在一个二叉排序树中,()
A:从根结点到任何一个叶子结点的路径上,结点的关键码序列呈递增排列 B:从根结点到任何一个叶子结点的路径上,结点的关键码序列呈递减排列 C:同层次结点从左向右排列,结点的关键码序列呈递增排列 D:同层次结点从左向右排列,结点的关键码序列呈递减排列
对于字符串“software”,其长度为2的子串共有()个。
A:4 B:7 C:28 D:56