计算机类二级C++

07年计算机等级考试二级C++笔试模拟试题(4)

47 题含答案C++
共 47 题返回本类
1单选题1 / 47
在深度为5的满二叉树中,叶子节点的个数为
查看答案
B. 31
2单选题2 / 47
若某二叉树的前序遍历访问顺序是abdgcefh,中序遍历访问顺序是dgbaechf,则其后序遍历的节点访问顺序是
查看答案
D. gdbehlca
3单选题3 / 47
一些重要的程序语言油口C语言和Pascal语言)允许过程的递归调用而实现递归调用中的存储分配通常用
查看答案
A. 栈
4单选题4 / 47
软件工程的理论和技术性研究的内容主要包括软件开发技术和
查看答案
B. 软件工程管理
5单选题5 / 47
开发软件时对提高开发人员工作效率至关重要的是
查看答案
B. 先进的软件开发工具和环境
6单选题6 / 47
在软件测试设计中,软件测试的主要目的是
查看答案
D. 发现软件错误而执行程序
9单选题9 / 47
下述关于数据库系统的叙述中正确的是
查看答案
B. 数据库系统避免了一切冗余
11单选题11 / 47
下列关于C++语言类的描述中错误的是
查看答案
C. 类与类之间必须是平等的关系,而不能组成层次结构
13单选题13 / 47
以下叙述中正确的是
查看答案
A. 构成C++语言程序的基本单位是类
14单选题14 / 47
己知有定义
const int D二5;
int i=1;
double f=0.32:
char c=15;
则下列选项错误的是
查看答案
B. D--;
15单选题15 / 47
以下程序的输出结果是
#include(iostream. h>
void reverse(int a[],int n)
{ int i,t;
for(i=0;;
{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<
}
查看答案
A. 22
16单选题16 / 47
下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在划线处应填入的选项是
#include
void main()
{
int i=0,j,k;
do{i++;k=316-13*i;}while( );
j=k/11;
cout<<”316=13*”<
}
查看答案
B. k% 11
17单选题17 / 47
设有数组定义:char array[]=”China";,则数组array所占的空间为
查看答案
C. 6个字节
18单选题18 / 47
若已定义:
int a[]={0,1,2,3,4,5,6,7,8,9},*P=a,i;
其中O≤i≤9,则对a数组元素不正确的引用是
查看答案
D. a[10]
19单选题19 / 47
以下程序的输出结果是
#include
void main()
{ int x=1,y=3;
cout<
{int x=0;x+=y*2;
cout<
}
cout<
}
查看答案
C. 1,6,3,2,3
20单选题20 / 47
函数fun的返回值是
fun(char*a,char*b)
{
int num=0,n=0;
while(*(a+num)!=‘\0’)num++;
while(b[n]){*(a+num)=b[n];num++;n++;}
return num;
}
查看答案
D. 字符串a和b的长度之和
21单选题21 / 47
下面程序的结果为
#include
void main()
{ int i;
int a[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)
cout<
}
查看答案
B. 7 5 3
22单选题22 / 47
下面程序的结果为
#include
int c;
class A
{
private:
int a;
static int b;
public;
A(){a=0;c=0;}
void seta(){a++;}
void setb(){b++;}
void setc(){c++;}
void display(){cout<
};
int A::b=0;
void main()
{
A al,a2;
al.seta();
al.setb();
al.setc();
a2.seta();
a2.setb();
a3.setc();
a2.display();
查看答案
B. 122
23单选题23 / 47
下列描述中哪个是正确的。
查看答案
B. 类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的
24单选题24 / 47
下列关于构造函数说法不正确的是
查看答案
C. 构造函数必须有返回值
25单选题25 / 47
如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是
查看答案
D. 重载错误
26单选题26 / 47
在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是
查看答案
D. 选项B)和选项C)都可能
27单选题27 / 47
下列关于模板的说法正确的是
查看答案
D. 类模板中的成员函数全部都是模板函数
28单选题28 / 47
表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是
查看答案
B. showpoint()和eof()
29单选题29 / 47
下面程序段的运行结果是
void main()
{
int t,a,b,c;
a=1;b=2;c=2:
while(a
{t=a;a=b;b=t;c--;}
cout<
}
查看答案
A. 1,2,0
30单选题30 / 47
下列程序中画线处应填入的语句是
class Base
{
public:
void fun(){cout<<”Base of fun”<
};
class Derived:public Base
{
void fun()
{
//显示基类的成员函数fun
cout<<”Derived of fun”<
};
查看答案
C. Base::fun();
31单选题31 / 47
若定义int k=7,x=12;,则值为3的表达式是
查看答案
D. (x%=k)-(k%=5)
32单选题32 / 47
在位运算中,操作数每右移一位,其结果相当于
查看答案
B. 操作数除以2
33单选题33 / 47
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把节点b连接到节点a 之后的语句是
struct node
{ char data;
struct node*next;
}a,b,*p=&a,*q=&b;
查看答案
B. p. next=&b;
34单选题34 / 47
一个类的友元函数能够访问该类的
查看答案
D. 所有成员
35单选题35 / 47
下面程序的输出结果是
#include
#include
void main()
{
char p1[10],p2[10];
strepy(p1,”abc”):
strcpy(p2,”ABC”);
char str[50]=”xyz”;
strcpy(str+2,strcat(p1,p2));
cout<
}
查看答案
C. xyabcABC
37填空题37 / 47
Jackson结构化程序设计方法是英国的M. Jackson提出的,它是一种面向 __ 的设计方法。
查看答案
数据结构
40填空题40 / 47
数据模型按不同应用层次分成3种类型,它们是概念数据模型、__ 和__。
查看答案
  1. 辑数据模型
  2. 物理数据模型
41填空题41 / 47
派生类的成员一般分为两部分,一部分是 __ ,另一部分是自己定义的新成员。
查看答案
从基类继承的成员
42填空题42 / 47
以下程序输出的结果是 __ 。
#include<]ostream. h>
void main()
{
int a=5,h=4,c=3,d;
d=(a>b>c);
cout<
}
查看答案
0
43填空题43 / 47
设i,j,k均为int型变量,则执行完for(i=0,j=10;i<=j;i++,j-- k=i+j;语句后,k的值为 __ 。
查看答案
10
44填空题44 / 47
如果要把返回值为void的函数A声明为类B的友元函数,则应在类B的定义中加入的语句是__ 。
查看答案
friend void A():
47填空题47 / 47
已知程序的结果为123,请填空
#include
template
class A
{
public:
Tx,y,z:
void display(){cout<
}
void main()
{
al;
__
__
__
al.display();
}
查看答案
  1. al.x=1;
  2. al.y=2;
  3. a1.z=3;
← 上一卷下一卷 →