历年江苏省计算机二级C语言历年真题及答案笔试docx.docx
- 文档编号:23834468
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:82
- 大小:64.91KB
历年江苏省计算机二级C语言历年真题及答案笔试docx.docx
《历年江苏省计算机二级C语言历年真题及答案笔试docx.docx》由会员分享,可在线阅读,更多相关《历年江苏省计算机二级C语言历年真题及答案笔试docx.docx(82页珍藏版)》请在冰豆网上搜索。
历年江苏省计算机二级C语言历年真题及答案笔试docx
2009年春季江苏省高校计算机等级考试考试试题
第一部分计算机基础知识
1.在下列有关现代信息技术的一些叙述中,正确的是1。
A.集成电路是20世纪90年代初出现的,它的出现直接导致了微型计算机的诞生
B.集成电路的集成度越来越高,目前集成度最高的已包含几百个电子元件
C.目前所有数字通信均不再需要使用调制解调技术和载波技术
D.光纤主要用于数字通信,它采用波分多路复用技术以增大信道容量‘.
2.最大的10位无符号二进制整数转换成八进制数是2.。
A.1023B.1777C.1000D.1024
3.在下列有关目前PC机CPU的叙述中,错误的是3。
A.CPU芯片主要是由Intel公司和AMD公司提供的B."双核"是指PC机主板上含有两个独立的CPU芯片
C.Pentium4微处理器的指令系统由数百条指令组成D.Pentium4微处理器中包含一定容量的Cache存储器
4.在下列有关当前PC机主板和内存的叙述中,正确的是4。
A.主板上的BIOS芯片是一种只读存储器,其内容不可在线改写
B.绝大多数主板上仅有一个内存插座,因此PC机只能安装一根内存条
C.内存条上的存储器芯片属于SRAM(静态随机存取存储器)
D.目前内存的存取时间大多在几个到十几个ns(纳秒)之间
5.在下列有关PC机辅助存储器的叙述中,正确的是5。
A.硬盘的内部传输速率远远大于外部传输速率
B.对于光盘刻录机来说,其刻录信息的速度一般小于读取信息的速度
C.使用USB2.0接口的移动硬盘,其数据传输速率大约为每秒数百兆字节
D.CD-ROM的数据传输速率一般比USB2.0还快
6.在下列PC机I/O接口中,数据传输速率最快的是6。
A.USB2.0B.IEEE-1394C.IrDA(红外)D.SATA
7.计算机软件可以分为商品软件、共享软件和自由软件等类型。
在下列相关叙述中,错误的是7。
A.通常用户需要付费才能得到商品软件的使用权,但这类软件的升级总是免费的
B.共享软件通常是一种"买前免费试用"的具有版权的软件
C.自由软件的原则是用户可共享,并允许拷贝和自由传播
D.软件许可证是一种法律合同,它确定了用户对软件的使用权限
8.人们通常将计算机软件划分为系统软件和应用软件。
下列软件中,不属于应用软件类型的是8
A.AutoCADB.MSNC.OracleD.WindowsMediaPlayer
9.在下列有关Windows98/2000/XP操作系统的叙述中,错误的是9。
A.系统采用并发多任务方式支持多个任务在计算机中同时执行
B.系统总是将一定的硬盘空间作为虚拟内存来使用
C.文件(夹)名的长度可达200多个字符
D.硬盘、光盘、优盘等均使\用FAT文件系统
10.在下列有关算法和数据结构的叙述中,错误的是10。
A.算法通常是用于解决某一个特定问题,且算法必须有输入和输出
B.算法的表示可以有多种形式,流程图和伪代码都是常用的算法表示方法
C.常用的数据结构有集合结构、线性结构、树形结构和网状结构等
D.数组的存储结构是一种顺序结构
11•因特网的IP地址由三个部分构成,从左到右分别代表11。
A.网络号、主机号和类型号B.类型号、网络号和主机号
C.网络号、类型号和主机号D.主机号、网络号和类型号
12•在下列有关ADSL技术及利用该技术接入因特网的叙述中,错误的是12。
A.从理论上看,其上传速度与下载速度相同B.一条电话线上可同时接听/拨打电话和进行数据传输
C.利用ADSL技术进行数据传输时,有效传输距离可达几公里
D.目前利用ADSL技术上网的计算机一般需要使用以太网网卡
13.人们往往会用"我用的是10M宽带上网"来说明白己计算机连网的性能,这里的"10M"指的是数据通信中的13指标。
A.最高数据传输速率B.平均数据传输速率
C.每分钟数据流量D.每分钟IP数据包的数
14•计算机局域网按拓扑结构进行分类,可分为环型、星型和14型等。
A.电路交换B.以太C.总线D.对等
15.网络信息安全主要涉及数据的完整性、可用性、机密性等问题。
保证数据的完整性就是15。
A.保证传送的数据信息不被第三方监视和窃取B.保证发送方的真实身份
C.保证传送的数据信息不被篡改D.保证发送方不能抵赖曾经发送过某数据信息
16.某计算机系统中,西文使用标准ASCII码、汉字采用GB2312编码。
设有一段纯文本,其机内码为CBF5DOB45043CAC7D6B8,则在这段文本中含有:
16。
A.2个汉字和1个西文字符B.4个汉字和2个西文字符
C.8个汉字和2个西文字符D.4个汉字和1个西文字符
17.以下关于汉字编码标准的叙述中,错误的是17。
A.GB2312标准中所有汉字的机内码均用双字节表示
B.我国台湾地区使用的汉字编码标准BIG5收录的是繁体汉字
C.GB18030汉字编码标准收录的汉字在GB2312标准中一定能找到
D.GB18030汉字编码标准既能与UCS(Unicode)接轨,又能保护已有中文信息资源
18.若波形声音未进行压缩时的码率为64kb/s,已知取样频率为8kHz,量化位数为8,那么它的声道数是
A.1B.2C.4D.8
19.从信息处理的深度来区分信息系统,可分为业务处理系统、信息检索系统和信息分析系统等。
在下列几种信息系统中,不属于业务处理系统的是19。
A.DSSB.CAIC.CAMD.OA
20.在下列有关信息系统开发、管理及其数据库设计的叙述中,错误的是20。
A.常用的信息系统开发方法可分为结构化生命周期方法、原型法、面向对象方法和CASE方法等
B.在系统分析中常常使用结构化分析方法,并用数据流程图和数据字典来表达数据和处理过程的关系
C.系统设计分为概念结构设计、逻辑结构设计和物理结构设计,通常用E-R模型作为描述逻辑结构的工具
D.从信息系统开发过程来看,程序编码、编译、连接、测试等属于系统实施阶段的工作
第二部分C程序设计
21.以下定义和声明中,语法均有错误的是____(21)_________
①intj(intx){}②intf(intf){}③int2x=1;④struetfor{intx;};
A.②③B.③④C.①④D.①②③④
22.设有定义和声明如下:
#defined2
intx=5;floatY=3.83;charc='d';
以下表达式中有语法错误的是_(22)______
A.x++B.y++C.c++D.d++
23.以下选项中,不能表示函数功能的表达式是___(23)______。
A.s=(X>0)?
1:
(X<0)?
-1:
0B.s=X<0?
-1:
(X>0?
1:
0)
C.s=X<=0?
-1:
(X==0?
0:
1)D.s=x>0?
1:
x==0?
0:
-1
24.以下语句中有语法错误的是____(24)______。
A.printf("%d",0e);B.printf("%f",0e2);C.printf("%d",Ox2);D.printf("%s","0x2");
25.以下函数定义中正确的是___(25)_________。
A.doublefun(doublex,doubley){}B.doublefun(doublex;doubleY){}
C.doublefun(doublex,doubleY);{}D.doublefun(doubleX,Y){}
26.若需要通过调用f函数得到一个数的平方值,以下f函数定义中不能实现该功能的是_____(26)______。
A.voidf(double*a){*a=(*a)*(*a);}B.voidf(doublea,double*b){*b=a*a;}
C.voidf(doublea,doubleb){b=a*a;}D.doublef(doublea){returna*a;}
27.设有声明"intP[10]={1,2},i=0;",以下语句中与"P[i]=P[i+1],i++;"等价的是____(27)_______。
A.P[i]=P[i++];B.P[++i]=P[i];C.P[++i]=P[i+1];D.i++,P[i-1]=P[i];
28.已知有声明"chara[]="Itismine",*p="Itismine";",下列叙述中错误的是28。
A.strcpy(a,"yes")和strcpy(p,"yes")都是正确的B.a="yes"和p="yes"都是正确的
C.*a等于*pD.sizeof(a)不等于sizeof(p)
29.已知有声明"inta[3][3]={0},*p1=a[1],(*p2)[3]=a;",以下表达式中与"a[1][1]=1"不等价的表达式是29。
A.*(p1+1)=1B.p1[1][1]=1C.*(*(p2+1)+1)=1D.p2[1][1]=1
30.设有结构定义及变量声明如下:
structproduct
{charcode[5];
floatprice;
}y[4]={"100",100}"
以下表达式中错误的是____(30)_____。
A.(*y).code[0]='2';B.y[0].code[0]='2';C.y->price=10;D.(*y)->price=10;
二、填空题(将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)
●基本概念
1.在一个C语言源程序中,必不可少的是
(1)。
2.若有声明"intx;"且sizeof(x)的值为2,则当x值为
(2)时"x+1>x"为假。
3.若有声明"floaty=3.14619;intx;",则计算表达式"x=y*100+0.5,Y=x/100.0"后y
的值是(3)。
4.执行以下程序段中的语句"k=M*M+1"后k的值是(4)
#defineN2
#defineMN+1
k=M*M+1:
●阅读程序
5.以下程序运行时输出结果是(5)
#include
voidmain()
{doublex[3]={1.1,2.2,3.3},Y;
FILE*fp=fopen("d:
\\a.out","wb+");
fwrite(x,sizeof(double),3,fp)"
fseek(fp,2L*sizeof(double),SEEK_SET);
fread(&y,sizeof(double),1,fp)"
printf("%.1f",y);
fclose(fp)"
}
6.以下程序运行时输出结果是(6)。
#include
voidmain()
{intk=5,n=0;
while(k>0)
{switch(k)
{case1:
case3:
n+=1;k--;break"
default:
n=0;k--;
case2:
case4:
n+=2;k--;break;
}
}
printf("%3d",n);
}
}
7.以下程序运行时输出结果是(7)。
#include
voidchange(intx,intY,int*z)
{intt;
t=x;x=y;y=*z;*z=t;
}
voidmain()
{intx=18,y=27,z=63;
change(x,y,&z);
printf("x=%d,y=%d,z=%d\n",x,y,z);
}
8.以下程序运行时输出结果是(8)。
#include
intf(intx,inty)
{retumx+y;}
voidmain()
{doublea=5.5,b=2.5;
printf("%d",f(a,b));
}
9.以下程序运行时输出结果中第-行是(9),第三行是(10)。
#include
defineN5
voidmain()
{staticchara[N][N];
inti,j,t,start=0,end=N-1;
charstr[]="123",ch;
for(t=0;t<=N/2;t++)
{ch=str[t];
for(i=j-start;i for(j=start;j for(i=end;i>start;i--)a[i][j]=ch; for(j=end;j>start;j--)a[i][j]=ch; if(start==end)a[start][end]=ch; start++,end--; } for(i=O;i {for(j=0;j printf("%c",a[i][j]); printf("\n"); } } 10.以下程序运行时输出结果中第一行是(11),第二行是(12)。 #include voidfun(intx,intP[],int*n) {inti,j=O; for(i=1;i<=x/2;i++) if(x%i==0)p[j++]=i; *n=j: } voidmain() {intx,a[10],n,i; fun(27,a,&n); for(i=0;i printf("%5d",a[i]); printf("\n%5d",n); } 11.以下程序运行时输出结果是(13)。 #include #include intcount(chars[]) {inti=0; if(s[i]=='\0')return0; while(isalpha(s[i]))i++; while(! isalpha(s[i])&&s[i]! ='\O')i++; return1+count(&s[i]); } voidmain() {charline[]="oneworld,onedream."; printf("%d",count(line)); }. 12.以下程序运行时输出结果中第一行是(14),第二行是(15) #include intfun(char*a,char*b) {intm=0,n=0: while(*(a+m)! ='\0')m++; while(b[n]) {*(a+m)=b[n];m++;n++;} *(a+m)='\0'; returnm; } voidmain() {chars1[20]="yes",s2[5]="no"; printf("%d\n",fun(s1,s2)); puts(s1); } 13.以下程序运行时输出结果中第-行是(16),第二行是(17),第三行是(18) #include typedefstruct{intx;inty;}S; voidfun(Spp[],intn) {inti,j,k;St; for(i=0;i {k=i; for(j=i+1;j if((pp[j].x k=j; if(k! =i) {t=pp[i];pp[i]=pp[k];pp[k]=t;} } } voidmain() {Sa[5]={{3,2},{3,1},{1,2},{2,4},{2,3}}; inti,n=5; fun(a,n); for(i=0;i printf("%d,%d\n",a[i].x,a[i].y); }. ●完善程序 14? 以下程序求一组整数的最大公约数。 试完善程序以达到要求的功能。 #include intgcd(inta,intb)i {intr; while(_____(19)_______) {r=a%b;a=b;(_____20_____);} returna; } voidmain() {intx,i,a[6]={12,56,48,32,16,24}; x=(___21_____); for(i=1;i<6;i++) x=gcd(___(22)_____,a[i]); printf("(%d,",a[O]) for(i=1;i<5;i++) printf("%d,",a[i]); printf("%d)=;d\n",a[5],x); } 15.以下程序完成两个长正整数的加法运算并输出计算结果。 函数add模拟手工加法运算的过程,将a和b指向的数组中存储的两个以字符串形式表示的n位正整数相加,并将运算结果以字符串形式保存到c指向的数组中。 main函数中pl和p2数组分别存放被加数字符串和加数字符串,p3数组存放运算结果字符串。 若p1中的字符串为"1000000001"、p2中的字符串为"9000000009",调用add函数后p3得到的是以字符串表示的这两个整数相加的结果"10000000010"。 试完善程序以达到要求的功能。 #include"stdio.h" #include"string.h" voidadd(chara[],charb[],charc[],__(23)____) {inti,k; c[n]='\0';k=0; for(i=n-1;i>=0;i--) {c[i]=(a[i]-'O')+(b[i]-'0')+k; k=______(24)______; c[i]=c[i]%10+'0'; } if(k) {for(i=n+1;i>O;i--) c[i]=___(25)____; c[i]=k+'0'; } } voidmain() {charp1[80]="1000000001",pz[80]="9000000009",p3[80]; inti,x=strlen(p1),y=strlen(p2); if(x {for(i=x;i>=0;i--) {p1[i+y-x]=p1[i];p1[i]='0';} _____(26)______; } if(x>y) for(i=y;i>=0;i--) {p2[i+x-y]=p2[i];p2[i]='0';} add(p1,p2,p3,x); puts(p3); } 16.以下程序创建-个链表并实现数据统计功能。 函数WORD*create(chara[][20],intn)创建-个包含n个结点的单向链表,结点数据来自a指向的数组中存储的n个单词(字符串)。 函数voidcount(WORD*h)统计h指向的单向链表中不同单词各自出现的次数,将统计结果保存到局部数组c中并输出。 程序运行时输出结果为"red: 1green: 2blue: 3"试完善程序以达到要求的功能。 #include"stdio.h" #include"stdlib.h" #include"string.h" typedefstructw {charword[20]; structw*next: }WORD; WORD*create(chara[][20],intn) {WORD*p1,*p2,*h=0;inti; for(i=0;i {p1=(WORD*)malloc(sizeof(WORD)); strcpy(___(27)___,a[i]); if(h==O) h=p2=p1: else {p2->next=p1;p2=pl;} } p2->next=_____(28)____; returnh; } voidcount(WORD*h) {struct {charword[20]; intnum; }c[6]={0}; intm=0,i; while(h) {if(m==O) {strcpy(c[0].word,h->word); c[0].num=1;m++; } else {for(i=O;i if(strcmp(c[i].word,h->word)==0 {______(29)_____; break; } if(i>=m) {strcpy(c[m].word,h->word); c[m++].num=1; } } ____(30)_____; } for(i=0;i printf("%s: %d",c[i].word,c[i].num); } voidmain() {charwords[6][20]={"red","green","blue","blue","green","blue"}; WORD*head=0: head=create(words,6); count(head); } 答案 第一部分计算机基础知识 1.D2.B3.B4.D5.B6.D7.A8.C9.D10.A11.B12.A13.A14.C15.C16.B17.C18.A19.A20.C 第二部分C程序设计 21.B22.D23.C24.A25.A26.C27.D28.B29.B30.D 二: 填空 (1)main函数定义 (2)32767(3)3.15(4)6(5)3.3(6)2356(7)x=18,y=27,z=18(8)7 (9)11111(10)12321(11)139(12)3(13)4(14)5(15)yesno(16)1,2(17)2,3(18)2,4(19)b或b! =0 (20)b=r(21)a[0](22)x(23)intn(24)c[i]/10(25)c[i-1](26)x=y(27)p1->word (28)0或NULL(29)c[i].min++(30)h=h->next 2009秋
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 历年 江苏省 计算机 二级 语言 答案 笔试 docx