江苏省计算机等级考试二级C语言Word下载.docx
- 文档编号:17226095
- 上传时间:2022-11-29
- 格式:DOCX
- 页数:17
- 大小:35.93KB
江苏省计算机等级考试二级C语言Word下载.docx
《江苏省计算机等级考试二级C语言Word下载.docx》由会员分享,可在线阅读,更多相关《江苏省计算机等级考试二级C语言Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
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="
B.s[20]="
C.strcat(s,"
);
D.strcpy(s,"
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<
stdio.h>
#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("
t);
}
7.以下程序运行时输出到屏幕的结果是(7)。
voidmain()
{inta=1,b=2;
a+=b;
b=a-b;
a-=b;
%d,%d\n"
a,b);
8.以下程序运行时输出到屏幕的结果是(8)。
voidswap(inta,intb)
{intt;
if(a>
b)t=a,a=b,b=t;
{intx=13,y=11,z=12;
if(x>
y)swap(x,y);
z)swap(x,z);
if(y>
z)swap(y,z);
%d\t%d\t%d\n"
x,y,z);
9•以下程序运行时输出到屏幕的结果第一行是(9),第二行是(10),第三行是(11)。
intg(intx,inty)
{returnx+y;
intf(intx,inty)
{
{staticintx=2;
2)
{x=x*x;
y=x;
elsey=x+1;
returnx+y;
{inta=3;
g(a,2));
f(a,3));
f(a,2));
10.以下程序运行时输出到屏幕的结果是(12)。
voidfun(intm,intn)
{if(m>
=n)
%d"
m);
else
fun(m+1,n);
{fun(1,2);
11.以下程序运行时输出到屏幕的结果第二行是(13),第四行是(14)。
#defineN6
{inti,j,a[N+1][N+1];
for(i=1;
i<
=N;
i++)
{a[i][i]=1;
a[i][1]=1;
}
for(i=3;
for(j=2;
j<
i;
j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
{for(j=1;
=i;
j++)
a[i][j]);
\n"
12.以下程序运行时输出到屏幕的结果第一行是(15),第二行是(16)。
voidfun(char*p1,char*p2);
{inti;
chara[]="
54321"
puts(a+2);
fun(a,a+4);
puts(a);
voidfun(char*p1,char*p2)
{chart;
while(p1<
p2)
{t=*p1;
*p1=*p2;
*p2=t;
p1+=2,p2-=2;
13.以下程序运行时输出至到屏幕的结果第一行是(17),第二行是(18)。
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;
d);
returnd>
0;
{char*ss[]={"
invisible"
"
visible"
};
directions={1,1},T={1,1},A={0,0},B={2,1};
puts(ss[visible(s,T,A,B)]);
•完善程序
14.以下程序的功能是:
统计一个字符串中数字字符"
到"
9"
各自出现的次数,统计结果保存在数组count中。
例如,如果字符串为"
lenterschar4543123564879ffgh"
则统计结果为:
1:
22:
13:
24:
35:
26:
17:
18:
19:
1。
试完善程序以达到要求的功能。
voidfun(char*t,intcount[])
{char*p=t;
while(_____(19)_____)
{if(*p>
='
0'
&
&
*p<
9'
)
count[_____(20)_____]++;
p++;
{chars[80]="
1enterschar4543123564879ffgh"
intcount[10]={0},i;
fun(s,count);
for(i=0;
10;
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]中;
......,依次类推,直到待排序序列为递增序列。
试完喜程序以达到要求的功能。
#defineN7
voidsort(inta[],intn)
{inti,j,min,max,t;
___(21)___;
{______(22)______;
for(j=i+1;
n-i;
if(a[j]<
a[min])min=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)
a[min]=a[n-i-1];
a[n-i-1]=t;
{t=a[max];
a[max]=a[n-i-1];
}
{inta[N]={8,4,9,3,2,1,5},i;
sort(a,N);
sorted:
for(i=0;
N;
i++)
printf(“%d”,a[i]);
16.下列程序中函数find_replace的功能是:
在s1指向的字符串中查找s2指向的字符串,并用s3指向的字符串替换在s1中找到的所有s2字符串。
若sl字符串中没有出现s2字符串,则不做替换并使函数返回0,否则函数返回1。
string.h>
intfind_replace(chars1[],chars2[],chars3[])
{inti,j,k,t=0;
chartemp[80];
if(s1[0]=='
\0'
||s2[0]=='
)returnt;
s1[i]!
{k=0;
j=i;
while(s1[j]==s2[k]&
s2[k]!
{j++;
___(23)_________;
if(s2[k]=='
{strcpy(temp,&
s1[j]);
___________(24)________;
i=i+strlen(s3);
_______(25)_________;
t=1;
returnt;
{charline[80]="
Thisisatestprogramandatestdata."
charsubstr1[10]="
test"
substr2[10]="
actual"
intk;
k=find_replace(line,substr1,substr2);
if(______(26)_______)
puts(line);
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->
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
【含有错误的源程序】
math.h>
intprime(intn)
{inti,flag=1;
=sqrt(n);
i++
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 江苏省 计算机等级考试 二级 语言
![提示](https://static.bdocx.com/images/bang_tan.gif)