繁体中文 设为首页 加入收藏
免费发布
当前位置:电脑技术首页 >> 教育认证 >> 1996年 4 月全国计算机等级考试二级C语言笔试卷及答案
1996年 4 月全国计算机等级考试二级C语言笔试卷及答案
2008-11-04 11:25:16  作者:  来源:互联网  浏览次数:383  文字大小:【】【】【

    

一、选择题((1)~(40)题每题1分,(41)~(50)题每题2分共60分) 

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在度卷上不得分。 

1.一个完整的计算机系统包括______ 

A)主机健盘与显示器B)计算机与外部设备 

C)硬件系统与软件系统D)系统软件与应用软件 

2.十六进制数1000转换成十制数是 

A)4096 B)1024 C)2048 D)8192 

3.十进制数269转换成十六进制数是 

A)10E B)10D C)10C D)10B 

4.如果用八位二进制补码表示带符号的定点整数,则能表示的十进制数的范围是 

A)――127到127 B)――128到128 C)――127到128 D)――128到127 

5.下列设备中,既可作为输入设备又可作为输出设备的是 

A)鼠标器B)打印机C)键盘D)磁盘驱动器 

6.下列各叙述中,正确的是 

A)正数二进制原码的补码是原码本身 

B)所有的十进制数都能准确地转换为有限位二进制小数 

C)汉字的计算机机内码就是国标码 

D)存储器具有记忆能力,其中的信息任何时候都不会丢失 

7.在下列操作中,能导致DOS系统重新启动但不进行系统自检的是 

A)加电开机B)按《CTRL》《BREAK》 

C)按《CTRL》《ALT》《DEL》D)按RESET按钮 

8.如果给定一个带有通配符的文件名F *。?,则在下列各文件中,它能代表的文件名是 

A)FA.EXE B)F.C C)EF.C D)FABC.COM 

9.DOS系统启动后,下列文件中常驻内存的是 

A)*。COM B)FORMAT.COM 

C)AUTOEXEC.BAT D)COMMAND.COM 

10.设A盘的目录结构为(画方框的为目录) 

、 



┌───┬───┼─────┬─────┬────┐ 

│││││A.FOR  

ABC [D1]DX.C Q.DAT [D2] 

┌───┴┬───┬───┐┌──┼───┐ 

│││││││ 

B.PAS [D3]Y.BAS A.C A1.C [D4]XYZ.C 

┌───┴┬──┬────┐ 

QR.C NA.C A.TXT B.C 

如果当前盘为C盘,A盘的当前目录为、D2,则下列对A盘上文件QR.C的指定中,合法的是 

A)、D2、D4、QR.C B)D4、QR.C 

C)A:D4、QR.C D)A:D2、D4、QR.C 

11.为了要将当前目录(不是根目录)中所有扩展名为。C的文件同名复制到A 盘的根目录、USER中,正确的命令是 

A)COPY A:*。C USER、*。C B)COPY A:*。C A:、USER 

C)COPYA:*。C A:USER、D)COPY A:*。C A:USER、*。C 

12.为了在屏幕上一次显示当前盘当前目录下的所有扩展名为。TXT的文件内容,下列命令中正确的是 

A)TYPE *。TXT B)TYPE *。TXT CON 

C)COPY *。TXT 》CON D)COPY *。TXT CON 

13.设当前盘为A盘,为了将当前盘当前目录下的文件AB1.TXT连接在C 盘根目录下的文件XYZ.TXT的后面,正确的命令是 

A)COPY C:、XYZ.TXTAB1.TXT 

B)COPY AB1.TXT 》》C:、XYZ.TXT 

C)TYPE AB1.TXT 》C:、XYZ.TXT 

D)COPY AB1.TXTC:、XYZ.TXT 》C:、XYZ.TXT 

14.设A盘为启动盘,其目录结构为(画方框的为目录) 

、 

┌──────┴──────┐ 

[DOS]COMMAND.COM 

┌───┴──────┐ 

[USER]AUTOEXEC.BAT  

其中文件AUTOEXEC.BAT的内容为 

