秋季江苏省二级c语言试题与答案Word格式文档下载.docx
《秋季江苏省二级c语言试题与答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《秋季江苏省二级c语言试题与答案Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
B.201.256.39.68D.37.250.68.0
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.可以对字体进行替换,例如将幻灯片中的“宋体”替换为“楷体”
第二部分C语言程序设计
一、选择题(用答题卡答题,答案依次填在21—30答题号内,共10分)
21.在下列C语言源程序的错误中,通常不能在编译时发现的是_____。
A.括号不匹配B.非法标识符
c.数组元素下标值越界D.程序结构不完整
22.在以下各组标识符中,均可以用作变量名的一组是__________。
A.a01.InttB.table_1,a*.1C.0_a,W12D.for,point
23.若有声明"
longa,b;
"
且变量a和b都需要通过键盘输入获得初值,则下列语句中正
确的是_____。
’
A.scanf("
%ld%ld,&
a,&
b"
);
B.scanf("
%d%d"
,a,b);
C.scanf("
,&
b);
D.scanf("
%ld%ld"
a,&
24.若有程序段"
charc=256;
inta=c;
,则执行该程序段后a的值是______。
A.256B.65536C.0D.-1
25.若在一个C语言源程序中"
el"
和"
e3"
是表达式,"
s;
是语句,则下列选项中与语句
for(el;
;
e3)S;
功能等同的语句是_________。
A.el;
while(10)s;
e3;
B.el;
while(10){s;
}
C.el;
while(10){e3;
}D.while(10){el;
e3}
26.若有声明"
inta[3][4],*p=a[0],(*q)[4]=a;
,则下列叙述中错误的
是__________。
A.a[2][3]与q[2][3]等价B.a[2][3]与p[2][3]等价
C.a[2][3]与*(p+11)等价D.a[2][3]与P=P+11,*P等价
27.若有结构类型定义"
typedefstructtest{intx,y[2];
}TEST;
,则以下声明中正确的是
_________。
A.structtestx:
B.structx;
C.testx;
D.structTESTx;
28.若有声明"
longfun(int*x,intn,long*s);
inta[4]={1,2,3,4};
longb,c;
,则以
下函数调用形式中正确的是___________。
A.e=fun(a,4,b);
B.c=fun(a[],4,&
C.c=fun(a[4],4,b);
D.e=fun(a,4,&
29.若有枚举类型定义"
enumlistl{xl,x2,x3,x4=6,x5,x6};
,则枚举常量x2和x6代表
的值分别是__________________。
A.1.6B.1,8C.2,6D.2,8
30.已知在函数f中声明了局部变量x,如果希望f函数第一次被调用返回后变量x中存
储的数据保持到下次f函数被调用时仍可以使用,则在声明x时必须指定其存储类型
为____________。
A.autoB.registerC.staticD.extem
二、填空题(将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)
●基本概念
1.若有声明"
inta=5,b=2;
,则表达式"
b+=(float)(a+b)/2"
运算后b的值
为
(1)。
2.若有声明"
chars[l0]="
remind"
,执行"
puts(s+2);
后的输出结果是
(2)。
3.若有声明"
doublex=10,Y=5;
,则计算x^7的库函数调用形式是(3)。
4.已知某程序中有预处理命令"
#include<
stdio.h>
,为使语句"
zx=fopen("
c:
\\a.txt"
,
"
r"
能正常执行,在该语句之前必须有声明(4)。
●阅读程序
5.以下程序运行时输出结果是(5)。
#defineEVEN(x)x%2==0?
l:
main()
{if(EVEN(5+1))printf("
Even"
elseprintf("
Odd"
}
6.以下程序运行时输出结果是(6)。
#include<
{ints=1,n=235;
do
{s*=n%10:
n/=10;
}while(n);
printf("
%d\n"
,s);
}
7.以下程序运行时输出结果是(7)。
intt;
intsub(int*s)
{*s+=1:
t+=*S:
retumt;
{inti;
for(i=1;
i<
4;
i++)
%4d"
,sub(&
i));
8.以下程序运行时输出结果是(8)。
voidf(longx)
{if(x<
100)printf("
%d"
,x/lO);
else{f(x/lOO);
pfintf("
,x%100/10):
{f(123456);
9•以下程序运行时输出结果的第一行是(9);
第二行是(10)。
intfun(int*x,intn)
{inti,j;
for(i=j=0;
n;
if(*(x+i)%2)
*(x+j++)=*(x+i);
returnj;
{int[10]={1,5,2,3,8,3,9,7,4,10},n,i;
n=fun(a,10);
for(i=0;
n;
++)
{printf("
%5d"
,a[i]);
.
if((i+1)%3==0)printf("
\n"
10•以下程序运行时输出结果中第一行是(11),第二行是(12),第三行是
(13)
{inti,j,a[3][3]={0};
3;
for(j=O;
j<
j++)
switch(i-j+2)
{case0:
case1:
a[i][j]=1;
break;
case2:
a[i][j]=2;
case3:
a[i][j]=3;
case4:
a[i][j]=5;
for(i=0;
{for(j=0;
,a[i][j]);
11.以下程序运行时输出结果中第一行是(14),第二行是(15)。
stdio.h>
string.h>
voidfun(charstr[][20],intn)
{inti,j,k;
chars[20];
for(i=O:
n-1;
{k=i;
for(j=i+1;
if(strcmp(str[j],str[k])<
O)k=j;
strcpy(s,str[i]);
strcpy(str[i],str[k]);
strcpy(str[k],s);
{
charstr[6][20]={"
PASCAL"
"
BASIC"
FORTRAN"
C"
COBOL"
Smalltalk"
};
inti;
fun(str,6);
6;
i++)printf("
%s\n"
,str[i]);
12.以下程序运行时输出结果的第一行是(16);
第二行是(17);
第三行
是(18)。
#defineN10
intmerge(inta[],intb[],intc[],intm[][N+1])
{inti=0,j,k;
while((k=m[0][i])!
=2)
{j=m[1][i];
if(k==0)
c[i]=a[j];
else
c[i]=b[j];
i++:
returni;
{inta[N]={1,3,5},b[N]={2,4,6},c[2*N],i,n;
intm[2][N+1]={{0,1,0,1,0,1,2},
{0,0,1,2,2,1,-1}};
n=merge(a,b,C,m);
,n);
,c[i]);
if((i+1)%3==0)prinff("
●完善程序
13.程序功能:
寻找具有下列特性的四位正整数,其百位数为0,去掉百位数0可得到一
个三位正整数,而该三位正整数乘以9等于原四位正整数。
例如,6075=675X9,所以6075是
具有上述特性的正整数。
intfun(intn)
{inta[4],i,k;
k=n;
k>
0;
{a[i]=____(19)_______;
k/=10;
if(______(20)_______&
&
(a[3]*100+a[1]*l0+a[0]*9==n)
return1;
return0;
{inti,n=0;
for(i=1000;
10000;
if(fun(i))
%4d\t"
,i);
14.程序功能:
用牛顿迭代法求方程3x^3-3x^2+x-1=0在2.0附近的一个实根,精度要
求为10^-5。
函数F求f(x)的值,函数F1求f(x)的一阶导数值。
牛顿迭代公式如下:
x=x0-(f(0)/f1(x0))
math.h>
floatf(floatx)
{returnx*(3*x*(x-1)+1)-1;
floatf1(floatx)
{return9*x*x-6*x+1;
floatnewtoon(floatx)
{floatf,fl,xO;
{___(21)_________;
f=f(xO);
f1=F1(xO);
x=______(22)______;
}while(fabs(x-xO)>
1e-5);
returnx;
{floatxO;
scanf("
%f,,&x0);
prinff(’"
rheresult=%.2f\n"
,newtoon(x0));
15.程序功能:
选票统计。
二维数组s中保存了投票后10张有效选票上所填写的候选人
姓名,结构数组stat中保存统计结果。
程序运行后的输出结果是"
liu:
2wang:
5zhao:
3"
。
string.h>
typedefstrnet
{charname[20];
/女候选人姓名}/
intcount;
/女候选人得票数}/
}COUNT;
intcount(charx[][20],intn,______(23)___________)
{inti,j,k=0;
____(24)__________;
{for(j=0;
k;
if(strcmp(st[j].name,x[i])==0)
{__________(25)_______;
break;
if(j>
=k)
{________(26)_____________;
st[k].count++;
k++:
returnk;
{chars[10][20]={"
liu"
,"
wang"
zhao"
};
COUNTstat[5]={0};
inti,n;
.
n=count(S,10,stat);
%s:
%d\t"
,stat[i].name,stat[i].count);
16.设一个单向链表结点的数据类型定义为:
structnode
{intx;
structnode*next;
};
fun函数从h指向的链表第二个结点开始遍历所有结点,当遇到x值为奇数的结点时,将
该结点移到h链表第一个结点之前,函数返回链表首结点地址。
print函数输出p指向的链表
中所有结点的x值。
1342"
#defineN4
voidprint(stmctnode*p)
{while_____(27)________
,_________(28)_______);
P=P->
next;
prinff("
structnode*fun(structnode*h)
{structnode*pl,*p2,*p3;
pl=h;
p2=pl->
while(p2)
{if(p2->
x%2)
{p3=p2;
pl->
next=_______(29)_________;
p2=pl->
next:
p3->
next=h;
________(30)___________;
{pl=p2:
p2=p2->
retnmh;
{structnodea[N]={{4},{3},{2},{1}},*head=a;
inti,num;
N-1;
i++)a[i].next=&
a[i+1];
a[i].next=0;
head=fun(head);
print(head);
参考答案
一、选择题
1.D2.D3.B4.A5.D6.A7.A8.C9.B10.B11.B12.C13.B14.C15.B
16.D17.A18.B19.D20.B
21.C22.A23.D24.C25.B26.B27.A28.D29.B30•C,
二、填空题
(1)5
(2)mind(3)pow(x,y)或pow(10,5)
(4)FILE*zx;
(5)Odd(6)30
(7)26(8)135(9)153
(lO)397(11)211(12)321
(13)532(14)BASIC(15)C
(16)6(17)123(18)654
(19)k%10(20)a[2]==0或!
a[2](21)xO=x
(22)x0-f/fl或x0-F(x0)/Fl(xO)(23)COUNTst[]或COUNT*st(24)i<
n
(25)st[j].count++(26)strcpy(st[k].name,x[i])(27)P
(28)P->
x(29)p2->
next或p3->
next(30)h=p3