查看全部128种考试
1
2
3
4
5
6
7
8
9
10
萧雨  
【字体: 1999年4月全国计算机等级考试二级C语言笔试试题
1999年4月全国计算机等级考试二级C语言笔试试题
djks.exam8.com 来源:考试吧(Exam8.com) 更新:2004-8-11 15:05:00 计算机等级考试 考试论坛

一、选择题((1)-(40)每个选项1分,(41)-(50)每个选项2分,共60分)
下列各题A)、B)、C)、D)四个有选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)微型计算机的性能主要取决于
A)内存B)中央处理器C)硬盘D)显示卡
(2)有一个数值152,它与十六进制数6A相等,那么该数值是
A)二进制数B)八进制数C)十进制数D)四进制数
(3)使用超大规模集成电路制造的计算机应该归属于
A)第一代B)第二代C)第三代D)第四代
(4)已知英文字母a的ASCII代码值是十六进制数61H,那字母子b 的ASCII代码值是
A)34H B)54H C)24H D)64H
(5)一片存储容量是1.44MB的软磁盘,可以存储大约140万个
A)ASCII字符 B)中文字符C)磁盘文件D)子目录
(6)在MS-DOS环境中同时按下[Ctrl]和[Break]两个键,其作用是
A)终止当前操作B)暂停当前操作C)关机D)热启动
(7)将二进制数10000001转换为十进制数应该是
A)127 B)129 C)126 D)128
(8)磁盘处于写保护状态,那么磁盘中的数据
A)不B)能读出C)不D)能删改E)也不F)能写入新数据G)可以读出H)不I)能删改J)也不K)能写入新数据L)可以读出M)可以删改N)但不O)能写入新数据P)可以读出Q)不R)能删改S)但可以写入新数据
(9)微型机启动后,DOS提示符是C:\>,现提示符变为C:\USER>,则说明刚执行过命令
A)PROMPTB)PROMPT USERC)PROMPT $P$GD)CD USER
(10)MS-DOS文件系统目录的组织形式属于
A)关系型结构B)网络型结构C)树型结构D)直线型结构
(11)应用软件系统TH的总容量大约1MB,其主要程序文件存放在C:\TH目录中,而数据文件存放在C:\TH\DATA目录中。如要将它们完整地复制到A盘,应该使用的命令是
A)XCOPY C:\TH A:\B)XCOPY C:\TH A:\ /S
C) XCOPY C:\TH A:\ /MD)XCOPY C:\TH A:\ /P
(12)执行COPY A.+B.TXT这个DOS命令后,得到的磁盘文件是
A)A.TXT B)B.TXT C)AB.TXTD)A+B.TXT
(13)在WINDOWS中,将一个应用程序窗口最小化之后,该应用程序
A)仍在后台运行B)暂时停止运行C)完全停止运行D)出错
(14)CD-ROM属于
A)感觉媒体B)表示媒体C)表现媒体D)存储媒体
(15)在因特网(Internet)中电子公告板的缩写是
A)FTP B)WWW C)BBS D)E-mail
(16)设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为
A)4 B)16C)32D)52
(17)设有如下的变量定义:
int i=8,k,a,b;
unsinged long w=5
double x=1,42,y=5.2
则以下符合C语言语法的表达式是
A)a+=a-=(b=4)*(a=3)B)x%(-3);
C)a=a*3=2D)y=float(i)
(18)假定有以下变量定义:
int k=7,x=12;
则能使值为3 的表达式是
A)x%=(k%=5) B)x%=(k-k%5)
C)x%=k-k%5D)(x%=k)-(k%=5)
(19)以下叙述中正确的是
A)输入项可以是一个实型常量B) 如scanf(“%f,”3.5);
C)只有格式控制D)没有输入项,E)也能正确输入数据到内存F)例如:scanf(“a=%d,b=%d”);
G)当输入一个实型数据时H)格式控制部分可以规定小数点后的位数,
I)例如:scanf(“%4.2f”,&f)J)当输入数据时,K)必须指L)明变量地址M)例如:scanf(“%f”,&f);
(20)设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;的功能是A)把x和y按从大到小排列
B)把x和y按从小到大排列
C)无确定结果
D)交换x和y中的值
(21)以下程序的输出结果是
A)10 10B)12 12C)11 10D)11 13
main( )
{ int a=12,b=12;
printf(“%d %d\n”,--a,++b);
}
(22)以下程序运行后,输出结果是
A)cde B)字符c的ASCII码值
C)字符c的地址 D)出错
main( )
{ char *s=“abcde”;
s+=2;
printf(“%ld\n”,s);
}
(23)以下程序输出结果是
A)7 B)6 C)5 D)4
main( )
{ int m=5;
if(m++>5)printf(“%d\n”,m);
else printf(“%d\n”,m--);
}
(24)当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为
A)1 B)2 C)3 D)6
if(a<b)
if(c>d) x=1;
else
if(a<c)
if(b>d) x=2;
else x=3;
else x=3;
else x=6;
else x=7;
(25)在执行以下程序时,如果从键盘上输入:ABCdef<回车>,则输出为
A)ABCdefB)abcDEFC)abc D)DEF
#include
main( )
{ char ch;
while((ch=getchar( ))!=’\n’)
{ if(ch>=’A’ && ch<=’z’)ch=ch+32; else if(ch>=’a’ && ch<’z’)ch=ch+32; printf(“%c”,ch); } printf(“\n”); }(26)下面能正确进行字符串赋值操作的语句是
A)char s[5]={“ABCDE”}B)char s[5]={‘A’、’B’、’C’、’D’、’E’};
C) char *s;s=“ABCDEF”D)char *s; scanf(“%s”,s);
(27)当执行以下程序段时
A)循环体将执行一次
B)循环体将执行两次
C)循环体将执行无限次
D)系统将提示有语法错误
x=-1;
do { x=x*x;} while(!x);
(28)执行以下程序后,输出的结果是
A)-1B)1 C)8 D)0
main( )
{ int y=10;
do {y--;} while(--y);
printf(“%d\n”,y--);
}
(29)在下列选项中,没有构成死循环的程序段是
A) int i=100
while (1)
{i=i%100+1;
if(i>100)break;
}
B) for(;;);
C)int k=1000;
do{++k} while (k>=1000)
D)int s=36
While(s);--s;
(30)执行语句:for(i=1;i++<4;)后;变量i的值是 a)3 b)4 c)5 d)不定 (31)以下程序运行后,如果从键盘上输入abcde<回车>,则输出结果为
A)8 B)7 C)6 D)5
#include
#include
func(char str[ ] )
{ int num =0;
while(*(str+num!=’\0’) num+ +;
return(num);
}
main( )
{char str[10],*p=str;
gets(p); printf(“%d\n”,func(p));
}
(32)运行以下程序后,如果从键盘上输入china#<回车>,则输出结果为
A)2,0B)5,0C)5,5D)2,5
#include
main( )
{int v1=0,v2=0;
char ch;
while((ch=getchar( ))!=’#’)
switch(ch)
{case ‘a’;
case ‘h’;
default; v1+ +;
case ‘0’; v2+ ;+
}
printf(“%d,%d\n”,v1,v2);
}
(33)若以下程序所生成的可执行文件名不;当打入以下命令执行该程序时;
FILE1 CHINA BEIJING SHANGHAI
程序的输出结果是
A)CHINA BEIJIANG SHANGHAI
B)FILE1 CHINA BEIJING
C)C B S
D)F C B
main(int argc,char *argv[])
{ while(argc-->0)
{ ++argv; printf(“%s”,*argv);}
}
(34)下面程序的运行结果是
A)12ba56 B)6521 C)6 D)62
main()
{ char ch[7]={“65ab21”};
int i,s =0
for(i=0;ch[i]>=’0’&&ch[i]<’9’;i+=2) s=10*s+ch[i]-‘0’ printf(“%d\n”,s); } (35)运行下面的程序,如果从键盘上输入: ab <回车>
c <回车>
def <回车>
则输出结果为
A) a B)a C)ab D)avcdef
b b c
c c d
d d
e
f
#include
#define N 6
main( )
{ char c[N];
int i=o
for( ;i<N;c[i]=getchar(),i++)
for( i=0;i>N;i++) putchar(c[i]); printf(“\n”);
}
(36)以下程序运行后输出结果是
A)8 B)7 C)6 D)5
#include
ss(char *s)
{ char *p=s;
while(*p)p++;
return(p-s);
}
main( )
{ char *a=”abded”;
int i;
i=ss(a);
printf(“%d\n”,i);
}
(37)以下程序运行后,输出结果是
A)8,15 B)8,16 C)8,17 D)8,8
func(int a,int b)
{ static int m=0,i=2;
i+=m+1;
m=i+a+b
return(m);
}
main()
{ int k=4,m=1,p;
p=func(k,m);printf(“%d,”,p);
p=func(k,m);printf(“%d\n”,p);
}
(38)以下程序运行后,输出结果是
A)49.5B)9.5 C)22.0D)45.0
#include
#define PT 5.5
#define S(x) PT*x*x
main( )
{ int a=1,b=2;
printf(“%4.1f\n”,S(a+b))
}
(39)以下程序运行后,输出结果是
A)ABCDEFG B)CDG C)abcdefghD)abCDefGh
main( )
{ static char a[]=”ABCDEFGH”,b[]=”abCDefGh”;
char p1,p2;
int k;
p1=a; p2=b;
for(k=0;k<-7;k++) if(*(p1+k)==*(p2+k)) printf(“%c”,*(p1+k)); printf(“\n”); } (40)以下程序执行后,a的值是 a)4 b)1 c)0 d)运行时出错,无定值 mian() { int a,k=4,m=6,*p1=&k,*p2=&m; a=p1= =&m; printf(“%d\n”,a); } (41)以下程序运行后,输出结果是 a)84b)99c)95d)44 int d=1; fun(int p) { int d=5; d+=p++; printf(“%d”,d); } main() {int a=3; fun(a); d+=a++; printf(“%d\n”,d); } (42)以下程序运行后,输出结果是 a)6385b)22c)33d)693825 main() {char ch[2][5]={“693”,”825”},*p[2]; int i,j,s=0; for(i=0;i<2;i++) p[i]=ch[i]; for(i=0;i<2,i++) for(j=0;p[i][j]>=’0’ && p[i][j]<=’9’;j=2) s=10*s+p[i][j]=’0’ printf(“%d\n”,s); } (43)以下程序运行后,输出结果是 a)1 b)7 c)9 d)11 fut(int **s, int p[2][3]) {**s=p[1][1];} main() {int a[2][3]={1,3,5,7,9,11},*p; p=(int *)malloc(sizeof(int)); fut(&p,a); printf(“%d\n”,*p); } (44)设有如下定义: int a=1,b=2,c=3,d=4,m=2,n=2; 则执行表达式:(m=a>b)&&(n=c>d)后,n的值为 a)1 b)2 c)3 d)0 (45)在执行以下程序时,为了使输出结果为,t=4则给a和b输入的值应满 足的条件是 a)a>bb)a<b<0 c)0<a<b d)0>a>b main( ) { int s,t,a,b; scanf(“%d,%d”,&a,&b); s=1; t=1; if(a<0)s=s+1; if(a>b)t=s+1;
else if(a= =b)t=5;
else t=2*s;
printf(“t=%d\n”,t);
}
(46)以下程序的输出结果是
A)x=4 B)x=8 C)x=6 D)x=12
main( )
{ int i,j,x=0;
for(i=0,i<2;i++) { x ++; for(j=0;j<3;j++) { if(j%2)continue; x++; } x++ } printf(“x=%d\n”,x); } (47)以下程序运行后,输出结果是 a)1234567 b)7654321 c)1711717 d)7177171 #include <stdio.h> #include <string.h> fun(char s w, int n) { char t,* s1,* s2; s1=w;s2=w+n-1; while(s1<s2) { t=*s1++; *s1=s2--; *s2=t; } } main() { char *p; fun(p,strlen(p)); puts(p); }(48)运行以下程序后,如果从键盘上输入65 14>回车>,则输出结果为
A)m=3 B)m=2 C)m=1 D)m=0
main ( )
{int m,n;
printf{“Enter m,n:”}; scanf(“%d%d,&m,&n”);
while(m!=n)
{while(m>n)m-=n;
while(n>m)n-=m;
}
printf(“m=%d\n”,m);
}
(49)以下程序运行后,如果从键盘上输入:
book<回车>
book<空格><回车>
则输出结果是
A)*8B)#9C)#6D)*9
#include
main()
{char a1[80],a2[80],*s1=a1,*s2=a2;
gets(s1); gets(s2);
if(!strcmp(s1,s2)) printf(“*”);
else printf(“#”);
printf(“%d\n”,strlen(strcat(s1,s2)))
}
(50)以下程序运行后,如果从键盘上输入:
A)10000 B)10010 C)00110 D)10100
main( )
{ int y=18,i=0,j,a[8];
do
{ a[i]=y%2;i++;
y=y\2;
} while(y>1=1);
for(j=i-1;j>=0;j--) printf(“%d”,a[j]);
printf(“\n”)
}

