2012年3月全国计算机等级考试二级C++笔试试卷
时间:2025-05-15
时间:2025-05-15
2012年3月全国计算机等级考试二级笔试试卷
Visual C++程序设计
(考试时间90分钟,满分100分)
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是
A)循环队列是队列的一种链式存储结构
B)循环队列是一种逻辑结构
C)循环队列是队列的一种顺序存储结构
D)循环队列是非线性结构
(2)下列叙述中正确的是
A)栈是一种先进先出的线性表
B)队列是一种后进先出的线性表
C)栈与队列都是非线性结构
D)以上三种说法都不对
(3)一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为
A)4 B)16 C)10 D)6
(4)在下列模式中,能够给出数据库物理存储结构与物理存取方法的是
A)逻辑模式B)概念模式
C)内模式D)外模式
(5)在满足实体完整性约束的条件下
A)一个关系中可以没有候选关键字
B)一个关系中只能有一个候选关键字
C)一个关系中必须有多个候选关键字
D)一个关系中应该有一个或多个候选关键字
(6)有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是
A)并 B)差C)交 D)自然连接
(7)软件生命周期的活动中不包括
A)软件维护B)需求分析
C)市场调研D)软件测试
(8)下面不属于需求分析阶段任务的是
A)确定软件系统的性能需求
B)确定软件系统的功能需求
C)制定软件集成测试计划
D)需求规格说明书评审
(9)在黑盒测试方法中,设计测试用例的主要根据是
A)程序外部功能
B)程序数据结构
C)程序流程图
D)程序内部结构
(10)在软件设计中不使用的工具是
A)系统结构图 B)程序流程图
C)PAD图D)数据流图(DFD图)
(11)若一个函数的原型为"int * Xfun1(int x,int& y,char z);",则该函数的返回值类型为
A)int * B)int
C)int& D)char
(12)若AA为一个类,a为该类的私有整型数据成员,getA()为该类的一个非静态公有成员函数,功能是返回a的值。如果x为该类的一个对象,要在类外访问x对象中a的值,正确的访问格式为
A)AA.getA() B)x.getA()
C)x.a D)AA::a
(13)当派生类继承一个基类时,默认的继承方式为
A)public B)protected
C)private D)不确定
(14)若需要为XV类重载乘法运算符,运算结果为XV类型,在将其声明为类的成员函数时,下列原型声明正确的是
A)XV operator *(XV,XV); B)XV *(XV);
C)operator *(XV); D)XV operator *(XV);
(15)在定义函数模板或类模板时,开头的保留字是
A)typename B)template
C)class D)typedef
(16)若需要向一个二进制文件尾部添加数据,则该文件的打开方式为
A)ios_base::app
B)ios_base::binary | ios_base::out
C)ios_base::out
D)ios_base::binary | ios_base::app
(17)在开发一个c++程序的整个过程中,第3个步骤为
A)链接 B)运行
C)编辑D)编译
(18)若有定义"int x=4,y=5;",则表达式"y>x++?x--:y++"的值为
A)3 B)4
C)5 D)6
(19)有如下程序:
#include<iostream>
using namespace std;
int main(){
int i,s=0;
for(i=1;s<20;i+=2)s+=i*i;
cout<<i<<endl:
return 0;
}
运行这个程序的输出结果是
A)3 B)5 C)7 D)9
(20)若字符指针p所指向的字符串为"abcdefg",在执行语句 char *ap=new char[strlen(p)+1]; 之后,ap指向的字符数组的元素个数为
A)9 B)8 C)7 D)6
(21)有如下程序:
#include<iostream>
using namespace std;
void fl(int& x){x++;}
void f2(int x){++x;}
int main(){
int x=10,y=12;
f1(x);
f2(y);
cout<<x+y<<endl:
return 0;
}
运行这个程序的输出结果是
A)22 B)23 C)24 D)25
(22)有如下程序:
#include<iostream>
using namespace std;
class XA{
int a;
public:
static int b;
XA(int aa):a(an){b++;}
int getA(){return a;}
};
int XA::b=0;
int main(){
XA d1(4),d2(5);
cout<<d1.getA()+d2.getA()+XA::b+d1.b<<endl;
return 0;
}
运行这个程序的输出结果是
A)9 B)11 C)13 D)15
(23)有如下程序:
#include<iostream>
using namespace std;
class XX{
int x;
public:
XX(int xx=0):x(xx){}
int getX(){return x;}
};
class YY:public XX{
int y;
public:
YY(int xx,int yy):x(xx),y(yy){}
int getV(){return getX()+y;}
};
int main(){
YY c(3,4);
cout<<c.getV()+c.getX()<<endl;
return 0;
}
运行这个程序的输出结果是
A)3 B)4 C)7 D)10
(24)在类中重载赋值运算符时,应将其声明为类的
A)静态函数B)友元函数
C)成员函数 D)构造函数
(25)若有函数模板mySwap和一些变量定义如下:
template<class T>
void mySwap(T X,T Y);
double d1,d2;int i1,i2;
下列对mySwap的调用中,错误的是
A)mySwap(i1,i2)
B)mySwap(d1,d2)
C)mySwap(i1,d1)
D)mySwap<int>(i2,d2)
上一篇:医药产品项目规划设计方案
下一篇:室内回填土施工工艺标准