二级C语言历年笔试真题_第1页
二级C语言历年笔试真题_第2页
二级C语言历年笔试真题_第3页
二级C语言历年笔试真题_第4页
二级C语言历年笔试真题_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2010年9月全国计算机二级C语言笔试D)软件的运行维护过程序、分支、循环三种结构组成

试题:文字版(无答案)(6)面向对象方法中,继承是指B)结构化程序使用goto语句会很

A)一组对象所具有的相似性质便捷

一、选择题(每小题2分,共70分)B)一个对象具有另一个对象的性质C)在C语言中,程序的模块化是

下列各题A)、B)、C)、D)四C)各对象之间的共同性质利用函数实现的

个选项中,只有一个选项是正确的。请D)类之间共享属性和操作的机制D)由三种基本结构构成的程序只能

将正确选项填涂在答题卡相应位置上,(7)层次型、网状型和关系型数据库解决小规模的问题

答在试卷上不得分。划分原则是(12)以下关于简单程序设计的步骤

(1)下列叙述中正确的是A)记录长度利顺序的说法中正确的是

A)线性表的链式存储结构与顺序存B)文件的大小A)确定算法后,整理并写出文档,

储结构所需要的存储空间是相同的

C)联系的复杂程度最后进行编码和上机调试

线性表的链式存储结构所需要的

B)D)数据之间的联系方式B)首先确定数据结构,然后确定算

存储空间一般要多于顺序存储结构(8)一个工作人员可以使用多台计算法,再编码,并上机调试,最后整理文

C)线性表的链式存储结构所需要的机,而一台计算机可被多个人使用,则档

存储空间一般要少于顺序存储结构实体工作人员、与实体计算机之间的联C)先编码和上机调试,在编码过程

D)上述三种说法都不对系是中确定算法和数据结构,最后整理文档

(2)下列叙述中正确的是A)一对一D)先写好文档,再根据文档进行编

A)在栈中,栈中元素随栈底指针与B)一对多码和上机调试,最后确定算法和数据结

栈顶指针的变化而动态变化C)多对多构

B)在栈中,栈顶指针不变,栈中元D)多对一(13)以下叙述中错误的是

素随栈底指针的变化而动态变化

(9)数据库设计中反映用户对数据要A)C程序在运行过程中所有计算

C)在栈中,栈底指针不变,栈中元求的模式是都以二进制方式进行

素随栈顶指针的变化而动态变化A)内模式B)C程序在运行过程中所有计算都

D)上述三种说法都不对B)概念模式以十进制方式进行

3)软件测试的目的是C)外模式C)所有C程序都需要编译链接无

A)评估软件可靠性D)设计模式误后才能运行

B)发现并改正程序中的错误(10)有三个关系R、S和T如下:D)C程序中整型变量只能存放整

C)改正程序中的错误数,实型变量只能存放浮点数

D)发现程序中的错误(14)有以下定义:inta;longb;

(4)下面描述中,不属于软件危机表doublex,y;则以下选项中正确的表达

现的是式是

A)软件过程不规范A)a%(int)(x-y)

B)软件开发生产率低则由关系R和S得到关系T的操作B)a=x!=y;

C)软件质量难以控制C)(a*y)%b

D)软件成本不断提高A)自然连接D)y=x+y=x

(5)软件生命周期是指B)交(15)以下选项中能表示合法常量的

A)软件产品从提出、实现、使用维C)投影是

护到停止使用退役的过程D)并A)整数:I,200

B)软件从需求分析、设计、实现到(11)以下关于结构化程序设计的叙述B)实数:1.5E2.0

测试完成的过程中正确的是C)字符斜杠:%

C)软件的开发过程A)一个结构化程序必须同时由顺D)字符串:"\007"

(16)表达式a+=a-=a=9的值是case1:b++;break;case1.(23)有以下程序

A)90:b++;break;#includeVstdio.h>

B)_9default:a++;b++;default#include<string.h>

C)18:a++;b++;main()

D)0}){charxE]="STRING”;

(17)若变量已正确定义,在if(W)p(20)有以下程序x[oj=o;x[i]=、(r;x[2J

rintf("%d\n,k");中,以下不可替代W#include<stdio.h>='0';

的是main()printf("%d%d\n",sizeof(x),

A)a<>b+c{inta=l>b=2;strlen(x));

B)ch=getchar()while(a<6){b+=a;a+=2;b%二}

C)a==b+c10;)程序运行后的输出结果是