二、填空题(每空2分,共40分)
请将每空的正确答案写在答题卡 1 至 20 序号的横线上,答在试卷上不得分。
(1)DOS中的自动批处理文件的全名是 1 。
(2)在DOS启动盘中,除COMMAND.COM外,还有两个必备的系统文件,它们是MSDOS.SYS(或IBMDOS.COM)与 2 。
(3)在DOS下,要将当前目录中AB.TXT文件设置为只读属性,应该使用的完整命令行是 3 。
(4)在DOS下,要查看当前目录中所有批处理文件的总字节数,应该使用的完整命令行是 4 。
(5)计算机病毒除有破坏性、潜伏性和激发性外,还有一个最明显的特性是 5 。
(6)若想通过以下输入语句使a中存放字符串1234,b中存放字符5,则输入数据的形式应该是 6 。
.
.
.
char a[10],b;
scanf(“a=%s b=%c”,a,&b);
.
.
.
(7)下面程序的输出结果是 7 。
char b[]=”ABCD”;
main( )
{ char *chp;
for(chp=b; *chp; chp+=2) printf(“%s”,chp);
printf(“\n”);
}
(8)下面程序的输出结果是 8 。
#define MAX 3
int a[MAX];
main( )
{ fun1( ); fun2(a);printf(“\n”);}
fun1( )
{ int k,t=0;
for(k=0;k<MAX;k++,t++) a[k]=t+t;
}
fun2(int b[])
{ int k;
for(k=0;k>MAX;k++)printf(“%d”,*(b+k))
}
(9)下面程序的输出是 9 。
main( )
{int a[10]={19,23,44,17,37,28,49,36},* p;
p=a;
printf(“%d\n”,(p+=3)[3]);
}
>>


