1996年二级笔试试题C.docx

上传人:b****5 文档编号:29240800 上传时间:2023-07-21 格式:DOCX 页数:21 大小:21.34KB
下载 相关 举报
1996年二级笔试试题C.docx_第1页
第1页 / 共21页
1996年二级笔试试题C.docx_第2页
第2页 / 共21页
1996年二级笔试试题C.docx_第3页
第3页 / 共21页
1996年二级笔试试题C.docx_第4页
第4页 / 共21页
1996年二级笔试试题C.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

1996年二级笔试试题C.docx

《1996年二级笔试试题C.docx》由会员分享,可在线阅读,更多相关《1996年二级笔试试题C.docx(21页珍藏版)》请在冰豆网上搜索。

1996年二级笔试试题C.docx

1996年二级笔试试题C

1996年4月全国计算机等级考试二级

C语言笔试卷及答案(考试时间120分钟,满分100分)

一、选择题(

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

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

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

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

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

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

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

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

A)10EB)10DC)10CD)10B

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

A)——127到127B)——128到128C)——127到128D)——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.EXEB)F.CC)EF.CD)FABC.COM

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

A)*。

COMB)FORMAT.COM

C)AUTOEXEC.BATD)COMMAND.COM

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

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

│││││A.FOR

ABC[D1]DX.CQ.DAT[D2]

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

│││││││

B.PAS[D3]Y.BASA.CA1.C[D4]XYZ.C

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

QR.CNA.CA.TXTB.C

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

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

C)A:

D4、QR.CD)A:

D2、D4、QR.C

11.为了要将当前目录(不是根目录)中所有扩展名为。

C的文件同名复制到A盘的根目录、USER中,正确的命令是

A)COPYA:

*。

CUSER、*。

CB)COPYA:

*。

CA:

、USER

C)COPYA:

*。

CA:

USER、D)COPYA:

*。

CA:

USER、*。

C

12.为了在屏幕上一次显示当前盘当前目录下的所有扩展名为。

TXT的文件内容,下列命令中正确的是

A)TYPE*。

TXTB)TYPE*。

TXTCON

C)COPY*。

TXT》COND)COPY*。

TXTCON

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

A)COPYC:

、XYZ.TXTAB1.TXT

B)COPYAB1.TXT》》C:

、XYZ.TXT

C)TYPEAB1.TXT》C:

、XYZ.TXT

D)COPYAB1.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、USERB)XYZ

C)、D)、DOS

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

A)COMPB)PATH

C)PRINTD)FORMAT

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

A)DISKCOPYA:

C:

B)DISKCOPYA:

A:

C)COPYA:

*。

*D)COPYA:

*。

*C:

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

A)TYPEAAB.FOR》PRNB)TYPE?

AB.FOR

C)COPY*。

CPRND)COPYCONPRN

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

FORMATA:

/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)FORMATA:

与DELA:

*。

*

C)FORMATA:

/S与DELA:

*。

D)COPYA:

F1F2与RENA:

F1F2

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

A)'A'&&'B'B)A《=B

C)A││BC&&BCD)!

((A='A'&&CH《='Z')?

(CH32):

CH

上面表达式的值是

A)AB)aC)ZD)z

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

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

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

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

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

A)CHARST[4][5]={“ABCDE”};B)CHARS[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(“####”)

ELSEPRINTF(“&&&&”);

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

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

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

FOR(X=3;X《6;X)PRINTF((X%2)?

(“**%D”):

(“##%D、N”),X);

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

A)**3B)##3C)##3D)**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)3B)6C)8D)0

29.请读程序:

#INCLUDE

MAIN()

{INTA;FLOATB,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=4321B)A=10,B=765.000000,C=4321.000000C)A=98,B=765.0,C=4321.0

30.请读程序:

#INCLUDE《STDIO.D》

MAIN()

{INTN[2],I,J,K;

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

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

}

上面程序的输出结果是

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

31.请读程序片段:

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

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

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

A)68B)0C)字符'D'的地址D)不确定的值

(32)请读程序:

#INCLUDE

MAIN()

{INTA,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)7B)8C)9D)10

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

INT*P;

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

则应填入

A)INTB)INT*C)(*INT)D)(INT*)

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

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

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

A)11B)10C)9D)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(INTA,INTB)

{INTC;

C=AB;

RETURNC;

}

MAIN()