MD 、XYZ 

CD 、DOS、USER 

则由A启动成功后,A盘的当前目录是 

A)、DOS、USER B)XYZ 

C)、D)、DOS 

15.下列DOS命令中为内部命令的是 

A)COMP B)PATH 

C)PRINT D)FORMAT 


16.设当前盘为C盘,所用的所有软盘已格式化且容量相同,则下列DOS命令中错误的是 

A)DISKCOPY A:C:B)DISKCOPY A:A: 

C)COPY A:*。*D)COPY A:*。*C: 

17.下列DOS命令中,有错误的是 

A)TYPE AAB.FOR 》PRN B)TYPE ?AB.FOR 

C)COPY *。C PRN D)COPY CON PRN 

18.设当前盘为C盘,在当前目录下有全部的DOS系统文件与批处理命令文件AB.BAT,且该批处理命令文件的内容为 

FORMAT A:/4 

MD 、XYZ 

CD 、XYZ 

RD 、XYZ 

MD 、XYZ 

如果在1.2M软盘驱动器A中插入一张360K容量的软盘片,执行批处理命令文件AB.BAT后,结果A盘的目录结构是 

A)根目录 

B)根目录──子目录XYZ──子目录XYZ 

C)根目录─┬子目录XYZ 

└─子目录XYZ 

D)根目录──子目录XYZ 

19.下列带有通配符的文件名中,能代表文件ABC.FOR的是 

A)*。BC.?B)A?。* 

C)?BC.*D


 )?。? 

20.设当前盘为C盘,且C盘上含有子目录、DOS,A盘为只有根目录的启动盘(根目录下只有三个DOS系统文件与扩展名为。C的文件)。下列命令组中的两个命令从效果上可以认为等价的是 

A)DEL 、DOS 与RD 、DOS 

B)FORMAT A:与DEL A:*。* 

C)FORMAT A:/S 与DEL A:*。? 

D)COPY A:F1 F2 与REN A:F1 F2 

