江苏省计算机等级考试二级C语言.docx

上传人:b****4 文档编号:4304740 上传时间:2022-11-29 格式:DOCX 页数:17 大小:35.93KB
下载 相关 举报
江苏省计算机等级考试二级C语言.docx_第1页
第1页 / 共17页
江苏省计算机等级考试二级C语言.docx_第2页
第2页 / 共17页
江苏省计算机等级考试二级C语言.docx_第3页
第3页 / 共17页
江苏省计算机等级考试二级C语言.docx_第4页
第4页 / 共17页
江苏省计算机等级考试二级C语言.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

江苏省计算机等级考试二级C语言.docx

《江苏省计算机等级考试二级C语言.docx》由会员分享,可在线阅读,更多相关《江苏省计算机等级考试二级C语言.docx(17页珍藏版)》请在冰豆网上搜索。

江苏省计算机等级考试二级C语言.docx

江苏省计算机等级考试二级C语言

江苏省计算机等级考试二级C语言

第一部分计算机基础知识

1.下面关于通信技术的叙述中,错误的是1。

A.任何一个通信系统都有信源、信道和信宿这三个基本组成部分

B.为了实现远距离传输信息,在模拟通信和数字通信中均采用载波技术

C.为了降低传输信息的成本,在通信中广泛采用多路复用技术

D.数字通信系统的一个主要性能参数是信道带宽,它指实际进行数据传输时单位时问内传输的二进位数目

2.在下列有关集成电路及其应用的叙述中,错误的是2。

A.集成电路的制造工序繁多,工艺复杂且技术难度高

B.经过抛光后的硅片称为晶圆,每个品圆最多可以制成一个合格的集成电路芯片

C.IC卡分为接触式IC卡和非接触式IC卡,后者通常又称为射频卡或感应卡

D.集成电路应用十分广泛,目前我国第2代居民身份证中就有集成电路芯片

3.在下列有关数字技术的一些叙述中,错误的是3。

A.数字技术是采用有限个状态(例如"0"和"1")来表示、处理、存储和传输信息的

B.在逻辑代数中,1与1进行逻辑加(∨)和逻辑乘(∧)的结果相同

C.任何一个十进制数,均可以精确地转换成等值的二进制数

D.在PC机中,通常用原码表示正整数、用补码表示负整数

4.在下列有关PC机主机的叙述中,错误的是4。

A.BIOS和CMOS存储器安装在主板上,普通用户一般不能自己更换

B.由于PC机主板的物理尺寸等没有标准化,所以不同PC机的主板均不能互换

C.芯片组是PC机各组成部分相互连接和通信的枢纽,一般由2块VLSI芯片组成

D.芯片组决定了主板上所能安装的内存最大容量、速度及可使用的内存条类型

5.在下列4个Intel微处理器产品中,采用双核结构的是5。

A.Core2DuoB.PentiumPROC.PentiumⅢD.Pentium4

6.在下列四种PC机主存储器类型中,目前常用的是6。

A.EDODRAMB·SDRAMC·RDRAMD.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.80mmCD存储容量大约为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.MicrosoftWordB.MicrosoftExcelC.MicrosoftPowerPointD.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.2B.202.19.23.12C.130.24.35.68D.26.10.35.48

14.因特网上有许多不同结构的局域网和广域网互相连接在一起,它们能相互通信并协调工作的基础是因为都采用了14。

A.ATM协议B.TCP/IP协议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.768KBB.1.5MBC.3MBD.12.3MB

18.在下列4种类型的数字化声音文件中,不可能包含人的说话声音的是18。

A.WAVB.MP3C.MIDD.WMA

19.在下列有关数字视频的叙述中,错误的是19。

A.PC机所使用的视频卡能将输入的模拟视频信号进行数字化

B.目前使用摄像头获取视频信息时,不需要使用专门的视频卡

C.数字视频在数据压缩时只能使用MPEG标准,DVD就是采用MPEG-4标准压缩的

D.计算机动画是一种合成视频,这种技术是发展动漫产业的基础