{INTX=6,Y=7,Z=8,R;

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

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

}

上面程序的输出结果是

A)11B)20C)21D)31

37.请读程序:

#INCLUDE《STDIO.H》

INTA[]={2,4,6,8};

MAIN()

{INTI;

INT*P=A;

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

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

}

上面程序输出结果是

A)6B)8C)4D)2

38.请读程序

#INCLUDE《STDIO.H》

CHARFUN(CHAR*C)

{IF(*C《='Z'&&*C》='A')*C——='A'——'a';

RETURN*C;

}

MAIN()

{CHARS[81],*P=S;

GETS(S);

WHILE(*P)

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

PUTCHAR('、N');

}

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

A)oPENtHEdOORB)openthedoor

C)OPENTHEDOORD)OpenTheDoor

39.请读程序:

#INCLUDE《STDIO.H》

VOIDFUN(INT*S)

{STATICINTJ=0;

DO

S[J]=S[J1];

WHILE(J《2);

}

MAIN()

{INTK,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)34756B)23445

C)35745D)12345

40.请读程序:

#include《stdio.h》

#defineSUB(X,Y)(X)*Y

main()

{inta=3,b=4;

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

}

上面程序的输出结果是

A)12B)15

C)16D)20

41.请读程序:

#include

main()

{intnum=0;

while(num=《=2)

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

}

上面程序的输出结果是

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

222

334

42.请读程序:

#include

main()

{floatx,y;

scanf(“%f”,&x);

if(x《0.0)y=0.0

elseif((x《5.0)&&(x!

=2.0))

y=1.0/(x2.0);

elseif(x《10.0)y=1.0/x;

elsey=10.0;

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

}

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

A)0.000000B)0.250000

C)0.500000D)1.000000

43.请读程序:

#include

main()

{intx=1,y=0,a=0,b=0;

switch(x)

{case1:

switch(y)

{case0:

a;break;

case1:

b;break;

}

case2:

a;b;break;

}

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

}

上面程序输出结果是

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

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

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

inta[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()

{floatx,y,z;

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

z=x/y;

while

(1)

{if(fabs(z)》1.0)

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

}

elsebreak;

}

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

}

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

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

46.请读程序:

#include

f(intb[],intn)

{inti,r;

r=1;

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

returnr;

}

main()

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

x=f(a,3);

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

}

上面程序输出结果是

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

47.请读程序:

#include

#include

voidfun(char*s)

{chara[10];

strcpy(a,“STRING”);

s=a;

}

main()

{char*p;

fun(p);

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

}

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

A)STRINGB)STRING

C)STRINGD)不确定的值

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

datanext

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

voidfun(float*pl,float*p2,float*s)

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

*s=*pl*(p2)l

}

main()

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

fun(a,b,s);

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

}

上面程序的输出结果是

A)11.100000B)12.100000

C)21.100000D)1.100000

50.请读程序:

#include

#include

voidfun(char*w,intm)

{chars,*pl,*p2;

p1=w;p2=wm——1;

while(pl

main()

{staticcharb[]=“Goodbye”;

char*chp=&b[7];

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

putchar('、n');

}

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

───

#include

voidas(intx,inty,int*cp,int*dp)

{*cp=xy;

*dp=x——y;

}

main()

{inta=4,b=3,c,d;

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

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

}

9.请读程序:

#include

main(intargc,char*argv[])

{inti;

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

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

printf(“、n”);

}

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

abcfilelfile2(表示回车)

程序执行后的输出结果是

───

10.条件“20”

#defineN5

fun(char*s,chara,intn)

{intj;

*s=a;j=n;

while(e

voidfun(char*al,char*a2,intn)

{intk;

for(k=0;ks[k])

────

returnk;

}

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

───

#include

fun(intx)

{intp;

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

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

returnp;

}

main()

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

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

───

#include

funa(inta,intb)

{returnab;}

funb(inta,intb)

{returna——b;}

sub(int(*t)(),intx,inty;)

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

main()

{intx,(*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“};”

inti;

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

printf(“、n”);

}

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

datanext

┌─┐

structlink{chardata;│19│}node;

└─┘

──

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

#include

main()

{FILE*fp;

longnum=0;

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

{printf(“Can'topenfile!

、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)71

(9)3abc.exefile1file2(注:

两个答案,每个1分)

(10)│10│((20

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

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

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

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