D)a++printf("%d,%d\n”,a,b);A)61

(18)有以下程序)B)70

#include<stdio.h>程序运行后的输出结果是063

main()A)5,11D)71

{inta=Lb=0;B)7,1(24)有以下程序

if(!a)b++;C)7,11#include<stdio.h>

elseif(a==0)if(a)b+=2;D)6,1Intf(intx);

elseb+=3;(21)有以下程序main()

printf(,,%d\rf,,b);#include<stdio.h>{intn=l,m;

}main()m=f(f(f(n)));printf("%d

程序运行后的输出结果是{inty=10;\n”,m);

A)0while(y-);}

B)1printf("Y=%d\n",Y);intf(intx)

C)2}{returnx*2;}

D)3程序执行后的输出结果是程序运行后的输出结果是

(19)若有定义语句inta,b;doublex;A)y=0A)1

则下列选项中没有错误的是B)y=-1B)2

A)switch(x%2)B)swiC)y=lC)4

tch((int)x/2.0D)while构成无限循环D)8

{case0:a++;break;{case0:(22)有以下程序(25)以下程序段完全正确的是

a++;break;#includeVstdio.h>A)int*p;scanf(”%d”,&p);

case1:b++;break;case1:main()B)int*p;scanf("%d”,p);

b++;break;{chars[J="rstuv”;C)intk,*p=&k;scanf("%d",p);

default:a++;b++;default:printf(''%c\n",*s+2);D)intk,*p:;*p=&k;scanf("%

a++;b++;}d”,p);

})程序运行后的输出结果是(26)有定义语句:int*p[4];以下选项

C)switch((int)x%2)D)sA)tuv中与此语句等价的是

witch((int)(x)%2)B)字符t的ASCII码值A)intp[4];

{case0:a++;break;{case0.C)tB)int**p;

0:a++;break;D)出昔C)int*(p[4j);

D)int(*p)F4j;{intaaTlOj={1>2、3、4、5、为小写字母

(27)下列定义数组的语句中,正6、7),i;#include<stdio.h>

确的是fun(aa>7);#include<ctype.h>

A)intN=10;B)#definefor(i=0,i<7;i++)printf("%@”,voidfun(char*p)

N10aaLi]));{inti=0;

intx[N];intx[N];printf("\n");while(p[i])

C)intx[0..10];D)intxL];){if(p[i]==''&&islower(pFi-1J))

(28)若要定义一个具有5个元素的程序运行后的输出结果是

整型数组,以下错误的定义语句是A)725,4,3,6,1i++;

A)inta[5]={0};B)1,6,345,2,7}

B)intb[]={0,0,0,0,0);C)7,6,5,4321)

C)intc[2+3];D)1,7,3,562」main()

D)inti=5,d[i];(31)下列选项中,能够满足“若字符{charsi[100]="abcdEFG!”;

(29)有以下程序串si等于字符串s2,则执行ST”要求的是fun(si);printf("%s\n",si);

#include<stdio.h>A)if(strcmp(s2,sl)==0)ST;)

voidf(int*p);B)if(sl=s2)ST;程序运行后的输出结果是

main()C)if(strcpy(s1,s2)==1)ST;A)abcdEFG!

{inta[5]={1,2,3,4,5),D)if(sl-s2==0)ST;B)AbCdEFg!

(32)以下不能将s所指字符串正确C)aBcDEFG!

f(r);printf("%d\n";*r);复制到t所指存储空间的是D)abcdEFg!

}A)while(*t=*s){t++;s++;}(35)有以下程序

voidf(int*p)B)for(i=O;t[i]=s[i];i++);#include<stdio.h>

{p=p+3;printf("%d,”,*p);}C)do{*t++=*s++;}while(*s);voidfun(intx)

程序运行后的输出结果是D)for(i=O,j=O;t[i++]=s[j++];);{if(x/2>1)fun(x/2);

A)1,4printf("%d”,x);

(33)有以下程序(strcat函数用

B)4,4)

以连接两个字符串)

C)3,1main()

D)4,1#include<stdio.h>{fun(7);printf("\n");}

(30)有以下程序(函数ftm只对下标#include<string.h>程序运行后的输出结果是

为偶数的元素进行操作)main()A)137

#include<stdio.h>{chara[20]="ABCD\OEFG\0'',B)731

口;

voidfun(int*a;intn)b="IJK”073

;;

{inti、j>k、t;strcat(a,b)printf("%s\n",a)D)37

