春江苏省计算机二级C考试笔试真题及答案Word格式.docx
《春江苏省计算机二级C考试笔试真题及答案Word格式.docx》由会员分享,可在线阅读,更多相关《春江苏省计算机二级C考试笔试真题及答案Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
D.CMOS中存放着与硬件相关的一些配置信息,以及CMOS设置程序
5.下列有关PC机中央处理器(CPU)和内存(内存条)的叙述中,错误的是___(5)___。
A.目前PC机所使用的Pentium和Core2微处理器的指令系统有数百条不同的指令
B.所谓双核CPU或四核CPU,是指CPU由两个或四个芯片组成
C.DDR内存条、DDR2内存条在物理结构上有所不同,例如它们的引脚数目不同
D.通常台式机中的内存条与笔记本电脑中的内存条不同,不能互换
6.下列有关PC机I/O总线与I/O接口的叙述中,正确的是___(6)___。
A.PC机中串行总线的数据传输速率总是低于并行总线的数据传输速率
B.SATA接口主要用于连接光驱,不能连接硬盘
C.通过USB集线器,一个USB接口理论上可以连接127个设备
D.IEEEl394接口的连接器与USB连接器完全相同,均有6根连接线
7.蓝光光盘(BD)是全高清影片的理想存储介质,其单层盘片的存储容量大约为___(7)___。
A.4.7GB
B.8.5GB
C.17GB
D.25GB
8.下列有关PC机常用I/O设备(性能)的叙述中,错误的是___(8)___。
A.通过扫描仪扫描得到的图像数据可以保存为多种不同的文件格式,例如JPEG、TIF等
B.目前数码相机的成像芯片均为CCD类型,存储卡均为SD卡
C.刷新速率是显示器的主要性能参数之一,目前PC显示器的刷新速率一般在60Hz以上
D.从彩色图像输出来看,目前喷墨打印机比激光打印机有性价比优势
9.下列有关计算机软件的叙述中,错误的是___(9)___·
A.软件的主体是程序,单独的数据和文档资料不能称为软件
B.软件受知识产权(版权)法的保护,用户购买软件后仅得到了使用权
C.软件的版权所有者不一定是软件的作者(设计人员)
D.共享软件允许用户对其进行修改,且可在修改后散发
10.PC机从硬盘启动WindowsXP操作系统是一个比较复杂的过程·
在这个过程中,它需
要经过以下这些步骤:
I.装入并执行引导程序
Ⅱ.读出主引导记录
Ⅲ.装入并执行操作系统
Ⅳ.加电自检
在上述步骤中,正确的工作顺序是___(10)___
A.I、Ⅱ、Ⅲ、Ⅳ
B.Ⅳ、I、lI、Ⅲ
C.Ⅳ、II、I、Ⅲ
D.Ⅳ、Ⅲ、II、I
11.下列有关算法和程序关系的叙述中,正确的是___(11)___
A.算法必须使用程序设计语言进行描述
B.算法与程序是一一对应的
C.算法是程序的简化
D.程序是算法的具体实现
12.采用ADSL方式接入因特网时,ADSLModem将电话线传输信道分为三个信息通道:
语音通道、上行数据通道、下行数据通道。
下列有关这三个信息通道的叙述中,错误
的是___(12)___·
A.语音通道的频带最宽、采用的频率最高,以保证电话通话的质量
B.通常上行数据通道的数据传输速率低于下行数据通道的数据传输速率
C.ADSL的数据传输速率是根据线路情况自动调整的
D.这三个信息通道可以同时工作,即可以同时传输信息(数据)
13.无线局域网是以太网与无线通信技术相结合的产物,其采用的网络协议主要是IEEE
制订的___(13)___。
A.IEEE802.3
B.IEEE802.11
C.IEEE1394
D.IEEE1394b
14.在因特网中目前主要采用IPv4协议,IP地址长度为32位,只有大约36亿个地址。
新的第6版IP协议(IPv6)已经将IP地址的长度扩展到___(14)___位,几乎可以不受限制地提供地址。
A.48
B.64
C.128
D.256.
15.因特网由大量的计算机和信息资源组成,它为网络用户提供了非常丰富的网络服务。
下列与www服务相关的叙述中,错误的是___(15)___。
A.WWW采用客户机/服务器工作模式
B.网页到网页的链接信息由URL指出
C.浏览器是客户端应用程序
D.所有的网页均是HTML文档
16.目前Windows操作系统支持多种不同语种的字符集,即使同一语种(例如汉语)也可
有多种字符集。
下列字符集中,不包括“臺”、“灣”等繁体汉字的是___(16)___。
A.GBK
B.Big5
C.GB2312
D.GBl8030
17.下列与数字图恸图形相关的叙述中,错误的是___(17)___。
A.彩色图像在数字化过程中需进行分色处理,然后对不同的基色进行取样和量化
B.如果某RGB图像的像素深度为12,则可表示的颜色数目为2
C.数码相机常用JPEG格式保存图像文件,该格式的图像大多采用有损压缩编码
D.图形是计算机合成的图像,也称为矢量图形
18.文件的扩展名用于标记文件的类型,用户应该尽可能多地知晓各类文件的扩展名。
下列文件中,属于数字视频的文件是___(18)___
A.ABC.RMVB
B.ABC.DLL
C.ABC.PDF
D.ABC.MIDI
19.下列几种类型的系统软件中,不属于计算机集成制造系统(CIMS)范畴(或者说,与CIMS无直接关系)的是___(19)___。
A.GIS
B.CAM
C.MRP
D.ERP
20.下列有关MicrosoftPowerPoint2003和MicrosoftFrontPage2003软件的叙述中,错误的是20。
A.型用PowerPoint编辑演示文稿时,可以将每张幻灯片保存为JPEG图片
B.利用PowerPoint编辑演示文稿时,可以录制声音。
C.利用FrontPage制作网页时,无法直接查看网页的HTML代码
D.利用FrontPage制作网页时,背景图片可以设置为“水印”效果
第二部分C语言程序设计
一、选择题(用答题卡答题,答案依次填在21--30答题号内,共1O分)
21.以下关于预处理命令的叙述中错误的是___(21)_____。
A.预处理命令由预处理程序解释
B.程序中的预处理命令是以#开始的
C.若在程序的一行中出现多条预处理命令,这些命令都是有效的
D.预处理命令既可以出现在函数定义的外部,也可以出现在函数体内部
22.有如下程序段:
charp1[80]=”NanJing"
p2[20]=“Young"
*p32=”Olympic”;
strcpy(p1,strcat(p2,p3));
printf(“%s\n”,p1);
执行该程序段后的输出是______(22)______
A.NanJingYoungOlympicB.YoungOlympic
C.OlympicD.NanJing
23。
已知有声明”intx[2][3]={0},*p=x[0];
”,以下表达式中有语法错误的是__(23)____·
A.x[0]=1B.p[0]=1C.*p=1D.x[0][O]=1
24.程序中已有预处理命令”#include<
math.h>
“和声明”charx=4,y,*z;
”,以下表达式中能通过编译且无警告信息的是___(24)___
A.y=sqrt(x)%2B.y=“x”C.y=’x’+1D.y=&
’x’
25.已知有定义和声明:
struct
{intx;
}a[4]={{1},{1},{4},{6}},b;
以下语句中语法正确的是___(25)___。
A.if(a[0]==a[1])b=a[O];
B。
if(a[0].x==a[1].x)b=a[0];
C.if(a[0]一>
x==a[1]->
x)b=a[0];
D。
if(!
(a[0]-a[1]))b=a[0];
26.已有声明”intx,a=3,b=2;
”,则执行赋值语句”x=a>
b++?
a++:
b++;
”后,变量x、a、b的值分别为___(26)___。
A.343B.334C.333D.434
27.下面选项中可用作变量名的是___(27)___
A.CaseB.a-bC.$cdD.2ab
28.执行以下程序后的结果是___(28)___。
#include<
stdio.h>
voidmain()
{intx=3;
do
{
printf(“%d\t”,x=x-3);
}while(!
x);
}
A.输出一个数:
0B.输出一个数;
3
C.输出2个数:
0和-3D.无限循环,反复输出数
29.以下关予c语言函数的叙述中,正确的是___(29)___。
A.在一个函数体中可以定义另一个函数,也可以调用其他函数
B.在一个函数体中可以调用另一个函数,但不能定义其他函数+
C.在一个函数体中不可调用另一个嚣数,也不能定义其他函数
在一个函数体中可以定义另一个函数,但不能调用其他函数
30.设有声明”inta=4,b=3,c=5;
”,以下4个程序段中有3个程序段的执行效果是相同的,另一个执行效果不同的是___(30)___。
A。
if(a>
b)c=a,a=b,b=c;
C.if(a>
b)c=a;
a=b;
b=c;
B.if(a>
b){c=a,a=b,b=c;
}
D.if(a>
b){c=a;
二、填空题(将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)
●基本概念
1.除goto语句外,在循环结构中执行___
(1)____语句可提前结束本次循环直接进入下一次循环.
2.若有程序段”inta[10],*p=a,*q;
q=&
a[5];
”,则表达式q-p的值是___
(2)___。
3.执行语句序列”inta,b;
a=b=4;
a+=b%3;
”后,变量a、b的值分别是___(3)___。
4.执行程序段”intx=0x6c;
printf(“x=%x\n”,x);
”后的输出结果为___(4)___。
5.使用TURBOC系统编译C语言源程序后生成的文件名后缀是___(5)___.
·
阅读程序
6.以下程序运行时输出到屏幕的结果是___(6)___。
stdio.h>
#defineL10
#defineCL+L
{intArea;
Area=C*L;
printf(“%d\n”,Area);
7.以下程序运行时输出到屏幕的结果是___(7)___。
#include<
enum{A,B,C=4}i;
{intk=0;
for(i=B;
i<
C;
i++)
k++;
printf(“%d”,k);
8.以下程序运行时输出到屏幕的结果是___(8)___。
voidfun(inta)
{printf("
%d"
a%10);
if((a=a/10)!
=0)fun(a);
{inta=-13;
if(a<
0)
{printf("
-"
);
a=-a;
fun(a);
9.以下程序运行时若输入”201010”,则输出到屏幕的结果中第一行是___(9)___,第三行是___(10)___·
#include<
string.h>
char*fun(intn)
{staticchars[20];
staticintc;
chart[10]={0},i=0,j,k;
while(n>
t[i++]=n%10+'
0'
n=n/10;
puts(t);
for(j=0;
j<
i/2;
j++)
k=t[j],t[j]=t[i-1-j],t[i-1-j]=k;
strcat(s,t);
if(c<
1)
{strcat(s,"
/"
c++;
else
strcat(s,"
\0"
returns;
voidmain()
{inti,m;
char*p;
for(i=0;
2;
{scanf("
&
m);
p=fun(m);
puts(p);
1O.以下程序运行时输出到屏幕的结果中第一行是___(11)___,第二行是___(12)___,
#defineM3
#defineN4
voidfun(inta[M][N])
{inti,j,p;
M;
{p=0;
for(j=1;
N;
if(a[i][p]>
a[i][j])p=j;
printf("
%d\n"
a[i][p]);
{inta[M][N]={{-1,5,7,4},{5,2,4,3},{8,2,3,0}};
11.以下程序运行时输出到屏幕的结果中第一行是___(13)___,第二行是___(14)___,
intf(int*x,int*y,intz)
{*x=*y;
*y=z;
z=*x;
returnz;
{inta=1,b=2,c=3,d;
d=f(&
a,&
b,c);
printf(“%2d%2d\n%2d%2d_\ll”,a,b,c,d);
12.以下程序运行时输出到屏幕的结果中第一行是___(15)___,第二行是___(16)___,
#include"
stdio.h"
structgrade
{intid;
charlevel[3];
intscore[3];
};
charfun(structgrade*t)
{inti,count=0,total=0;
3;
{if(t->
level[i]=='
A'
)count++;
total=total+t->
score[i];
total=total+count;
if(count==3)total++;
return(total>
380?
'
Y'
:
N'
{inti;
structgradestu[3]={{106,"
AAA"
130,132,115},
{107,"
BAB"
113,125,104},
{109,"
AAB"
128,135,114}};
\%d%c\n"
stu[i].id,fun(&
stu[i]));
13.以下程序运行时输出到屏幕的结果中第一行是___(17)___。
第二行是___(18)___.
intfun(inta[],int*p)
{inti,n;
n=*p;
p=&
a[n-1];
for(i=n-2;
i>
=0;
i--)
if(a[i]>
*p)p=&
a[i];
return*p;
{inta[5]={18,2,16,3,6},x=5,y;
y=fun(a,&
x);
y);
完善程序
14.以下程序的功能是验证下列公式是否成立。
请完善程序使其达到要求的功能。
将x取某一值时公式等号左侧的函数值表示为f(x),等号右侧的级数值表示为g(x),若f(x)与g(x)的相对误差小于10
即认为f(x)与g(x)相等。
计算g(x)时,当最后一项的绝对值小于10
时停止累加。
f(x)与g(x)的相对误差计算公式:
include<
#include<
{doublex,f,g,term;
intn;
printf(“\ninputx(-1<
x<
1):
”);
scanf(“___(19)___“,&
f=1/______(20)_____;
n=1;
g=term=1;
while(fabs(term)>
1e-10)
{term=term*___(21)___);
g=g+term;
___(22)___;
if(fabs(f-g)/(fabs(f)+fabs(g))<
1e-6)
printf(“\ntruex=%f,f=%f,g=%f”,x,f,g);
printf(“\nfalsex=%f,f=%f,g=%f”,x,f,g);
15.以下程序的功能是:
将输入的十进制整数转换为指定进制的字符串形式,itob函数的形参s指向的数组用于保存将形参n的值转换为base进制数后的字符串形式。
voidreverse(chars[])
{inti,j;
chartemp;
s[j]!
=’\0’;
j++);
for(i=O,j--;
j;
___(23)___,j--)
{temp=s[i];
s[i]=s[j];
s[j]=temp;
voiditob(intn,chars[],intbase)
{inti=0,sign,t;
if((sign=n)<
O)
n=-n;
while(n>
{t=___(24)___
if(t>
=1O)
s[i++]=t-10+’A’;
s[i++]=___(25)___
n=n/base;
if(sign<
s[i++]=’-‘;
___(26)___;
reverse(s);
{charstr[100];
intn,base;
printf(”请输入被转换的十进制整数和进位制的基数:
\n”);
scanf(“%d%d"
n,&
base);
itob(n,str,base);
printtf(”转换结果为:
printf(“(10进制数)%d->
%s(%d进制数)\n”,n,str,base);
16.存储一组整数的某单向链表结点定义为:
typedefstructn
{intx;
structn*next;
}NODE;
函数NODE*sort(NODE*head)采用插入法对head指向的单向链表中存储的数据按成员x的值从小到大排序。
算法提示:
对链表中从第2个结点开始直到最后结点范围内的每个结点做以下操作:
若第i个结点(i从2开始)的成员x值大于或等于第i-1个结点的成员x值,则保持第i个结点在链表中的位置不变:
否则,先将第i个结点从链表中删除(使第i-1个结点的指针域指向第i+1个结点),再将已脱离链表的原第i个结点插入到链表的前i-1个结点中,并保持插入结点后链表的前i个结点按成员x值从小到大有序。
请完善sort函数使其达到要求的功能。
NODE*sort(NODE*head)
{___(27)___*p1,*p2,*q1,*q2;
p1=head;
p2=p1->
next;
while(p2)
{if(p1->
=p2->
x)
{p1=p2;
___(28)___=p2->
{p1->
next=___(29)___;
/*从链表中删除p2指向的结点*/
/*以下程序段实现将p2指向的结点插入链表中*/
q1=head;
q2=q1->
if(p2->
head->
x)
{p2->
next=___(30)___;
head=p2;
{q1=head;
q2=head->
while(p2->
x>
q2->
{q1=q2;
q2=q2->
p2->
next=q2;
q1->
next=p2;
}
returnhead;
(21)C(22