2003年4月全国计算机等级考试二级C语言笔试试题(含参考答案)

申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

文档介绍

2003年4月全国计算机等级考试二级C语言笔试试题(含参考答案)

2003年4月全国计算机等级考试二级C语言笔试试题(含参考答案)一、选择题((1)~(40)每小题1分,(41)~(55)每小题2分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)用8位无符号二进制数能表示的最大十进制数为A)127B)128C)255D)256(2)在64位高档微机中,一个字长所占的二进制位数为A)8B)16C)32D)64(3)在Windows环境下,为了复制一个对象,在用鼠标拖动该对象时应同时按住A)Alt键B)Esc键C)Shift键D)Ctrl键(4)在Windows菜单中,暗淡(灰色)的命令项表示该命令A)暂时不能用B)正在执行C)包含下一层菜单D)包含对话框(5)在DOS环境下,为了得到TYPE命令的帮助信息,正确的DOS命令为A)TYPEB)TYPE/HC)TYPE/*D)TYPE/?(6)下列选项中,能作为合法DOS文件名的是A)ANP/A.DATB)ABCCOMC)ECD.BASICD)XY+Z.TXT(7)下列叙述中正确的是A)在Windows环境下,最大化的窗口是不能移动的B)在Windows环境下,应用程序窗口最小化后,该应用程序暂停执行C)在Windows环境下,只有最小化的窗口才能关闭D)在Windows环境下,不能关闭最大化的窗口(8)在Windows环境下,工具栏中的复制按钮是A)打印机图标B)剪刀标志C)复制标志D)粘贴标志(9)在Windows98环境下,若要将整个屏幕上显示的内容存入剪贴板,可以按A)Ctrl+PrintScreen键B)Alt+PrintScree键C)Shift+PrintScreen键D)PrintScreen键(10)目前,计算机病毒扩散最快的途径是A)通过软件复制B)通过网络传播C)通过磁盘考贝D)运行游戏软件(11)以下叙述中正确的是A)C语言比其他语言高级B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚,具有其他语言的一切优点(12)C语言中用于结构化程序设计的三种基本结构是A)顺序结构、选择结构、循环结构B)if、switch、breakC)for、while、do-whileD)if、for、continue(13)在一个C程序中A)main函数必须出现在所有函数之前B)main函数可以在任何地方出现C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置(14)下列叙述中正确的是A)C语言中既有逻辑类型也有集合类型B)C语言中没有逻辑类型但有集合类型C)C语言中有逻辑类型但没有集合类型nD)C语言中既没有逻辑类型也没有集合类型(15)下列关于C语言用户标识符的叙述中正确的是用户标识符中可以出现在下划线和中划线(减号)用户标识符中不可以出现中划线,但可以出现下划线用户标识符中可以出现下划线,但不可以放在用户标识符的开头用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头(16)若有以下程序段(n所赋的是八进制数)intm=32767,n=032767printf("%d,%o/n",m,n);执行后输出结果是A)32767,32767B)32767,032767C)32767,77777D)32767,077777(17)下列关于单目运算符++、--的叙述中正确的是A)它们的运算对象可以是任何变量和常量B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量D)它们的运算对象可以是char型变量、int型变量和float型变量(18)若有以下程序段intm=0xabc,n=0xabc;m-=n;printf("%Xn",m);执行后输出结果是A)0X0B)0x0C)0D)0XABC(19)有以下程序段intm=0,n=0;charc='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%dn",m,c,n);若从键盘上输入:10A10<回车>,则输出结果是:A)10,A,10B)10,a,10C)10,a,0D)10,A,0(20)有以下程序main(){inti;for(i=0;i<3;i++)switch(i){case1:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}执行后输出结果是A)011122B)012C)012020D)120(21)有以下程序main(){intni=1,j=1,k=2;if((j++‖k++)&&i++)printf("%d,%d,%dn",i,j,k);}执行后输出结果是A)1,1,2B)2,2,1C)2,2,2D)2,2,3(22)有以下程序main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%dn",d);elseif((c-1>=d)==1)printf("%dn",d+1);elseprintf("%dn",d+2)}执行后输出结果是A)2B)3C)4D)编译时有错,无结果(23)有以下程序main(){intp[7]={11,13,14,15,16,17,18},i=0,k=0;while(i<7&&p[i]%2){k=k+p[i];i++;}printf("%dn",k);}执行后输出结果是A)58B)56C)45D)24(24)有以下程序main(){inti=0,s=0;do{if(i%2){i++;continue;}i++;s+=i;}while(i<7);printf("%dn",s);}执行后输出结果是A)16B)12C)28D)21(25)有以下程序main(){inti=10,j=1;printf("%d,%dn",i--,++j);}执行后输出结果是A)9,2B)10,2C)9,1D)10,1(26)有以下程序nmain(){chara,b,c,*d;a='';b='xbc';c='xab';d="17";print("%c%c%cn",a,b,c,*d);}编译时出现错误,以下叙述中正确的是A)程序中只有a='';语句不正确B)b='xbc';语句不正确C)d="127";语句不正确D)a='';和c='xab';语句都不正确(27)有以下程序intfl(intx,inty){returnx>y?x:y;}intf2(intx,inty){returnx>y?y:x;}main(){inta=4,b=3,c=5,d,e,f;d=f1(a,b);d=f1(d,c);e=f2(a,b);e=f2(e,c);f=a+b+c-d-e;printf("%d,%d,%dn",d,f,e);}执行后输出结果是A)3,4,5B)5,3,4C)5,4,3D)3,5,4(28)有如下程序voidf(intx,inty){intt;if(x=0;ps--)puts(ps);}执行后的输出结果是A)yzB)zC)zD)xxyzyzyzxyxyzxyz(42)有以下程序main(){inta[][3]={{1,2,3},{4,5,0}},{*pa}[3],i;pa=a;for(i=0;i<3;i++)if(i<2)pa[1][i]=pa[1][i]-1;elsepa[1][i]=1;printf("%dn",a[0][1]+a[1][1]+a[1][2]);}执行后输出结果是A)7B)6C)8D)无确定值(43)有以下程序voidfun(int*a,inti,intj){intt;if(i则运行结果为A}6B)8C)3D)4(45)以下程序段中,能够通过调用函数fun,使main函数中的指针变量p指向一个合法的整型单元的是A)main()B)main{int*p;{int*p;fun(p);fun(&p);}}intfun(int*p)intfun(int**p){ints;p=&s;}{ints;*p=&s;}C)#includeD)#includemain()main(){int*p;{int*p;fun(&p);fun(p);}}intfun(int**p)intfun(int*p){*p=(int*)malloc(2);}{p=(int*)malloc(sizeo(int));}(46)若要说明一个类型名STP,使得定义语句STPs等价于char*s,以下选项中正确的是A)typedefSTPchar*s;B)typedef*charSTP;C)typedefstp*char;D)typedefchar*STP;(47)设有如下定义structss{charname[10];intage;charsex;}std[3],*p=std;下面各输入语句中错误的是A)scanf("%d",&(*p).age);B)scanf("%s",&std.name);C)scanf("%c",&std[0].sex)D)scanf("%c",&(p->sex));(48)设char型变量x中的值为10100111,则表达式(2+x)^(~3)的值是A)10101001B)10101000C)11111101D)01010101(49)以下叙述中不正确的是A)C语言中的文本文件以ASCⅡ码形式存储数据B)C语言中对二进制文件的访问速度比文本文件快C)C语言中,随机读写方式不适用于文本文件nD)C语言中,顺序读写方式不适用于二进制文件(50)以下程序企图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。#includemain(){FILE*fout;charch;fout=fopen('abc.txt','w');ch=fgetc(stdin);while(ch!='#'){fputc(ch,fout);ch=fgetc(stdin);}fclose(fout);}出错的原因是A)函数fopen调用形式错误B)输入文件没有关闭C)函数fgetc调用形式错误D)文件指针stdin没有定义二、填空题(每空2分,共20分)请将每空的正确答案写在答题卡上【1】-【20】序号的横线上,答在试卷上不得分。(1)用十六进制绘存储器中的字节地址进行编号,若地址编号从000到FFFF,则该存诸器的容量为【1】KB。(2)假设在当前盘的当前目录下有两个文件A.TXT和B.TXT,现要将文件B.TXT合并连接到文件A.TXT的后面。若使用COPY命令,则完整的命令为【2】。(3)E-mail地址由用户和域名两部分组成,这两部分的分隔符为【3】。(4)假设在当前盘当前目录下有一个可执行程序USER.EXE。现要执行该程序,并要求在执行过程中将显示输出的结果信息存入当前盘当前目录的文件OUT.DAT中,则完整的DOS命令为【4】。(5)在DOS环境下,表示打印机的设备文件名为【5】。(6)若有语句inti=-19,j=i%4;printf("%dn",j);则输出结果是 【6】 。(7)若有程序main(){inti,j;scanf("i=%d,j=%d";&i,&j);printf("i=%d,j=%dn",i,j);}要求给i赋10,给j赋20,则应该从键盘输入 【7】 。(8)若有以下程序main(){intp,a=5;if(p=a!=0)nprintf("%dn",p);elseprintf("%dn",p+2);}执行后输出结果是 【8】 。(9)若有以下程序main(){inta=4,b=3,c=5,t=0;if(aif(aprintf("%d%d%dn",a,b,c);}执行后输出结果是【9】。(10)若有以下程序main(){inta[4][4]={{1,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}};inti,j,s=0;for(i=0;i<4;i++){for(j=0;j<4;j++){if(a[i][j]<0)continue;if(a[i][j]==0)break;s+=a[i][j];}}printf("%dn",s);}执行后输出的结果是 【10】 。(11)若有以下程序main(){chara;a='H'-'A'+'0';print("%cn",a);}执行后的输出结果是【11】。(12)若有以下程序intf(intx,inty){return(y-x)*x;}main(){inta=3,b=4,c=5,d;d=f(f(3,4),f(3,5));printf("%dn",d);}执行后输出的结果是【12】。(13)n函数YangHui的功能是把杨辉三角形的数据赋给二维数组的下半三角,形式如下111121133114641其构成规律是:第0列元素和主对角线无素均为1其余元素为其左上方和正上方元素之和数据的个数每行递增1请将程序补充完整。#defintN6voidYangHui(int*[N][N]){inti,j;x[0][0]=1for(i=1;iOUT.DAT(5)PRN或LPT1或LPT2(6)-3(7)i=10,j=20(8)1(9)503(10)58(11)7(12)9(13)x[i][i]和x[i-1][j-1]+x[i-1][j](14)!(s[i]>='0'&&s[i]<='9')和''(15)findbig(16)n16(17)x.link=y.link;(18)Hell
查看更多

相关文章

您可能关注的文档