21.设A`B和C都是INT型变量,且A=3,B=4,C=5,则一表达式中,值为0的表达式是 

A)’A’&&’B’B)A《=B 

C)A││BC&&BC D)!((A=’A’&&CH 《=’Z’)?(CH 32):CH 

上面表达式的值是 

A)A B)a C)Z D)z 

24.若X和Y都是INT型变量,X=100,Y=200,且有下面的程序片段: 

PRINT(“%D”,(X,Y)); 

上面程序片段的输出结果是 

A)200 B)100 

C)100 200 D)输出格式符不够,输出不确定的值 


25.下面各语句行中,能正是行赋字符串操作的语句行是 

A)CHAR ST[4][5]={“ABCDE”}; 

B)CHAR S[5]={’A’,’B’,’C’,’D’,’E’}; 

C)CHAR *S;S=“ABCDE”; 

D)CHAR *S;SCANF(“%S”,S); 

26.若K是INT型变量,且有下面的程序片段: 

K =――3; 

IF(K《=0)PRINTF(“####”) 

ELSE PRINTF(“&&&&”); 

上面程序片段的输出结果是 

A)####B)&&&& 

C)####&&&&D)有语法错误,无输出结果 

27.若X是INT型变量,且有下面的程序片段: 

FOR(X=3;X《6;X)PRINTF((X%2)?(“**%D”):(“##%D、N”),X); 

上面程序片段的输出结果是 

A)**3 B)##3 C)##3 D)**3##4  

##4 **4 **4##5 **5 

**5 ##5 

28.请读程序: 

#INCLUDE  

F(CHAR *S) 

{CHAR *P=S; 

WHILE(*P !=’、0’)P; 

RETURN(P――S); 



MAIN() 

{PRINTF(“%D、N”,F(“ABCDEF”));} 

上面输出结果是 

A)3 B)6


C)8 D)0 

29.请读程序: 

#INCLUDE  

MAIN() 

{INT A;FLOAT B,C; 

SCANF(“%2D%3F%4F”,&A,&B,&C); 

PRINTF(“、NA=%D,B=%F,C=%F、N”,A,B,C); 



若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是 

A)A=98,B=765,C=4321 

B)A=10,B=765.000000,C=4321.000000 

C)A=98,B=765.0,C=4321.0 

30.请读程序: 

#INCLUDE 《STDIO.D》 

MAIN() 

{INT N[2],I,J,K; 

FOR(I=0;I《2;I)N[J]=N[I]1; 

PRINTF(“%D、N”,N[K]); 



上面程序的输出结果是 

A)不确定的值B)3 C)2 D)1 

31.请读程序片段: 

CHAR STR[]=“ABCD”,*P=STR; 

PRINTF(“%D、N”,*(P4)); 

上面程序片段的输出结果是 

A)68 B)0 C)字符’D’的地址D)不确定的值(32)请读程序: 

#INCLUDE  

MAIN() 

{INT A,B; 


FOR(A=1,B=1,A《=100;A) 

{IF(B》=20)BREAK; 

IF(B%3==1) 

{B=3; 

CONTINUE; 



B――=5; 



PRINTF(“%D、N”,A); 



上面程序的输出结果是 

A)7 B)8 C)9 D)10 

33.若要用下面的程序片段使指针变量P指向一个存储型变量的动态存储单元; 

INT *P; 

P =────MALLOC(SIZEOF(INT)); 

则应填入 

A)INT B)INT * 

C)(*INT)D)(INT *) 

34.请读程序片段(字符串内没有空格字符): 

PRINTF(“%D、N”,STRLEN(“ATS、N012、1、、”)); 

上面程序片段的输出结果是 

A)11 B)10 

C)9 D)8 

35.请读程序: 

#INCLUDE《STDIP.H》 

#INCLUDE《STRING.H》 

MAIN() 

{CHAR *SL=“ABCDEF”,*s2= “aB’;” 

s1;s2; 

PRINTF(“%D、N”,STRCMP(s1,s2) 



上面程序的输出结果是 

A)正数B)负数 

C)零D)不确定的值 

36.请读程序: 

#INCLUDE《STDIP.H》 

FUNC(INT A,INT B) 

{INT C; 

C=AB; 

RETURN C; 



MAIN() 

{INT X=6,Y=7,Z=8,R; 

R=FUNC((X――,Y,XY),Z――); 

PRINTF(“%D、N”,R); 



上面程序的输出结果是 

A)11 B)20 

C)21 D)31 

37.请读程序: 

#INCLUDE《STDIO.H》 

INT A[]={2,4,6,8}; 

MAIN() 

{INT I; 

INT *P=A; 

FOR(I=0;I《4;I)A[I]=*P; 

PRINTF(“%D、N”,A[2]); 



上面程序输出结果是 

A)6 B)8 

C)4 D)2 

38.请读程序 

#INCLUDE《STDIO.H》 

CHAR FUN(CHAR *C) 

{IF(*C《=’Z’&&*C》=’A’)*C ――=’A’――’a’; 

RETURN *C; 



MAIN() 

{CHAR S[81],*P=S; 

GETS(S); 

WHILE(*P) 

{*P=FUN(P);PUTCHAR(*P);P;} 

PUTCHAR(’、N’); 



若运行时从键盘上输入OPEN THE DOOR(表示回车),则一面的输出结果是 

A)oPEN tHE dOOR 

B)open the door 


C)OPEN THE DOOR 

D)Open The Door 

39.请读程序: 

#INCLUDE《STDIO.H》 

VOID FUN(INT *S) 

{STATIC INT J=0; 

DO 

S[J]=S[J1]; 

WHILE(J《2); 



MAIN() 

{INT K,A[10]={1 ,2,3,4,5}; 

FOR(K=1;K《3;K)FUN(A); 

FOR(K=0;K《5;K)PRINTF(“%D”,A[K]); 



上面程序输出结果是 

A)34756 B)23445 

C)35745 D)12345 

40.请读程序: 

#include《stdio.h》 

#define SUB(X,Y)(X)*Y 

main() 

{int a=3,b=4; 

printf(“%d、n”,SUB(a,b)); 



上面程序的输出结果是 

A)12 B)15 

C)16 D)20 

41.请读程序: 

#include 

main() 

{int num=0; 

while(num=《=2) 

{num;printf(“%d、n”,num);} 



上面程序的输出结果是 

A)1 B)1 C)1 D)1 

2 2 2 

3 3 4 

42.请读程序: 

#include 

main() 

{float x,y; 

scanf(“%f”,&x); 

if(x《0.0)y=0.0 

else if((x《5.0)&&(x!=2.0)) 

y=1.0/(x2.0); 

else if(x《10.0)y=1.0/x; 

else y=10.0; 

printf(“%f、n”,y); 



若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果是 

A)0.000000 B)0.250000 

C)0.500000 D)1.000000 

43.请读程序: 

#include 

main() 

{int x=1,y=0,a=0,b=0; 

switch(x) 

{case 1: 

switch(y) 

{case 0:a;break; 

case 1:b;break; 



case 2: 

a;b;break; 



printf(“a=%d,b=%d、n”,a,b); 



上面程序输出结果是 

A)a=2,b=1 B)a=1,b=1 

C)a=1,b=0 D)a=2,b=2 

44.若有下 面的程序片段: 

int a[12]={0},*p[3],**pp,i; 

for(i=0;i《3;i) 

p[i]=&a[i*4]; 

pp=p; 

则对数组元素的错误引用是 

A)PP[0][1]B)a[10]C)P[3][1]D)*(*(P2)2) 

45.请读程序: 

#include 

#include 

main() 


{float x,y,z; 

scanf(“%f%f”,&x,&y,), 

z=x/y; 

while(1) 

{if(fabs(z)》1.0) 

{x=y;y=z;z=x/y; 



else break; 



printf(“%f、n”,y); 



若运行时从键盘上输入3.6 2.4(表示回车),则输出结果是 

A)1.500000 B)1.600000 C)2.000000 D)2.400000] 

46.请读程序: 

#include 

f(int b[],int n) 

{int i,r; 

r=1; 

for(i=0;i《=n;i)r=r*b[i]; 

return r; 



main() 

{int x,a[]={2,3,4,5,6,7,8,9}; 

x=f(a,3); 

printf(“%d、n”,x); 



上面程序输出结果是 

A)720 B)120 C)24 D)6 

47.请读程序: 

#include 

#include 

void fun(char *s) 

{char a[10]; 

strcpy(a,“STRING”); 

s=a; 



main() 

{char *p; 

fun(p); 

printf(“%s、n”,p); 



上面程序的输出结果是(表示空格) 

A)STRING B)STRING 

C)STRING D)不确定的值 

48.若已建立下面的链表结构,指针P`S分别提向图中所示的结点,则不能将S所指的结点插入到链末尾的语句组是 

