秋季江苏计算机C++试题Word格式文档下载.docx
《秋季江苏计算机C++试题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《秋季江苏计算机C++试题Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
11.常用局域网有以太网、FDDI网等,下面的叙述中错误的是(11)
A•总线式以太网采用带冲突检测载波侦听多路访问(CSMA/CD)方法进行通信
B.FDDI网和以太网可以直接进行互连
C•交换式集线器比总线式集线器具有更高的性能,它能提高整个网络的带宽.
D•FDDI网采用光纤双环结构,具有高可靠性和数据传输的保密性
12.某用户在WWW浏览器地址栏内键入一个URL“
的“/ndex.htm”代表(12)
A.协议类型C.路径及文件名
B.主机域名D.用户名
13.交换式以太网与总线式以太网在技术上有许多相同之处,下面叙述中错误的是(13)
A.使用的传输介质相同C.传输的信息帧格式相同
B.网络拓扑结构相同D.使用的网卡相同
14.下面是关于我国汉字编码标准的叙述,其中正确的是(14)
A.Unicode是我国最新发布的也是收字最多的汉字编码国家标准
B.不同字型(如宋体、楷体等)的同一个汉字在计算机中的内码不同
C.在GBl8030汉字编码标准中,共有2万多个汉字
D.GBl8030与GB2312、GBK汉字编码标准不能兼容
15.数字图像的文件格式有多种,下列哪一种图像文件能够在网页上发布且可具有动画效
果(15)
A.BMPB.GIFC.JPEGD.TIF
16.声卡是获取数字声音的重要设备,.在下列有关声卡的叙述中,错误的是
A.声卡既负责声音的数字化(输入),也负责声音的重建(输出)
B.声卡既处理波形声音,也负责MIDI音乐的合成。
C.声卡中的数字信号处理器(DSP)在完成数字声音编码、解码及编辑操作中起着重
要的作用
D.因为声卡非常复杂,所以它们都被做成独立的PCI插卡形式
17.彩色图像所使用的颜色描述方法称为颜色模型。
显示器使用的颜色模型为RGB三基色模
型,PAL制式的电视系统在传输图像时所使用的颜色模型为
A.YUVB.HSBC.CMYK
18.在信息系统的结构化生命周期开发方法中,绘制E-R图属于(18)阶段的工作
A.系统规划B.系统分析
C.系统设计D.系统实施
19.在下列有关MicrosoftWord2000/2003(中文版)功能的叙述中,(19)
A.起始页的页码可以不为1
B.利用菜单命令,可更改所选英文文本的大小写
C.利用菜单命令“字数统计”,可以统计出当前文档的行数和段落数
D.表格中的数据不可排序,也不能利用公式进行统计计算
20.在下列有关MicrosoftPowerPoint200012003(中文版)功能的叙述中,错误的是()
A.可通过“另存为”操作,将每张幻灯片保存为一个图片文件
B.幻灯片的大小是固定的,用户不可以对其进行设置
C.在排练计时的基础上,可以将幻灯片设置为循环放映
D.可以对字体进行替换,例如将幻灯片中的“宋体”替换为“楷体”
第二部分VisualC++语言程序设计
一、选择题(用答题卡答题,答案依次填在21~30答题号内)
21.设有说明语句:
intd,e;
以下选项中,存在语法错误的是21。
A.d=9+e==d+2;
B.d=e+=2;
C.f=g+f=j*k++;
D.(++d)++;
22.设有函数调用语句:
fun((x1,x2),x3,(x4,x5,x6));
该函数调用中实参的个数是22
A.2B.3C.5D.6
23.以下对二维数组的说明中,存在语法错误的是23
A.inta[][3]={3,2,1,1,2,3};
B.inta[][3]={{3,2,1},{1,2,3}};
C.ima[2][3]={1}D.inta[2][]={{3,2,l},{1,2,3}};
24.以下选项中,存在语法错误的是24。
A.floatx,&
j=x;
B.intc,&
d=c,&
e=d;
C.charb,&
k=b;
D.intf,&
g;
g=f;
25.下述关于抽象类的描述中,错误的是25。
A.可以通过在类中定义纯虚函数的方式定义抽象类
B不可以创建抽象类的对象
C不可以创建抽象类的引用
D.可以创建抽象类的指针
26.下列有关函数缺省参数的描述中,正确的是26。
A:
设置了缺省值的参数左边不允许出现没有指定缺省值的参数
B.同一个函数在同一个文件中可以提供不同缺省参数值
C.参数缺省值要设置在函数定义语句中,不能设置在函数说明语句中
D.一个函数具有缺省值的参数只能有一个。
|
27.在以下选项中,C++语言不能重载的运算符是27
A.?
:
B.+C.[]D.<
=
28.假设a是类E的对象,执行语句:
Eb=a;
则要调用类E中的28。
A.缺省构造函数B.operator=()函数
c.拷贝构造函数D.对象之间的赋值
29.已知在函数set中,语句this一>
ff=5;
与语句ff=5;
的效果完全相同。
根据这一结
论,以下叙述中不正确的是29。
A.ff是某个类的数据成员,Set是该类的友元函数
B.ff是某个类的数据成员,Set是该类的成员函数
C.Set不是该类的静态成员函数
D.ff不是该类的常成员数据
30.以下对派生类的描述中,不正确的是30。
A.一个派生类可以作为另一个派生类的基类
B.派生类至少有一个基类
C.派生类的成员除了它自己的成员以外,还包含它的基类的成员
D.派生类中,从基类继承来的成员的访问权限在派生类中保持不变
二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行)
●基本概念题(共5分)
1.重载函数必须有不同的参数个数或
(1)。
2.在派生类中如果没有重载基类中的纯虚函数,则该派生类是
(2)类
3.设有以下程序:
、
#include<
iostream.h>
#defineS(X)X*X
voidmain(void)
{
intk=2;
cout<
<
++S(k+k)<
'
\n'
;
}
执行该程序后,输出的结果为(3n),k的值为(4)。
4.在多重派生中,若要使公共基类在派生类中只有一个拷贝,则必须将该基类说明
为(5)。
●阅读程序题(共13分)
5.[程序](2分)
#include<
voidmain(void)
staticinta[7]={1},i,j;
for(i=1;
i<
=6;
i++)
for(j=i;
j>
0;
j--)
a[j]+=a[j-1];
for(j=0;
j<
7;
j++)。
a[j]<
endl;
}
程序输出第三行是__6_____,第四行是_____7_______
6.[程序](3分)
iostream.h>
voidmain(void)
{
chars[]="
Iamastudent.Youareastudenttoo."
inta[26]={0};
char*P=s:
while(*P++!
='
A'
&
&
*P<
Z'
)a[*p-'
]++;
elseif(*P>
a'
z'
]++;
for(inti=0;
26;
if(a[i]!
=0)cout<
(char)(i+'
)<
"
a[i]<
endl;
}、
程序的第一行输出为(8),第三行输出为(9)
7.[程序](2分)
intf(intn)
ints=1;
if(n==1)
s=1;
else{
if(n==3)cout<
s<
;
s=n*f(n-1);
returns;
ints;
s=f(5);
s="
程序的第一行输出为(10),第二行输出为(11)
8.[程序](2分)
#include<
char*f(char*s)
for(char*p=s,*q=s;
*q=*p;
p++)
if(*q>
0'
*q<
9'
)q++;
returns;
chars1[]="
It'
s4p.m."
s2[]="
3米=3000毫米"
f(s1)<
f(s2)<
程序输出的第一行是(12),第二行是(13)
9.[程序](3分)
{
inta[10]={73,86,89,28,87,69,88,84,64,90};
intb[4]={60,70,90,101};
intc[4]={0};
10;
i++){
intj=0;
while(a[i]>
=b[j])
j++;
c[j]++;
for(i=0;
4;
c[i]<
\n"
endl:
}
程序输出的第一行是__________,第三行是_____________,最后一行是_________
10.[程序](2分)
#include<
classA{
inta;
.
public:
voidseta(intaa){a=aa;
virtualvoidprint()//第六行
{cout<
a<
\t'
};
classB:
publicA{
intb;
voidsetb(intbb){b=bb;
voidprint()
b<
Aa,*P;
Bb;
a.seta(5);
b.seta(10);
b.setb(20);
P=&
a:
P->
print();
b:
程序输出的是(17)。
如果在第六行中去掉Virtual,则程序输出的是(18)。
●完善程序题(共12分)
11.一个数的各位数字倒过来所得到的新数叫原数的反序数.如果一个数等于它的反序数,则称它为对称数或回文数。
求10000—11000之间的二进制对称数
算法说明:
先将正整数n的二进制字符形式放在字符数组s2中,二进制字符形式的反序放在字符数组s1中,然后,比较这两个字符串,若相等,则是二进制对称数
string.h>
intfunc(intn,char*s1)
charch,s2[33],*p,*q;
p=s1;
q=s2+32;
*q--=(19)
while(n){
ch=(20)//求n的最低二进制位的字符表示形式
n/=2;
*p++=ch;
*q--=ch;
*p=0;
q++;
if(21)returntrue;
elsereturnfalse;
chars[33]={0};
intcount=0;
”二进制对称数如下:
\n”;
for(intn=10000;
n<
11000;
n++)
if(22){
”n=”<
n<
”\t二进制形式为:
”<
count++;
”对称数的个数为:
count<
’\n’;
12.以下程序中的函数fun(int*a,intn)的功能是:
把形参a所指向的数组中的最小值放在a[0]中,接着把形参a所指数组中的最大值放在a[1]中;
把a所指数组中的次小值放在a[2]中,把a所指数组中的次大值放在a[3]中,其余依次类推,直至将数组中数据依次处理完为止
例如:
把a所指向数组中的数据最初排列为:
5,1,3,2,9,7,6,8,4.按以上规则移动数组中的数据后,数据的排列为:
1,9,2,8,3,7,4,6,5
#defineN9
voidfun(int*a,intn)
intmax,min,px,pn,t;
for(inti=0;
i<
n-1;
___23______){
max=min=a[i];
px=pn=i;
for(intj=i+1;
j<
n;
j++){
if(max<
a[j]){
max=a[j];
px=j;
if(min>
min=a[j];
pn=j;
if(pn!
=i){
t=a[i];
a[i]=min;
____24_____
if(px==i)px=pn;
if(25){
t=a[i+1];
a[i+1]=max;
(26)
intb[N]={5,1,3,2,9,7,6,8,4};
”数组中的数据依次为:
for(inti=0;
N;
i++)
b[i]<
’\t’;
fun(b,N);
”处理后数组中的数据依次为:
for(i=0;
13.下列程序中的函数change(node*pa,intx)的功能是:
调整pa指向的链表中结点的
位置。
根据参数X的值,使链表中各结点数据域小于X的结点放在链表的前半部,大于等于x
的结点放在链表的后半部,并将X插人这两部分结点之间。
例如,原链表上各结点的数据依次为:
3,4,2,1,9,6,5,0,10,6
输入:
X=7
经插入新结点后,新链表的各结点数据依次为:
3,4,2,1,6,5,0,6,7,9,10
[程序](4分)
structnode{
intdata;
node*next;
node*change(node*pa,intx)
node*pl,*p2,*P,*q;
pl=p2=pa;
p=newnode;
//生成新结点
p->
data=x:
while(p2一>
data<
x&
p2一>
next!
=0){//找到x应插入的位置
pl=p2;
(27);
if(p2一>
=0)
p一>
next=p2:
//插入以X为数据域的结点
pl一>
next=p:
q=pl;
while(28){//通过循环,将插入结点之后所有数据域小于x的结点前移
x){//数据域小于x的结点插入以x为数据域的新结点之前
next=(29);
next=p;
q一>
next=p2;
q=p2;
p2=pl一>
next;
else
pl=p2;
p2=p2一>
next:
else{//如果链表中所有结点数据域均小于x,则在链尾插入以x为数据域的新结点
next=p;
(30);
returnpa;
nodea[10]={{3},{4},{2},{1},{9},{6},{5},{0},{10},{6}},*head=a,*p;
inti,x;
9;
a[i].next=&
a[i+1];
a[9].next=NULL;
输入x的值:
cin>
>
x;
head=change(head,x);
p=head;
while(p){
p一>
p=p一>
参考答案
一、选择题
21.C22.B23.D24.D
25.C26.B27.A28.C
29.A30.D
二、填空题
(1)不同的参数类型或者参数类型
(2)抽象
(3)15,3
(4)3
(5)虚基类
(6)15
(7)20
(8)a:
4
(9)e:
3
(10)1
(11)s=120
(12)4
(13)33000
(14)1
(15)6
(16)1
(17)520
(18)510
(19)'
\0'
或0
(20)n%2+'
或n%2+48
(21)strcmp(sl,q)==0或者!
strcmp(sl,q)
(22)func(n,s)
(23)i+=2或i=i+2
(24)a[pn]=t
(25)px!
=i+1或者px—i一1
(26)a[px]=t
(27)p2=p2一>
next或p2=pl一>
next
(28)p2或p2!
=0
(29)p2一>
(30)p一>
next=NULL或P一>
next=0或P一>
next='