20.下列是几种常见的电子商务的分类方法。

若将电子商务分为B-C、B-B等类型,则该分类,是20。

A.按交易的双方进行分类B.按使用的网络类型分类

C.按交易商品性质分类D.按交易商品规模分类

2010春第二部分C语言程序设计

一、选择题(用答题卡答题,答案依次填在21~30答题号内,共l0分)

21.C语言规定,在一个源程序中main函数的位置_____(21)_____。

A.必须在最开始B.必须在最后

C.必须在预处理命令的后面D.可以在其他函数之前或之后

22.以下选项中,______(22)______是C语言关键字

A.printfB.includeC.funD.default

23.已知有声明"inta=3,b=4,c;",则执行语句"c=1/2*(a+b);"后,c的值为__(23)___。

A.0B.3C.3.5D.4

24.设指针变量占2个字节的内存空间,若有声明"char*p="123";intc;",则执行语句"c=sizeof(p);"后,c的值为__(24)___

A.1B.2C.3D.4

25.已知有声明"inta=3,b=4;",下列表达式中合法的是(25)

A.a+b=7B.a=|b|C.a=b=0D.(a++)++

26.已知有声明"chars[20]="Hello";",在程序运行过程中,若要想使数组s中的内容修改为"Good",则以下语句中能够实现此功能的是(26)。

A.s="Good";B.s[20]="Good";

C.strcat(s,"Good");D.strcpy(s,"Good");

27.已知有声明"inta[4][4]={{1,2,3,4},{5,6,7,8),{9,10,11,12},{13,14,15,16)};",若需要引用值为12的数组元素,则下列选项中错误的是(27)。

A.*(a+2)+3B.*(*(a+2)+3)C.*(a[2]+3)D.a[2][3]

28.已知有声明"intn;floatx,y;",则执行语句"y=n=x=3.89;"后,y的值为(28)。

A.3B.3.0C.3.89D.4.0

29.已知有声明"inta=12,b=15,c;",则执行表达式"c=(a||(b-=a))"后,变量b和c的值分别为(29)

A.3,1B.15,12C.15,1D.3,12

30.下列叙述中,正确的是_____(30)______。

A.C语言中的文件是流式文件,因此只能顺序存取文件中的数据。

B.调用fopen函数时若用"r"或"r+"模式打开一个文件,该文件必须在指定存储位置或默认存储位置处存在。

C.当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到该文件中的第1个数据

D.无论以何种模式打开一个已存在的文件,在进行了写操作后,原有文件中的全部数据必定被覆盖

二、填空题(将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)

●基本概念

1.数学式

所对应的c语言表达式为pow(x,__

(1)__)。

2.已知有声明"charch='g';",则表达式ch=ch-'a'+'A'的值为字符

(2)的编码。

3.在C语言系统中,如果一个变量能正确存储的数据范围为整数-32768~32767,则该变量在内存中占_____(3)_____个字节。

4.已知有声明"inta[3][2]={{1,2),{3,4},{5,6}},*p=a[0];",则执行语句"printf("%d\n",*(p+4));"后的输出结果为__(4)___。

5.已知有声明和语句"inta;scanf("a=%d",&a);",欲从键盘上输入数据使a中的值为3,则正确的输入应是_____(5)_____。

•阅读程序

6.以下程序运行时输出到屏幕的结果为(6)。

#include

#defineMAX(A,B)A>B?

2*A:

2*B

voidmain()

{inta=1,b=2,c=3,d=4,t;

t=MAX(a+b,c+d);

printf("%d\n",t);

}

7.以下程序运行时输出到屏幕的结果是(7)。

#include

voidmain()

{inta=1,b=2;

a+=b;

b=a-b;

a-=b;

printf("%d,%d\n",a,b);

}

8.以下程序运行时输出到屏幕的结果是(8)。

#include

voidswap(inta,intb)

{intt;

if(a>b)t=a,a=b,b=t;

}

voidmain()