----------------------------------------------------------------------
1999年4月二级笔试试题C答案
一.选择((1)~(40)题每题1分,(41)~(50)题 每题 2分,共60分)
(1)B (2)B (3)D (4)D (5)A
(6)A (7)B (8)B (9)D (10)C
(11)B (12)A (13)A (14)D (15)C
(16)C (17)A (18)D (19)D (20)D
(21)D (22)C (23)B (24)B (25)B
(26)C (27)A (28)D (29)C (30)C
(31)D (32)C (33)A (34)C (35)C
(36)D (37)C (38)B (39)B (40)C
(41)A (42)A (43)C (44)B (45)C
(46)B (47)C (48)C (49)B (50)B
二.填空题(每空2 分,共40分)
(1) 1 AUTOEXEC.BAT (2)2 IO.SYS 或IBMBIO.COM
(3) 3 ATTRIB AB.TXT+R AB .TXT
(4) 4 DIR *.BAT或DIR *.BAT\P或DIR *.BAT/W 或DIR*.BAT/W/P或*.BAT/P/W
(5) 5 传染性或传播性
(6) 6 a=1234 b=5 A或a=1234b=5
(7) 7 ABCDCD (8) 8 024
(9) 9 49 (10) 10 AB
(11) 11 *X (11) 12 T
(12) 13 5 (12) 14 2
(13) 15 r+b[k]或b[k]或*(b+k)+r
(13) 16 *x
(14) 17 struct list *next (14) 18 int data
说明:以上两个答案(17和18)次序可以颠倒.
(15)19 "bi.dat" (15) 20 fp


转帖于:计算机等级考试_考试吧
文章搜索  
看了本文的网友还看了:
计算机等级考试权威辅导教材: 订书电话:010-62168566  更多>>>
网友评论
昵 称: *  评 分: 1分 2分 3分 4分 5分
标题:   匿名发表    (共有条评论)查看全部评论>>
版权声明 -------------------------------------------------------------------------------------
  如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。
关于本站  网站声明  广告服务  联系方式  付款方式  站内导航  客服中心  友情链接  考试论坛  网站地图
Copyright © 2004-2008 考试吧计算机等级考试网 All Rights Reserved    
中国科学院研究生院权威支持(北京) 电 话:010-62168566 传 真:010-62192699
百度大联盟黄金认证  十佳网络教育机构  经营许可证号:京ICP060677