1、【
单选题
】
算法分析的目的是( )
[2分]
、
找出数据结构的合理性
、
找出算法中输入和输出之间的关系
、
分析算法的易懂性和可靠性
、
分析算法的效率以求改进
答案:
2、【
单选题
】
在单链表中,增加头结点的目的是( )
[2分]
、
方便运算的实现
、
使单链表至少有一个结点
、
标识表结点中首结点的位置
、
说明单链表是线性表的链式存储实现
答案:
3、【
单选题
】
软件开发离不开系统环境资源的支持,其中必要的测试数据属于( )
[2分]
、
硬件资源
、
通信资源
、
支持软件
、
辅助资源
答案:
4、【
单选题
】
分布式数据库系统不具有的特点是( )
[2分]
、
数据分布性和逻辑整体性
、
位置透明性和复制透明性
、
分布性
、
数据冗余
答案:
5、【
单选题
】
栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是( )
[2分]
、
ABCED
、
DCBEA
、
DBCEA
、
CDABE
答案:
6、【
单选题
】
在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率。与程序的效率相比,人们更重视程序的( )
[2分]
答案:
7、【
单选题
】
软件开发的结构化生命周期方法将软件生命周期划分成( )
[2分]
、
定义、开发、运行维护
、
设计阶段、编程阶段、测试阶段
、
总体设计、详细设计、编程调试
、
需求分析、功能定义、系统设计
答案:
8、【
单选题
】
数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有( )
[2分]
、
特定的数据模型
、
数据无冗余
、
数据可共享
、
专门的数据管理软件
答案:
9、【
单选题
】
下列关于C++语言类的描述错误的是( )
[2分]
、
类用于描述事物的属性和对事物的操作
、
类与类之间通过封装而具有明确的独立性
、
类与类之间必须是平等的关系,而不能组成层次结构
、
类与类之间可以通过一些方法进行通信和联络
答案:
10、【
单选题
】
以下叙述中正确的是( )
[2分]
、
构成C++语言程序的基本单位是类
、
可以在一个函数中定义另一个函数
、
main()函数必须放在其他函数之前
、
所有被调用的函数一定要在调用之前进行定义
答案:
11、【
单选题
】
以下程序的输出结果是( )
#include<iostream.h>
void reverse(int a[],int n)
{ int i,t;
for(i=0;i<n/2;i++)
{ t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}
}
void main()
{ int b[10]={1,2,3,4,5,6,7,8,9,10};int i,s=0;
reverse(b,8);
for(i=6;i<10;i++)s+=b[i];
cout<<s;
}
[2分]
答案:
12、【
单选题
】
设有数组定义:char array[]=″China″;,则数组array所占的空间为( )
[2分]
、
4个字节
、
5个字节
、
6个字节
、
7个字节
答案:
13、【
单选题
】
下面的哪个选项不能作为函数的返回类型?( )
[2分]
、
void
、
int
、
new
、
long
答案:
14、【
单选题
】
下面程序输出的结果是( )
#include<iostream.h>
void main()
{ int i;
int a[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
cout<<a[2-i][i]<<″ ″;
}
[2分]
、
1 5 9
、
7 5 3
、
3 5 7
、
5 9 1
答案:
15、【
单选题
】
如果友元函数重载一个运算符时,其参数表中没有任何参数是说明该运算符是( )
[2分]
、
一元运算符
、
二元运算符
、
选项A和选项B都可能
、
重载错误
答案:
16、【
单选题
】
下列关于模板的说法正确的是( )
[2分]
、
模板的实参在任何时候都可以省略
、
类模板与模板类所指的是同一概念
、
类模板的参数必须是虚拟类型的
、
类模板中的成员函数全部都是模板函数
答案:
17、【
单选题
】
下面程序段的运行结果是( )
void main()
{int t,a,b,c;
a=1;b=2;c=2;
while(a<b<c)
{ t=a;a=b;b=t;c--;}
cout<<a<<″,″<<b<<″,″<<c;}
[2分]
、
1,2,0
、
2,1,0
、
1,2,1
、
2,1,1
答案:
18、【
单选题
】
若定义int k=7,x=12;,则能使值为3的表达式是( )
[2分]
、
x%=(k%=5)
、
x%=(k-k%5)
、
x&=k-k%5
、
(x%=k)-(k%=5)
答案:
19、【
单选题
】
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把结点b连接到结点a之后的语句是( )
struct node
{ char data;
struct node *next;
} a,b,*p=&a,*q=&b;
[2分]
、
a.next=q;
、
p.next=&b;
、
p->next=&b;
、
(*p).next=q;
答案:
20、【
单选题
】
以下都是C++语言标识符的是( )
[2分]
、
dsfa,df4,f$
、
huhj,a^,k2
、
3k,h,j_9
、
_ok,jk,k8
答案:
21、【
单选题
】
设以下变量均为int类型,则值不等于7的表达式是( )
[2分]
、
(x=y=6,x+y,x+1)
、
(x=y=6,x+y,y+1)
、
(x=6,x+1,y=6,x+y)
、
(y=6,y+1,x=y,x+1)
答案:
22、【
单选题
】
while和do-while循环的主要区别是( )
[2分]
、
do-while的循环体至少无条件执行一次
、
while的循环控制条件比do-while的循环控制条件更 严格
、
do-while允许从外部转到循环体内
、
do-while的循环体不能是复合语句
答案:
23、【
单选题
】
若二维数组a有m列,则计算任一元素a[i][j]在数组中相对位置的公式为(假设a[0][0]位于数组的第一个位置上)( )
[2分]
、
i*m+j
、
j*m+i
、
i*m+j-1
、
i*m+j+1
答案:
24、【
单选题
】
下面叙述不正确的是( )
[2分]
、
派生类一般都用公有派生
、
对基类成员的访问必须是无两义性的
、
赋值兼容则也适用于多重继承的组合
、
基类的公有成员在派生类中仍然是公有的
答案:
25、【
单选题
】
关于友元的概念错误的是( )
[2分]
、
友元函数没有this指针
、
调用友元函数时必须在它的实参中给出要访问的对象
、
一个类的成员函数也可以作为另一个类的友元函数
、
只能在类的公有段声明友元
答案:
26、【
单选题
】
下面程序的结果是( )
#include<iostream.h>
class test{ private:
int num;
public:
test();
int getint() {return num;}
~test();};
test::test()
{ num =0;}
test::~test()
{ cout<<″Destructor is active″<<endl;}
void main()
{ test x[3];
cout<<″Exiting main″<<endl;}
[2分]
、
Exiting is actice
Destructor is active
Destructor is active
Destructor is active
、
Exiting main
Destructor is active
Destructor is active
、
Exiting main
Destructor is active
、
Exiting main
答案:
27、【
单选题
】
下列语句不能够用于打开C根目录下文件test.txt的语句是( )
[2分]
、
ifstream fin;fin.open(″C:\\test.txt″);
、
ifstream fin(″C:\\test.txt″);
、
A和B
、
ifstream fin;fin(″C:\\test.txt″);
答案:
28、【
单选题
】
下列关于C++函数的描述中正确的是( )
[2分]
、
主函数是程序的入口,它由用户定义的函数调用
、
函数在调用之前必须先被声明
、
每个用户定义的函数只能被其他函数调用一次
、
函数是C++中面向对象程序设计框架的基本组成单元
答案:
29、【
单选题
】
有以下程序
#include<iostream.h>
void main()
{ int a=5,b=0,c=0;
if(a=b+c)cout<<″***″<<endl;
else cout<<″$$$″<<endl;}
下列选项叙述正确的是( )
[2分]
、
有语法错不能通过编译
、
可以通过编译但不能通过连接
、
输出***
、
输出$$$
答案:
30、【
单选题
】
以下程序中循环体总的执行次数是( )
int i,j;
for(i=6;i>1;i--)
for(j=0;j<i;j++)
{……}
[2分]
答案:
31、【
单选题
】
下列程序的输出结果是( )
#include<iostream.h>
void main()
{ int a[3],i,j,k=2;
for(i=0;i<3;i++)a[i]=i;
for(i=0;i<k;i++)
for(j=0;j<k;j++)
a[j]=a[i];
cout<<a[2];}
[2分]
答案:
32、【
填空题
】
将代数式
______________ 换成程序设计中的表达式为
。
╱ X*X+Y*Y
Z= ╱ ----------
╲╱ a+b
[每空2分]
答案:
["SORT(x^2+y^2)/(a+b)"]
33、【
填空题
】
是数据库设计的核心。
[每空2分]
答案:
["数据模型"]
34、【
填空题
】
测试的目的是暴露错误,评价程序的可靠性;而
的目的是发现错误的位置并改正错误。
[每空2分]
答案:
["调试"]
35、【
填空题
】
在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为
。
[每空2分]
答案:
["4"]
36、【
填空题
】
常用的黑箱测试有等价分类法、
、因果图法和错误推测法4种。
[每空2分]
答案:
["边值分析法"]
37、【
填空题
】
是C++语言程序的入口。
[每空2分]
答案:
["6"]
38、【
填空题
】
C++语言的基本控制结构为顺序结构、选择结构和
。
[每空2分]
答案:
["循环结构"]
40、【
填空题
】
若已知a=10,b=20,则表达式!a<b的值为
。
[每空2分]
答案:
["1"]