{intx=13,y=11,z=12;

if(x>y)swap(x,y);

if(x>z)swap(x,z);

if(y>z)swap(y,z);

printf("%d\t%d\t%d\n",x,y,z);

}

9•以下程序运行时输出到屏幕的结果第一行是(9),第二行是(10),第三行是(11)。

#include

intg(intx,inty)

{returnx+y;

}

intf(intx,inty)

{

{staticintx=2;

if(y>2)

{x=x*x;

y=x;

}

elsey=x+1;

}

returnx+y;

}

voidmain()

{inta=3;

printf("%d\n",g(a,2));

printf("%d\n",f(a,3));

printf("%d\n",f(a,2));

}

10.以下程序运行时输出到屏幕的结果是(12)。

#include

voidfun(intm,intn)

{if(m>=n)

printf("%d",m);

else

fun(m+1,n);

printf("%d",m);

}

voidmain()

{fun(1,2);}

11.以下程序运行时输出到屏幕的结果第二行是(13),第四行是(14)。

#include

#defineN6

voidmain()

{inti,j,a[N+1][N+1];

for(i=1;i<=N;i++)

{a[i][i]=1;a[i][1]=1;}

for(i=3;i<=N;i++)

for(j=2;j

a[i][j]=a[i-1][j-1]+a[i-1][j];

for(i=1;i<=N;i++)

{for(j=1;j<=i;j++)

printf("%d",a[i][j]);

printf("\n");

}

}

12.以下程序运行时输出到屏幕的结果第一行是(15),第二行是(16)。

#include

voidfun(char*p1,char*p2);

voidmain()

{inti;chara[]="54321";

puts(a+2);

fun(a,a+4);

puts(a);

}

voidfun(char*p1,char*p2)

{chart;

while(p1

{t=*p1;*p1=*p2;*p2=t;

p1+=2,p2-=2;

}

}

13.以下程序运行时输出至到屏幕的结果第一行是(17),第二行是(18)。

#include

typedefstruct{intx,y;}direction;

intvisible(directions,directionA,directionB,directionC)

{directionp1,p2;

intd;

p1.x=B.x-A.x;

p1.y=B.y-A.y;

p2.x=C.x-A.x;

p2.y=C.y-A.y;

d=s.x*p1.x*p2.x+s.y*p1.y*p2.y;

printf("%d\n",d);

returnd>0;

}

voidmain()

{char*ss[]={"invisible","visible"};

directions={1,1},T={1,1},A={0,0},B={2,1};

puts(ss[visible(s,T,A,B)]);

}

•完善程序

14.以下程序的功能是:

统计一个字符串中数字字符"0"到"9"各自出现的次数,统计结果保存在数组count中。

例如,如果字符串为"lenterschar4543123564879ffgh",则统计结果为:

1:

22:

13:

24:

35:

26:

17:

18:

19:

1。

试完善程序以达到要求的功能。

#include

voidfun(char*t,intcount[])

{char*p=t;

while(_____(19)_____)

{if(*p>='0'&&*p<='9')

count[_____(20)_____]++;

p++;

}

}

voidmain()

{chars[80]="1enterschar4543123564879ffgh";intcount[10]={0},i;

fun(s,count);

for(i=0;i<10;i++)

if(count[i])printf("%d:

%d",i,count[i]);

}

15.下列程序的功能是对a数组a[0]~a[n-1]中存储的n个整数从小到大排序。

排序算法是:

第一趟通过比较将n个整数中的最小值放在a[0]中,最大值放在a[n-1]中;第二趟通过比较将n个整数中的次小值放在a[1]中,次大值放在a[n-2]中;......,依次类推,直到待排序序列为递增序列。

试完喜程序以达到要求的功能。

#include

#defineN7

voidsort(inta[],intn)

{inti,j,min,max,t;

for(i=0;i<___(21)___;i++)

{______(22)______;

for(j=i+1;j

if(a[j]

elseif(a[j]>a[max])max=j;

if(min!

=i)

{t=a[min];a[min]=a[i];a[i]=t;}

if(max!

=n-i-1)

if(max==i)

{t=a[min];a[min]=a[n-i-1];a[n-i-1]=t;}

else

{t=a[max];a[max]=a[n-i-1];a[n-i-1]=t;}

}

}

voidmain()

{inta[N]={8,4,9,3,2,1,5},i;

sort(a,N);

printf("sorted:

\n");

for(i=0;i

printf(“%d”,a[i]);

printf("\n");

}

16.下列程序中函数find_replace的功能是:

在s1指向的字符串中查找s2指向的字符串,并用s3指向的字符串替换在s1中找到的所有s2字符串。

若sl字符串中没有出现s2字符串,则不做替换并使函数返回0,否则函数返回1。

试完善程序以达到要求的功能。

#include

#include

intfind_replace(chars1[],chars2[],chars3[])

{inti,j,k,t=0;chartemp[80];

if(s1[0]=='\0'||s2[0]=='\0')returnt;

for(i=0;s1[i]!

='\0';i++)

{k=0;j=i;

while(s1[j]==s2[k]&&s2[k]!

='\0')

{j++;

___(23)_________;

}

if(s2[k]=='\0')

{strcpy(temp,&s1[j]);

___________(24)________;

i=i+strlen(s3);

_______(25)_________;

t=1;

}

}

returnt;

}

voidmain()

{charline[80]="Thisisatestprogramandatestdata.";

charsubstr1[10]="test",substr2[10]="actual";

intk;

k=find_replace(line,substr1,substr2);

if(______(26)_______)

puts(line);

else

printf("notfound\n");

}

17.设hl和h2分别为两个单链表的头指针,链表中结点的数据结构为:

typedefstructnode

{intdata;

structnode*next;

}NODE;

sea_del函数的功能是:

删除hl指向的链表中首次出现的与h2指向的链表中数据完全匹配的若干个连续结点,函数返回hl指向链表的头指针。

例如,初态下,hl指向链表和h2指

向链表如下图所示:

调用sea_del函数后h1指向链表为:

试完善函数sea_del以达到要求的功能。

NODE*sea_del(NODE*h1,NODE*h2)

{NODE*p,*ph,*q,*s;

ph=NULL;p=q=h1;s=h2;

if(h1==NULL||__(27)__)returnh1;

while(p!

=NULL&&s!

=NULL)

{while(q->data==s->data&&q&&s)

{q=q->next;

s=__(28)__;

}

if(s!

=NULL)/*失配时,h1起始结点后移,h2从首结点开始*/

{ph=p;

p=q=p->next;

s=__(29)__;

}

else

if(ph==NULL)h1=q;

elseph->next=q;

}

__(30)__;

}

参考答案:

1.D2.B3.C4.B5.A6.D7.C

8.B9.D10.D11.D12.B13.B

14.B15.C16.A17.B18.C19.C

20.A

21.D22.D23.A24.B25.C26.D

27.A28.B29.C30.B

(1)1/3.0

(2)G(3)2(4)5(5)a=3

(6)10(7)2,1(8)131112(9)5

(10)7(11)8(12)221(13)11(14)1331(15)321

(16)14325(17)-1(18)invisible(19)*p(20)*p-48

(21)n/2(22)min=max=i(23)k++(24)strcpy(&s1[i],s3)

(25)strcat(s1,temp)(26)k(27)h2==NULL(28)s->next

(29)h2(30)returnh1

 

二级C语言上机试卷

(本试卷完成时间为70分钟)

一、改错题(16分)

【程序功能】

验证3-n范围内的任意两个相邻素数的平方之间至少存在4个素数。

例如,5和7是两个相邻素数,5

(25)与7

(49)之间存在6个素数:

293137414347。

【测试数据与运行结果】

显示:

inputn:

输入:

10

输出:

3~5k=5

1113171923

5~7k=6

293137414347

【含有错误的源程序】

#include

#include

intprime(intn)

{inti,flag=1;

for(i=1;i<=sqrt(n);i++

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1