计算机等级考试vc++春附答案Word格式文档下载.docx
《计算机等级考试vc++春附答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《计算机等级考试vc++春附答案Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
A.Core2Duo
B.PentiumPRO
C.PentiumIII
D.Pentium4
6.在下列四种PC机主存储器类型中,目前常用的是_____6_____。
A.EDODRAM
B.SDRAM
C.RDRAM
D.DDRSDRAM
7.在下列有关PC机常用I/O接口的叙述中,错误的是7。
A.目前显卡与显示器的接口大多采用VGA接口
B.可用于连接鼠标器的USB接口和PS/2接口的数据传输方式均是串行传输方式
C.USB接口连接器有4个引脚,其中1个引脚可获得由主机提供的+1.5V电源
D.IEEE-1394b接口也是PC机常用的一种高速接口
8.在下列有关PC机外存储器的叙述中,错误的是8。
A.由于数据存取速度慢、容量小等原因,软盘存储器已逐渐被淘汰
B.所有的硬盘都是由2个或2个以上盘片组成的,硬盘中的盘面数为盘片数的2倍
C.目前有些优盘产品可以模拟软盘和硬盘启动操作系统
D.目前常见的组合光驱(“康宝”)既有DVD只读光驱功能,又有CD光盘刻录机功能
9.在下列有关光盘存储容量的叙述中,错误的是9。
A.80ramCD存储容量大约为200多兆字节
B.120mmCD存储容量大约为600多兆字节
C.单面单层的120mmDVD存储容量大约为4.7GB
D.单面单层的120mm蓝光光盘存储容量大约为17GB
10.在下列有关Windows系列操作系统及其功能的叙述中,错误的是10。
A.Windows操作系统采用并发多任务方式支持系统中多个任务的执行
B.WindowsXP分为多个版本,它们可用于不同计算机和不同的应用
.C.与WindowsXP相比,WindowsVista做了许多改进,但其硬件运行环境要求较高
D.无论是硬盘还是光盘,它们均采用相同的文件系统,即FAT文件系统
11.在下列常用应用软件中,不能对编辑的文档设置密码的是11。
A.MicrosoftWord
B.MicrosoftExcel
C.MicrosoftPowerPoint
D.MicrosoftFrontPage
12.在下列关于无线局域网的叙述中,错误的是12。
A.在无线局域网中,无线接入点实际上是一种无线交换机,在室内覆盖距离可达几十米
B.目前无线局域网可采用的协议有Wi-Fi和蓝牙等,后者的数据传输速率比前者更高
C.若某电脑贴有Intel公司的"
Centrino"
(迅驰)标记,则该电脑应有集成的无线网卡
D.无线网卡有多种类型,例如PCI无线网卡、USB无线网卡等
13.IP地址分为A、B、C、D、E五类。
下列4个IP地址中,属于C类地址的是13
A.1.110.24.2
B.202.119.23.12
C.130.24.35.68
n.26.10.35.4R
14.因特网上有许多不同结构的局域网和广域网互相连接在一起,它们能相互通信并协调工作
的基础是因为都采用了______14______
A.ATM协议
B.TCP/lP协议
C.X.25协议
D.NetBIOS协议
15.下列有关因特网接入的叙述中,错误的是______15______。
A.采用电话拨号接入时,数据传输速率只能达几十kbps
B.采用ADSL接入时,网络的下行数据传输速率通常高于上行数据传输速率.
C.采用ADSL接入时,只需要ADSL调制解调器,不需要使用网卡
D.采用有线电视接入时,多个终端用户将共享连接段线路的带宽
16.在下列有关字符集及其编码的叙述中,错误的是______16______。
A.在我国台湾地区使用的汉字编码标准主要是GBK,该标准中收录了大量的繁体汉字
B.GBl8030标准中收录的汉字数目超过2万,WindowsXP操作系统支持该标准
C.Unicode字符集中既收录了大量简体汉字,也收录了大量繁体汉字
D.GB2312是我国颁布的第一个汉字编码标准,该字符集还收录了俄文、希腊字母等
17.若一幅图像的大小为1024×
768,颜色深度为16位,则该图像在不进行数据压缩时,其数据量大约为______17______。
A.768KB、
B.1.5MB
C.3MB
D.12.3MB
18.在下列4种类型的数字化声音文件中,不可能包含人的说话声音的是18。
A.WAV
B.MP3
C.MID
D.WMA
19.在下列有关数字视频的叙述中,错误的是19。
A.PC机所使用的视频卡能将输入的模拟视频信号进行数字化
B.目前使用摄像头获取视频信息时,不需要使用专门的视频卡
C.数字视频在数据压缩时只能使用MPEG标准,DVD就是采用MPEG一4标准压缩的
D.计算机动画是一种合成视频,这种技术是发展动漫产业的基础
20.下列是几种常见的电子商务的分类方法。
若将电子商务分为B-C、B-B等类型,则该分类
是______20______。
A.按交易的双方进行分类
B.按使用的网络类型分类
c.按交易商品性质分类
D.按交易商品规模分类
第二部分C++语言程序设计.
一、选择题(用答题卡答题,答案依次填在21-30答题号内)
21.若有;
intx=6;
则执行语句:
x+=x-=x*x;
后,x的值是(21)
A.36B.-60C.60D.-24
22.以下语句中,存在编译错误的是(22)
A.chara[7],*p;
p=a="
China"
;
B.chara[7],*p=a;
p="
C.char*a;
a="
D.chara[7]={"
};
23.以下有关函数的叙述中,正确的是(23)。
A.函数必须返回一个值B.函数体中必须有return语句
C.函数可以多次重载D.函数可以嵌套定义
24.执行以下语句序列intj=0;
while(j<
25)j+=3;
cout<
<
j<
'
\n'
输出的结果是(24)
A.24B.25C.27D.28
25.实现运行时的多态性需要使用(25)
A.重载函数B.析构函数C.构造函数D.虚函数
26.以下有关类成员的描述中,正确的是(26)
A.友元函数是类的成员函数B.类成员缺省的访问权限是私有的
C.类成员函数必须说明为公有的D.派生类成员函数能访问其基类的所有成员
27.对于任意一个类,其析构函数(27)
A.是唯一的B.可有多个C.只能是缺省的D.允许重载
28.类的成员函数中,没有this指针的是(28)
A.构造函数B.析构函数C.虚函数D.静态成员函数
29.以下有关继承的叙述中,不正确的是(29)。
A.继承可以实现软件复用B.虚基类可解决多继承产生的二义性问题
C.派生类不继承基类的私有成员D.派生类的构造函数要调用基类的构造函数
30.静态数据成员是(30)的数据。
A.私有B.公有C.保护D.所有对象共享
二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行)、
●基本概念题,共5分
1.在C++中,将多态性分为静态多态性和动态多态性两种。
函数重载属于
(1)多态性,运算
符重载属于
(2)多态性。
2.在C++的文件流中,打开文件的方法有二种,一种是使用成员函数open()打开文件,另一种是
使用.(3)打开文件。
3.要使一个指针变量不指向任一变量时,应将该指针变量的值赋为(4)。
4.当用类的成员函数重载一个双目运算符时,该成员函数的形参个数是(5)个。
●阅读程序题,共13分
5.[程序](2分)
#include<
iostream.h>
intf2(int*a,intb)
{
*a=*a+b;
b=*a+b;
"
*a="
*a<
\t"
b="
b<
endl;
return*a+b;
}
voidf1(inta,int&
b)
a=a+b;
b=a+b;
b=f2(&
a,b);
a="
a<
voidmain(void)
{
intx=4,y=5;
f1(x,y);
x<
y<
执行以上程序后输出的第一行是___(6)___,第二行是___(7)___,第三行是___(8)___
6.[程序](3分)
#include<
voidfun(int*s,int*y)
staticintt=3;
*y+=s[t];
t--;
inta[]={10,20,30,40},i,x=0;
for(i=0;
i<
4;
i++){
fun(a,&
x);
执行以上程序后输出的第一行是___(9)___,第三行是___(10)___,第四行是___(11)___
7.[程序](3分)
voidf(intx,inty)
intmid;
if(x<
y){
mid=(x+y)/2;
mid<
f(x,mid);
f(1,10);
执行以上程序后输出的第一行是___(12)___,第二行是___(13)___,第三行是___(14)___。
8.[程序](2分)
intfun(char*s)
char*p=s;
while(*p)p++;
return(p-s);
chars1[]={"
},s2[]={"
Apple\nPear\tCat\0Bye"
sizeof(s1)<
\t'
fun(s1)<
sizeof(s2)<
fun(s2)<
执行以上程序后输出的第一行是___(15)___,第二行是___(16)___。
9.[程序](2分)
string.h>
classB{
public:
B(char*s){name=newchar[strlen(s)+1];
strcpy(name,s);
}
virtualvoidprint(){cout<
姓名;
name<
\n"
protected:
char*name;
};
classP1:
publicB{
P1(char*s,floatg):
B(s){x=g;
voidprint(inti)
{cout<
姓名:
年薪:
万元。
\n"
private:
floatx;
classP2:
P2(char*s,intn):
B(s){num=n;
voidprint(){cout<
月工资:
num<
元。
intnum;
B*p;
Bx("
张明"
);
P1y("
王虎"
4.2);
P2z("
李建国"
5000);
p=&
x;
p->
print();
y;
y.print
(1);
z;
执行以上程序后输出的第二行是(17),第四行是(18)。
●完善程序题,共12分
10.以下程序的功能是;
从键盘接收一行字符串,首先按照字符的ASCII码值从小到大对输入的字符
串进行排序,然后从排序后的字符串中删除重复的字符并输出删除操作后的字符串。
[程序](4分)
char*fun(char*s)
char*p,*q,*r,c;
for(p=s;
___(19)___;
p++){//升序排序
for(q=r=p;
*q;
q++)
if(*r>
*q)
___(20)___;
if(r!
=p){
c=*r;
*r=*p;
*p=c;
}
*p;
p++){//从字符串中删除重复的字符
for(q=p;
*p==*q;
q++);
r=p+1;
while(*q)___(21)___;
//非重复字符向前移
*r=0;
returns;
charstr[200],s[200];
输入一行字符串:
cin.getline(str,200);
strcpy(s,str);
___(22)___;
输入字符串为:
str<
结果字符串为:
s<
12.以下程序的功能是;
从键盘输入一行字符串,将输入字符串中连续的数字作为一个整数,整数前
的"
+"
_"
分别表示正整数和负整数。
依次取出相关的连续数字字符,并转换为整数后存放到整
型数组中。
函数change_int()实现从字符串中依次取出整数并放入数组中
例如;
输入字符串:
sf-123abc+456df7890j"
则输出-1234567890
[程序](4分)
voidchange_int((23))
intflag;
count=0;
while(*p){
flag=1;
//flag=1为正整数,flag=-1为负整数
while((*p<
0'
||*p>
9'
)&
&
___(24)___)p++;
if(*p=='
-'
){‘
flag=-1;
p++;
elseif(*p=='
+'
)p++;
if(*p>
='
&
*p<
){
intnum=0;
while((25)){
num=num*10+*p-'
num=___(26)___;
b[count]=num;
count++;
charstr[400];
inta[20],n;
请输入一个含有数字的字符串;
cin.getline(str,400);
change_int(str,a,n);
输入字符串中共有"
n<
个整数,它们分别是;
for(inti=0;
n;
a[i]<
if((i+1)%4==0)cout<
13.以下程序的功能是;
实现一个队列的简单管理,每一个队列结点包括一个学生的基本信息(姓名,
数学、物理和英语成绩)。
成员函数add()建立一个新结点,并将该结点加入队尾。
成员函数remove()
从队首取下一个结点,并通过参数将所取结点中的数据返回。
成员函数Print()输出队列中各个结点
的值。
当队列非空时,析构函数~Queue()依次删除队列上的各个结点。
classNode{
Node(charnam[],intm,intp,inte)
{strcpy(name,nam);
math=m;
phy=p;
eng=e;
Node(){}
charname[10];
//姓名
intmath,phy,eng;
//数学,物理,英语成绩
Node*nextItem;
friendclassQueue;
classQueue{
Queue(){front=NULL;
back=NULL;
)
~Queue();
voidremove(char*,int&
int&
voidadd(char[],int,int,int);
intis_empty(){returnback==NULL;
//输出队列中各个结点的值
voidPrint()
Node*p=front;
while(p){
math<
phy<
eng<
p=p->
nextItem;
private:
Node*front;
Node*back;
//Queue的成员remove()实现从队列头取下一个结点,并返回该结点的值
voidQueue:
:
remove(charn[],int&
m,int&
p,int&
e)
{
Node*pFront;
//指向头结点的临时指针
pFront=front;
strcpy(n,front->
name);
m=front->
math;
p=front->
phy;
e=front->
eng;
____(27)___;
deletepFront;
//Queue的函数成员add()实现在队列中增加一个项,即增加一个结点
voidQueue:
add(charn[],intm,intP,inte)
Node*pNew=newNode;
strcpy(pNew->
name,n);
pNew->
pNew->
nextItem=NULL;
if(front==NULL)___(28)___;
else{
____(29)___;
back=pNew;
Queue:
~Queue()
Node*p=front,*q;
while(p!
=NULL){
___(30)___;
deleteP;
p=q;
}.
//主函数完成对各成员函数的简单测试
voidmain(void)
Queueq1;
intm,p,e;
charstr[10];
输入队列中学生的姓名、数学、物理,英语成绩(以0结束);
cin>
>
str>
m>
p>
e;
while(strcmp(str,"
O"
)!
=0){
q1.add(str,m,P,e);
输入队列中一个项的值(以0结束);
队列中各项为;
q1.Print();
q1.remove(str,m,p,e);
队列中移下项的值为;
m<
p<
e<
q1.Print();