for(i=0;i<n-1;l+=2)}(36)有以下程序

程序运行后的输出结果是

{k=i「#include<stdio.h>

for(j=i;j<n;j+=2)if(a[j]>aA)ABCDE\OFG\O1JKintfun()

(k])k=j;B)ABCDIJK{staticintx=l;

t=a(i];a(i]=aEk];a(k]=t;C)IJKx+=l;returnx;

D)EFGIJK

})

有以下程序,程序中库函数

)(34)islmain()

main()ower(ch)用以判断ch中的字母是否{inti;s=l;

for(i=l;i<=5;i++)s+=fun();(40)有以下程序printf("%d%d\n”,a,b);

printf("%d\n”,s);#includeVstdio.h>}

)main()

程序运行后的输出结果是{shortc=124;

(有以下程序

A)11c=c;7)

B)21printf("%d\n"、C);#include<stdio.h>

C)6)main()

D)120若要使程序的运行结果为248,解{intx,Y;

(37)有以下程序下划线处填入的是scanf("%2d%ld",&x,&y);pr

%,;

#include<stdio.h>A)»2B)1248C)&0248intf("d\n"x+y)

)

#include<stdlib.h>D)«1

程序运行时输入:程序的运

Main()1234567

二、填空题(每空分,共分)

{int*a.*b,*c;230行结果是【7】。

请将每空的正确答案写在答题卡

a=b=c=(int*)malloc(sizeof(int));

【】至【】序号的横线上,答在试卷在语言中,当表达式值为

*a=l;*b=2,*c=3:115(8)C0

上不得分。时表示逻辑值“假”,当表达式值为

a=b;[8]

时表示逻辑值“真”。

printf("%d,%d,%d\n”,*a,

(1)一个栈的初始状态为空。首先

*b,*c);

将元素5,4,321依次入栈,然后退栈一(9)有以下程序

)

次,再将元素A,B,C,D依次入栈,之后#include<stdio.h>

程序运行后的输出结果是

将所有元素全部退栈,则所有元素退栈main()

A)3,3,3B)2,2,3C)1,2,3D)

(包括中间退栈的元素)的顺序为【1】{inti,n[]={0,0,0,0,0};

1,1,3

for(i=l;i<=4;i++)

(38)有以下程序

(2)在长度为n的线性表中,寻找{n[i]=n[i-l]*3+l;printf("%d",n

#include<stdio.h>

最大项至少需要比较【2】次。[i]);)

main()

)

{ints,t>A=10;doubleB=6;

(3)一棵二叉树有10个度为1的程序运行后的输出结果是[9】o

s=sizeof(A);t=sizeof(B);

结点,7个度为2的结点,则该二叉树共

printf("%d,%d\n”,s,t);

有【3】个结点。(10)以下fun函数的功能是:找

}

出具有N个元素的一维数组中的最小

在VC6平台上编译运行,程序运行

(4)仅由顺序、选择(分支)和重值,并作为函数值返回。请填空。(设

后的输出结果是

复(循环)结构构成的程序是【4】程序。N已定义)

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

intfun(intx[N])

10,6

(5)数据库设计的四个阶段是:需{inti,k=0;

(39)若有以下语句

求分析,概念设计,逻辑设计【5】。for(i=0:i<N;I++)

TypedefstructS

if(x[i]

{intg;charh;}T;

(6)以下程序运行后的输出结果是returnx[k];

以下叙述中正确的是

[6]。)

A)可用S定义结构体变量

#include<stdio.h>

B)可用T定义结构体变量

main()(11)有以下程序

C)S是struct类型的变量

{inta=200,b=010;#include<stdio.h>

D)T是structS类型的变量

int*f(int*p,int*q);{inta(10],*p,*s;C)循环链表是非线性结构

main()for(p=a;p-a<10;p++)scanf("%

D)双向链表是非线性结构

{intm=Ln=2,*r=&m;d",p);

r=f(r,&n);printf("%d\n’‘,for(p=a,s=a;p-a<10;p++)if(*(3)某二叉树共有7个结点,其中叶

*r);p>*s)S=P;子结点只有1个,则该二叉树的深度为

(假设根结点在第1层)

}printf(,,max=%d\n,\[14]);

int*f(int*p,int*q))

A)3B)4C)6D)7

{return(*p>*q)?p:q;}

程序运行后的输出结果是[H](15)以下程序打开新文件f.txt,并(4)在软件开发中,需求分析阶段产

生的主要文档是

调用字符输出函数将a数组中的字符写