data next 

head ───┤E ││────┤F │NULL│ 

↑p │ 

s ───→ 

A)s― ―》next=NULL;p=p――》next;p――》next=s; 

B)p=p――》next;s――》next=p――》next;p――》next=s; 

C)P=P――》NEXT;S――》NEXT=P;P――》next=s; 

D)p=(*p)。next;(*s)。next=(*p)。next;(*p)。next=s; 

49.请读程序: 

#include 

void fun(float *pl,float *p2,float *s) 

{s=(float *)calloc(1,sizeof(float)); 

*s=*pl *(p2)l 



main() 

{float a[2]={1.1,2.2},b[2]={10.0,20.0},*s=a; 

fun(a,b,s); 

printf(“%f、n”,*s); 



上面程序的输出结果是 

A)11.100000 B)12.100000 


C)21.100000 D)1.100000 

50.请读程序: 

#include 

#include 

void fun(char *w,int m) 

{char s,*pl,*p2; 

p1=w;p2=wm――1; 

while(pl 

main() 

{static char b[]=“Goodbye”; 

char *chp=&b[7]; 

while(――chp》=&b[0]putchar(*chp); 

putchar(’、n’); 



8.下面程序输出结果是。 

─── 

#include 

void as(int x,int y,int *cp,int *dp) 

{*cp=xy; 

*dp=x――y; 



main() 

{int a=4,b=3,c,d; 

as(a,b,&c,&d); 

printf(“%d %d、”,c,d); 



9.请读程序: 

#include 

main(int argc,char *argv[]) 

{int i; 

printf(“%d、n”,argc); 

for(i=0;i《=argc――1;i)printf(“%s ”,argv[i]); 

printf(“、n”); 



若上面的程序编译`连接后生成可执行文件ABC.EXE,则输入以下命令行 

abc filel file2(表示回车)


程序执行后的输出结果是 

。 

─── 

10.条件“20” 

#define N 5 

fun(char *s,char a,int n) 

{int j; 

*s=a;j=n; 

while(e 

void fun(char *al,char *a2,int n) 

{int k; 

for(k=0;ks[k]) 

。 

──── 

return k; 



16.下面程序的输同结果是。 

─── 

#include 

fun(int x) 

{int p; 

if(x==0││x==1)return(3); 

p=x――fun(x――2); 

return p; 



main() 

{printf(“%d、n”,fun(9));} 

17.下面程序的输出结果是 

。 

─── 

#include 

funa(int a,int b) 

{return ab;} 

funb(int a,int b) 

{return a――b;} 

sub(int(*t)(),int x,int y;) 

{return ((*t)(x,y));} 

main() 

{int x,(*p)(); 

p=funa; 

x=sub(p,9,3); 

x=sub(funb,8,3); 

print(“%d、n”,x); 

18.下面程序的输出结果是 

。 

── 

#include 

main() 


{char *p[]={“BOOL”,OPK“,”H“,”SP“};” 

int i; 

for(i=3;i》=0;i――,i――)printf(“%c”,*p[i]); 

printf(“、n”); 



19.为了建立如图所示的存储结构(即每个结点含两个域,data 是数据域,next是指向结点的指针域,)请填空。 

data next 

┌─┐ 

struct link {char data;│19│}node; 

└─┘ 

── 

20.下面的的程序用来统计文件中字符的个数,请填空。 

#in clude 

main() 

{FILE *fp; 

long num=0; 

if((fp=fopen(“fname.dat”,“r”))==NULL) 

{printf(“Can’topen file!、n”);exit(0);} 

while 

─── 

{fgetc(fp);num;} 

printf(“num=%d、n”,num); 

fclose(fp); 



1996年4月 

全国计算机
等级考试二级笔试试卷 

一选择题((1)~(40)题每题1分,(41)~(50)题每题2分,共60分) 

(1)C (2)A (3)B (4)D (5)D  

(6)A (7)C (8)B (9)D (10)C  

(11)B (12)D (13)A (14)C (15)B  

(16)A (17)B (18)A (19)C (20)C  

(21)D (22)B (23)B (24)A (25)C  

(26)D (27)D (28)B (29)C (30)A  

(31)B (32)B (33)D (34)C (35)A  

(36)C (37)A (38)B (39)C (40)A  

(41)C (42)C (43)A (44)C (45)B  

(46)B (47)D (48)C (49)D (50)C  

二填空题(每空2分,共40分) 

(第(2)`(3)空允许小写或大小写混合使用,其它空均须与答案一样) 

(1)外部 

(2)DIR ??C*。* 

(3)A:、X、Y、W、QR.C  

(4)64 

(5)92  

(6)│6 │pow(sin(x),2)*(ab)/(a――b)或sit(x)*sit(x)*(ab)/(a――b) 

(7)eybdooG  

(8)7 1 

(9)3abc.exe file1 file2 (注:两个答案,每个1分) 

(10)│10│((20 


 年 4 月全国计算机
等级考试二级C语言笔试卷及答案(考试时间120分钟,满分100分)

0

顶一下

0

踩一下
相关文章
友情链接 | 诚聘英才 | 关于我们 | 版权声明 | 联系我们 | 广告服务

  •       [粤ICP备07015598号]
           网上报警
  •