(12)以下fun函数的功能是在N入其中,请填空。

A)软件集成测试计划B)软件详细

行M列的整形二维数组中,选出一个最#include<stdio.h>设计说明书

大值作为函数值返回,请填空。(设M,main()

N已定义){[15]*fp;C)用户手册D)软件需求规格说明

intfun(inta[N][M))chara[5]={I,2,3,

{inti,j,row=0,col=0;5'},i;

(5)结构化程序所要求的基本结构不

for(i=0:i<N;I++)fp=fopen("f.txt","w");包括

for(j=0;jfor(i=0;i<5;i++)fputc(a[i],f

A)顺序结构B)GOTO跳转

if(aLi][j]>a[row][col])p);

{row=i;col=j;}fclose(fp);

C)选择(分支)结构D)重复(循环)结

return([12]):)构

)

年月计算机等级考试二级语言

20113C(6)下面描述中错误的是

笔试:文字版(无答案)

(13)有以下程序

A)系统总体结构图支持软件系统的

#include<stdio.h>一、选择题

详细设计

main()

下列关于栈叙述正确的是

{intn[2],i,j;(1)B)软件设计是将软件需求转换为软

for(i=0;i<2;i++)n[i]=0;件表示的过程

A)栈顶元素最先能被删除

for(i=0;i<2;i++)

C)数据结构与数据库设计是软件设

for(j=0;j<2;j++)n[j]=nFiJB)栈顶元素最后才能被删除

计的任务之一

+1;

C)栈底元素永远不能被删除

printf("%d\rT,n[l]);D)PAD图是软件详细设计的表示工

}D)以上三种说法都不对

程序运行后的输出结果是[13]

(7)负责数据库中查询操作的数据库

(2)下列叙述中正确的是

语言是

(14)以下程序的功能是:借助指

A)有一个以上根结点的数据结构不

针变量找出数组元素中最大值所在的位A)数据定义语言

一定是非线性结构

置并输出该最大值。请在输出语句中填

B)数据管理语言

写代表最大值的输出项。B)只有一个根结点的数据结构不一

定是线性结构

#include<stdio.h>C)数据操纵语言

main()

D)数据控制语言B)用C语言编写的源程序不能直接D)name=Lilinum=1001

在计算机上运行

(8)一个教师可讲授多门课程,一门(17)if语句的基本形式是:if(表达式)

课程可由多个教师讲授。则实体教师和C)通过编译得到的二进制目标程序语句,以下关于“表达式”值的叙述中正

课程间的联系是需要连接才可以运行确的是

A)l:l联系B)l:m联系D)在没有安装C语言集成开发环境A)必须是逻辑值B)必须是整数值

的机器上不能运行C源程序生成的.exe

C)m:l联系D)m:n联系文件C)必须是正数D)可以是任意合法

的数值

(9)有三个关系R、S和T如下:(13)以下选项中不能用作C程序合

法常量的是(18)有以下程序

A)1,234B)'123'#include

T

C)123D)'\x7G"main()

(14)以下选项中可用作C程序合法{intx=l1;

实数的是

printf(n%d\nM,++x);

A).le0B)3.0e0.2

则由关系R和S得到关系T的操作)

是C)E9D)9.12E

程序运行后的输出结果是

A)自然连接B)交C)除D)并(15)若有定义语句:int

a=3,b=2,c=l;,以下选项中错误的赋值表A)12B)11C)10D)9

(10)定义无符号整数类为UInt,下面达式是

(19)有以下程序

可以作为类UInt实例化值的是

A)a=(b=4)=3;B)a=b=c+1;

#include

A)-369B)369C)0.369D)整数集合

{123,4,5}C)a=(b=4)+c;D)a=l+(b=c=4);

main()

(11)计算机高级语言程序的运行方(16)有以下程序段

{ints;

法有编译执行和解释执行两种,以下叙

述中正确的是charname[20];

scanf(n%d",&s);

A)C语言程序仅可以编译执行intnum;

while(s>0)

u

B)C语言程序仅可以解释执行scanf(name=%s

{switch(s)

num=%d,,,name;&num);

C)C语言程序既可以编译执行又可

{case1:printf("%d'\s+5);

以解释执行当执行上述程序段,并从键盘输入:

name=Lilinum=1001v回车〉后,name的

case2:printf(M%d1r,s+4);break;

D)以上说法都不对值为

case3:printf("%d”,s+3);

(12)以下叙述中错误的是A)Li

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论