2021-2022年四川省攀枝花市全国计算机等级考试C语言程序设计真题二卷(含答案)_第1页
2021-2022年四川省攀枝花市全国计算机等级考试C语言程序设计真题二卷(含答案)_第2页
2021-2022年四川省攀枝花市全国计算机等级考试C语言程序设计真题二卷(含答案)_第3页
2021-2022年四川省攀枝花市全国计算机等级考试C语言程序设计真题二卷(含答案)_第4页
2021-2022年四川省攀枝花市全国计算机等级考试C语言程序设计真题二卷(含答案)_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

2021-2022年四川省攀枝花市全国计算机等级考试C语言程序设计真题二卷(含答案)学校:________班级:________姓名:________考号:________

一、单选题(20题)1.软件详细设计的主要任务是确定每个模块的()。

A.算法和使用的数据结构B.外部接口C.功能D.编程

2.与“y=(x>0?1:x<0?-1:0)”;的功能相同的if语句是()。A.A.if(x>0)y=1;elseif(x<0)y=1;else=""y="0;

B."x="">0)y=1;elseif(x<0)y=-l;else=""y="0;"

C.y="-l"x="">O)y=1;elseif(x=-0)y=0;elsey=-l;

D.y=0;if(x>=0)if(x>=0)y=1;elsey=-l;

3.

4.有以下程序:#include<stdio.h>intfun(){staticintx=1;x*=2;returnx;}main(){inti,s=1;for(i=1;i<=3;i++)s*=fun();printf(“%d\n”,s);}程序的运行结果是()。

A.10B.30C.0D.64

5.在下列给出的表达式中,与while(E)中的(E)不等价的表达式是()。A.(!E==0)B.(E>0||E<0)C.(E==0)D.(E!=0)

6.有以下程序

A.741B.963C.852D.87542l

7.具有10个叶子结点的二叉树中有()个度为2的结点。

A.8B.9C.10D.11

8.在一个源文件中定义的全局变量的作用域为:()

A.本程序的全部范围B.本函数的全部范围C.从定义该变量的位置开始到本文件结束D.以上说法都不正确

9.下列选项中,能够满足“若字符串sl等于字符串s2,则执行ST”要求的是()。

A.if(stremp(s2,s1)==0)ST;

B.if(s1==s2)ST;

C.if(strcpy(sl,s2)==l)ST;

D.if(sl,s2==O)ST;

10.参加百年阿里培训的n位同学结伴去西湖旁边为游人指路,两人一组,他们打算先让体重之和恰好为102公斤的同学一组,请给出一个算法找到这样的组合,或者确定他们中不存在这样的组合,其中最优的算法时间复杂度为?(假设体重均为整数)()

A.O(log(n))B.O(n)C.O(nlog(n))D.O(n^2)

11.以下能正确定义一维数组的选项是()。

A.inta[5]=(0,1,2,3,4,5);

B.chara[]={0,1,2,3,4,5);

C.chara={'A','B','C'};

D.inta[5]="0123";

12.以下不正确的叙述是A.A.在C程序中,逗号运算符的优先级最低

B.在C程序中,APH和aph是两个不同的变量

C.若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变

D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

13.

14.设有以下语句,其中不是对a数组元素的正确引用的是:_____(其中0≤i<10)inta[10]={0,1,3,4,5,6,7,8,9,},*p=a;

A.a[p-a]B.*(&a[i])C.p[i]D.*(*(a+i))

15.若在线性表中采用折半查找法查找元素,该线性表应该()A.元素按值有序B.构采用顺序存储结C.元素按值有序且采用顺序存储结构D.元素按值有序且采用链式存储结构

16.

17.下列关于函数的叙述中正确的是()。A.A.每个函数都可以被其他函数调用(包括main函数)

B.每个函数都可以被单独编译

C.每个函数都可以单独运行

D.在一个函数内部可以定义另一个函数

18.以下程序是用来计算两个非负数之间的最大公约数:我们假设x,y中最大的那个数的长度为n,基本运算时间复杂度为O(1),那么该程序的时间复杂度为()A.O(1)B.O(logn)C.O(n)D.O(n^2)

19.面向对象的设计方法与传统的面向过程的方法有本质不同,它的基本原理是()。

A.模拟现实世界中不同事物之间的联系

B.强调模拟现实世界中的算法而不强调概念

C.使用现实世界的概念抽象地思考问题从而自然地解决问题

D.不强调模拟现实世界中的算法而强调概念

20.若有定义“inta;longb;doublex,y;”,则以下选项中正确的表达式是()。

A.a=x<>yB.a%(int)(x-y)C.(a*y)%bD.y=x+y=x

二、2.填空题(20题)21.注释一般分为序言性注释和______注释。

22.在面向对象方法中,类之间共享属性和操作的机制称为______。

23.数据库的逻辑模型设计阶段的任务是将______转换成关系模式。

24.单元测试又称模块测试,一般采用【】测试。

25.以下程序的输出结果是【】。

main()

{

intarr[]={30,25,20,15,10,5},*p=arr;

p++;

printf("%d\n",*(p+3));

}

26.数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、______和处理过程。

27.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为【】。

28.以下程序运行后的输出结果是【】。

#include<stdio.h>

main()

{inti,m=0,n=0,k=0;

for(i=9;i<=11;i++)

switch(i/10)

{case0:m++;n++;break;

case10:n++;break;

default:k++;n++;

}

printf("%d%d%d\n",m,n,k);

}

29.设Y是int型变量,请写出判断Y为奇数的关系表达【】。

30.下列程序的运行结果是______。

#definePOW(r)(r)*(r)

main()

{intx=3,y=2,t;

t=POW(x+y);

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

}

31.以下程序的运行结果是【】。

main()

{char*k="aeiou";

for(;*k;k++)printf("%c",*k);

}

32.下列语句的输出结果是【】。

chara=3;printf("%d,%o,%x,%u\n",a,a,a,a);

33.模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块。其中【】的作用是模拟被测试模块的下层模块。

34.【】是从二维表列的方向进行的运算。

35.面向对象的模型中,最基本的概念是对象和______。

36.下面程序的输出结果是【】。

#include<stdio.h>

main()

{char*p={"BOOL""OPK","H","SP"};

inti;

for(i=3,i>=0;i--,i--)printf("%",*p[i]);

printf("\n");

}

37.阅读程序:

main()

{charstrl[]="howdoyoudo",str2[10];

char*p1=strl,*p2=str2;

scanf("%s”,p2);

printf("%s”,p2);

printf("%s\n",p1);

}

运行上面的程序,输入字符串HOWDOYOUDO则程序的输出结果是【】。

38.有如下图所示的双链表结构,请根据图示完成结构体的定义:

structaa

{intdata;

【】}node;

39.算法复杂度主要包括时间复杂度和【】复杂度。

40.黑盒测试是从【】观点的测试。

三、1.选择题(20题)41.有以下说明和定义语句structstudent{intage;charnum{8};};structstudentstu[3]={{20,“200401”},{21,“200402”),{19,“200403”}};structstudent*p=stu;以下选项中引用结构体变量成员的表达式错误的是A.(p++)->numB.p->numC.(*p).numD.stu[3].age

42.下列循环体的执行次数是()。

#include<stdio.h>

main()

{inti,j;

for(i=0,j=1;i<j+1;i+=1,j--)

phntf("%d\n",j);

}

A.3B.2C.1D.0

43.以下叙述中错误的是______。A.用户所定义的标识符允许使用关键字

B.用户所定义的标识符应尽量做到“见名知意”

C.用户所定义的标识符必须以字母或下划线开头

D.用户定义的标识符中,大、小写字母代表不同标识

44.以下程序的输出结果是()#include<stdio.h>main(){inta,b;for(a=1,b=1,a<=50;a++){if(b>=10)break;if(b%2==1){b+=2;continue}b+=2;}printf("%d\n",a);}

A.4B.5C.6D.7

45.有以下程序

#include<stdio.h>

voidfun(char*t,char*s)

{while(*t!=0)t++;

while((*t++=*s++)!=0);

}

main()

{charss[10]="acc",aa[10]="bbxxyy";

fun(ss,aa);printf("%s,%s\n",ss,aa);

}

程序的运行结果是

A.accxyy,bbxxyy

B.acc,bbxxyy

C.accxxyy,bbxxyy

D.accbbxxyy,bbxxyy

46.以下程序的输出结果是()main(){inta=-1,b=4,k;k=(++a<=0)&&!(b--<=0);printf("%d%d%d\n",k,a,B);}

A.104B.004C.103D.003

47.已知i、j、k为int型变量,若要从键盘输入2、3、4<CR>,使I、j、k的值分别为2、3、4,

A.scanf("%3d,%3d,%3d",&i,&j,&k);

B.scanf("%d,%d,%d",&i,&j,&k);

C.scanf("%d%d%d",&i,&j,&k);

D.seanf("i=%dj=%d,k=%d",&i,&j,&k);

48.C语言中,文件组成的基本单位为()。

A.记录B.数据行C.数据块D.字符序列

49.以下选项中不属于字符常量的是

A.′C′B.′′C′′C.′\xCC′D.′\072′

50.索引属于()。

A.模式B.内模式C.外模式D.概念模式

51.以下程序的输出结果是______。#include<stdio.h>#defineSQR(x)x*xmain(){inta,k=3;a=++SQR(k+1);printf((“%d\n”,a);}A.8B.9C.17D.20

52.下列程序的输出结果是______。main(){chara[10]-(9,8,7,6,5,4,3,2,1,0},*p=a+5;printf("%d",*--p);}

A.非法B.a[4]的地址C.5D.3

53.栈和队列的共同点是()。

A.都是先进先出B.都是先进后出C.只允许在端点处插入和删除元素D.没有共同特点

54.以下不能对二维数组a进行正确初始化的语句是

A.inta[2][3]={0};

B.inta[][3]={{1,2},{0}};

C.inta[2)[3]={{1,2},{3,4},{5,6}};

D.inta[][3]={1,2,3,4,5,6};

55.在关系数据库中,用来表示实体之间联系的是

A.树形结构B.网状结构C.线性表D.二维表

56.下述程序段的执行结果是()#include<stdio.h>voidmain(){intx;for(x=1;x<=100;x++)if(++x%3==0)if(++x%4==0)if(++x%7==0)printf("%d",x);}

A.75B.76C.77D.84

57.有如下程序main(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf("%f\n",y);}该程序的输出结果是

A.0.000000B.0.250000C.0.500000D.1.000000

58.设有定义:intk=1,m=2;floatf=7;则以下选项中错误的表达式是()。

A.k=k>=kB.-k++C.k%int(f)D.k>=f>=m

59.下面选项中不属于面向对象程序设计特征的是()。

A.继承性B.多态性C.类比性D.封闭性

60.下列常数中,不合法的C常量是()

A.-0x3b1B.123e+2.3C.'}'D.6e+7

四、选择题(20题)61.以下不能将s所指字符串正确复制到t所指存储空间的是()。

A.do{*t++=*8++;}while(*s);

B.for(i=0;t[i]=s[i];i++);

C.while(*t=*s){t++;s++;}

D.for(i=0,j=0;t[i++]=s[j++];);

62.若变量a、b、x、i都已正确定义并赋值,则以下符合C语言语法的表达式是()。

A.a+=a-=(b=4)*(a=3)B.x%(-3);C.a=a*3=2D.y=float(i)

63.阅读以下程序:

该程序在编译时产生错误,原因是()。

A.定义语句出错,Case是关键字,不能用作用户自定义标识符

B.定义语句出错,printF不能用作用户自定义标识符

C.定义语句无错,sCanf不能作为输入函数使用

D.定义语句无错,printf不能输出Case的值

64.以下选项中不合法的标识符是()。

A.&aB.FORC.pfintD.00

65.数据库管理系统是()。

A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译系统D.一种操作系统

66.如已定义X和Y为double类型,则表达式X=1,y=x+5/2的值是()。

A.2B.3.0C.3D.3.5

67.软件测试的目的是()。

A.评估软件可靠性B.发现并改正程序中的错误C.改正程序中的错误D.发现程序中的错误

68.有以下程序:

程序运行后的输出结果是()。

A.let=4B.m=2C.m=6D.m=5

69.合法的main函数命令参数形式是()。

A.main(inta,char*c[])

B.main(intarc,char**arv)

C.main(intargc,char*argv)

D.main(intargv,char*argc[])

70.已知longi=32768;执行语句printf(“%d”,i);屏幕显示()。

A.-1B.-32768C.1D.32768

71.

72.

73.以下语句的执行结果是()。

intm=0,s=1;

do{

s+=m++;

}while(m<6);

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

A.17B.16C.15D.18

74.有以下程序程序运行后的输出结果是()。

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

75.

76.以下叙述中错误的是()。

A.改变函数形参的值,不会改变对应实参的值

B.函数可以返回地址值

C.可以给指针变量赋一个整数作为地址值.

D.当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL

77.

78.以下能正确定义一维数组的选项是A.intnum[];

B.#defineN100intnum[N];

C.intnum[0..100];

D.intN=100;intnum[N];

79.有下列程序

voidfunc1(inti);

voidfunc2(inti);

charst[]="hello,friend!";

voidfunc1(inti)

{printf("%c",st[i]);

if(i<3){i+=2;func2(i);}

}

voidfunc2(inti)

{printf("%c",st[i]);

if(i<3){i+=2;func1(i);}

}

main()

{inti=0;func1(i);

printf("\n");

}

执行后的输出结果是

A.helloB.hel

C.hloD.hlm

80.

五、程序改错题(1题)81.下列给定程序中,函数fun()的功能是:根据输人的三条边长(整形),判断能否构成三角形;构成的是等边三角形还是等腰三角形。若能构成等边三角形函数,返回3;若能构成等腰三角形函数,返回2;若构成=三角形函数,返回l;若不能构成三角形函数返回0。请修改函数fun()中的错误,得出正确的结果。注意:不要改动main()函数,不能增行或减行,也不能更改程序的结构。试题程序:

六、程序设计题(1题)82.使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。编写函数fun(),其功能是删除字符串中所有的*号。编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的内容为“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是“ABCDEFG”。注意:部分源程序给出如下。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花括号中填入你编写的若干语句。试题程序:#include<conio.h>#include<stdio.h>voidfun(char*a){}voidmain(){ chars[81]; printf(“Enterastring:\n”); gets(s); fun(s); printf(“Thestringafterdeleted:\n”); puts(s);}

参考答案

1.A解析:从软件开发的工程化观点来看,在使用程序设计语言编制程序以前,需要对所采用算法的逻辑关系进行分析,设计出全部必要的过程细节,并给予清晰的表达。详细设计的任务就是要决定各个模块的实现算法,并精确表达出这些算法。本题正确答案为选项A。

2.By=(x=)071:x<0?-1:0)中有两个三目运算符,因此按从右到在的顺序运算,可写成y=(x>071:(x<0?-1:0)),故选择8选项。

3.C

4.D本题中静态局部变量X,在静态存储区内分配存储单元,在程序整个运行期间都不释放。在main函数中,执行for循环,第1次循环,变量s的值为2;第2次循环,函数的返回值为4,所以变量s的值为8;第3次循环,函数的返回值为8,所以s的值为64。故本题答案为D选项。

5.B在while(E)中,表达式E可以是C语言中任意合法的条件表达式,但不能为空,由它来控制循环体是否执行。在选项8中表达式E>0||E<0是一个逻辑表达式。

6.C在for循环中,当y的值为9、6或3时,执行输出语句,输出表达式“——y”的值。y先自减1,然后再输出y的值。

7.B

8.C

9.Astrcmp(char*,char*),函数strcmp用于比较两个字符串的长度,长者为大,若字符个数也一样,则从左至右依次比较相同位上的字符,字符大小按ASCIl表值计算,直到最后一个字符,若还相同,则两个字符串相等,返回值0。选项A中if(strcmp(s2,sl)==0)ST,若s2等于sl,则返回值0,0等于0,所以逻辑表达式strcmp(s2,sl)==0为真,执行ST。

10.B

11.B数组1标从0开始,A选项中所赋值的个数超过了数组的长度;C选项中定义a为字符型变量,而不是数组,赋值错误;D选项中,整型数组不能赋字符串。

12.D解析:在C语言所有的运算符中,逗号运算符的优先级最低。C语言中区分大小写,所以APH和aph是两个不同的变量。赋值表达式a=b表示将b的值付给a,而b本身的值保持不变;通过键盘可以向计算机输入允许的任何类型的数据。选项D)中当从键盘输入数据时,对于整型变量可以输入整型数值和字符,对于实型变量可以输入实型数值和整型数值等。

13.D\r\n

14.D解析:观察程序可知,a实际上就是数组a的首地址,所以“*(a+i)”表示的就是数组a中的第i个元素的值,进而,我们可以知道*(*(a+i))必然不是对a数组元素的正确引用。

15.C

16.A

17.B在C语言中,函数定义是平行的,函数不能嵌套定义,即函数之间没有从属关系。虽然函数之间可以相互调用,但main函数不能被调用,选项A)错误;C程序从main函数开始执行,当main数执行完毕时,整个程序就结束了。C程序的执行必须从main函数开始,选项C)选项错误;函数不能嵌套定义,选项D)错误。

18.B

19.C\n面向对象的设计方法的基本原理是:使用现实世界的概念抽象地思考问题从而自然地解决问题。它虽强调模拟现实世界中的概念而不强调算法,但是它鼓励开发者在软件开发的过程中从应用领域的概念角度去思考。

\n

20.BC语言中没有“<>”运算符,所以A选项错误。运算符“%”的左右两个操作数必须为整型数据,所以B选项正确。表达式“a*y”的结果为double型,所以C选项错误。不能将值赋给像“x+y”这样的表达式,所以D选项错误。故本题答案为B选项。

21.功能性功能性解析:注释一般分为序言性注释和功能性注释。序言性注释通常位于每个程序的开头部分,给出程序的整体说明;功能性注释一般嵌在源程序体之中,主要描述其后的语句或程序做什么,

22.继承继承

23.E-R图E-R图解析:数据库逻辑设计的任务是将概念模型进一步转化成相应的数据模型。而E-R图是主要的概念模型,因此数据库的逻辑设计的主要工作是将E-R图转换成关系模式。

24.白盒法白盒法

25.1010解析:整型指针最初被赋的值是数组arr的头指针,即指向数组的第一个元素30,p++后,指针指向数组的下一个元素,即*p=arr[1]=25,在执行*(p+3)时,则相当于a[1+3],即10。因此,输出应为100。

26.数据存储数据存储

27.消息消息解析:在面向对象技术中,主要用到对象(object)、类(class)、方法(method)、消息(message)、继承(inheritance)、封装(encapsulation)等基本概念。其中消息是用来请求对象执行某一处理或回答某些信息的要求。

28.132132解析:在程序中,i从9开始循环,当i=9时,执行case0后的语句m++;n++;此时m=1,n=1,然后执行break,跳出循环;当i=10时,执行detault后的语句k++;n++;此时k=1,n=2;当i=11时,再执行default后的语句,k=2,n=3。此时,m=1,n=3,k=2。输出结果为132。

29.Y%2=1或Y%2!=0Y%2=1或Y%2!=0解析:判断变量是否为奇数可以用变量与2取模,判断结果是为1或不为0。本题具体做法如下:Y%2=1或Y%2!=0。

30.2525解析:本题考查带参数的宏的定义及相关运算。运算过程为:t=POW(x+y)=(2+3)*(2+3)=25。

31.aeiou

32.31371f3131,37,1f,31解析:此题考查了printf函数的格式字符,题中d是以十进制形式输出,o是以八进制形式输出,x是以十六进制形式输出,u以不带符号的十进制数输出。

33.承接模块承接模块解析:进行模块测试时,应为每个被测试的模块另外设计两类模块:驱动模块和承接模块。其中驱动模块的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果;承接模块的作用是模拟被测试模块的下层模块。

34.投影投影解析:在关系模型的数据语言中,一般除了运用常规的集合运算,(并、交,差、笛卡尔积等)外,还定义了一些专门的关系运算,如投影、选择、连接等。投影是从二维表的列方向上进行的运算。

35.类类

36.SO

37.HOWhowdoyoudo

38.structaa*lhead*rchild;structaa*lhead,*rchild;解析:结构体对链表的定义。

39.空间空间解析:程序在计算机上运行时所耗费的时间由程序运行时所需输入的数据总量、对源程序进行编译所需时间、计算机执行每条指令所需时间、程序中的指令重复执行的次数等决定。习惯上常常把语句重复执行的次数作为算法运行时间的相对量度,称作算法的时间复杂度。算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度。

40.用户用户解析:黑盒测试又称为功能测试,黑盒测试是把程序看作一个黑盒子,完全不考虑程序内部的结构和处理过程。测试者只考虑该程序输入和输出的关系,或只考虑程序的功能。黑盒测试是一种从用户观点出发的测试。

41.D本题考核的知识点是结构体数组元素成员的引用。结构体变量也有地址,因此可以把它的地址赋值给一个指针变量,然后通过该指针变量来引用结构体的成员,选项A和选项B就是通过指针变量来引用结构体的成员,故选项A和选项B都正确,也可以通过结构体数组元素的成员引用,选项C和选项D属于这种情况,而在选项D中stu[3].age不正确,因为结构体数组stu共有三个元素,其下标应该为0,1,2.所以,4个选项中选项D符合题意。

42.C解析:本题考查for循环。第一次循环前先判断循环条件,此时i=0,j=1,i<j+1成立,循环第一次;第二次循环前先判断循环条件,此时i=1,j=0,(j--是先使用i的值再减1),i<j+1不成立,结束循环。

43.A解析:C语言规定标识符只能由字母、数字和下划线三种符号组成,而且第一个字符必须是字母或下划线。大写字母和小写字母被认为是两个不同的字符,用户在定义标识符时应尽量做到“见名知意”,且不允许使用关键字作标识符。

44.C

45.D解析:本题中fun函数实现丁字符串函数str-eat的功能,将字符串aa连接到字符串ss的末尾。调用fun函数时,形参t和s分别指向了字符串ss和aa,然后通过一个while循环使t指向字符串ss的结束符的位置,第二个while循环将字符串aa中的字符(包括结束符'\\0')逐个复制到字符串ss的末尾处。

46.C

47.B解析:scanf函数的调用形式是:scanf(格式字符串;输入项地址表)。其中,“格式字符串”是要输入的变量的格式符;“输入项地址表”是要输入的变量的地址。若在格式符中插入了其他字符,则在输入时要求按一一对应的位置原样输入这些字符,其中的逗号也必须输入。

48.D解析:C语言处理文件的方法是将文件以数据流的形式处理,不是将文件作为一个结构集合来处理,所以,C语言中文件的组织方式是无结构的字符序列方式。

49.B解析:在C语言程序中,用单引号把一个字符或反斜线后跟一个特定的字符括起来表示一个字符常量。选项A)、C)和D)为正确的字符常量,而选项B)是用双引号括起来的字符,表示一个字符串常量。

50.B解析:内模式(InternalSchemA)又称物理模式(PhysicalSchemA),它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash等存取方式与存取路径。数据库系统的数据具有高共享性和低冗余性,但不能完全避免数据冗余;数据的一致性是指在系统中同一数据的不同出现应保持相同的值。

51.B

52.C解析:本题中char*p=a+5;即相当于p;&a[5],而-p,是先要减1,则printf语句要输出的值就是a[4]。

53.C解析:栈和队列都是操作受限制的线性表,只允许在端点插入和删除。不同点是:栈只允许在表的一端进行插入和删除操作,而队列允许在表的一端进行插入操作,而在另一端进行删除操作。

54.C解析:关于二维数组的初始化,我们需要掌握如下方法:①所赋初值个数与数组元素的个数相同;②所赋初值行数少于数组行数时,系统将自动给后面各行的元素补初值0;③在给二维数组赋初值时可以不用行花括号对。选项C)应该是inta[3][2]={{1,2},{3,4},{5,6,}};

55.D解析:数据库中的关系模型是采用二维表来表示实体与实体之间的联系。

56.C

57.C解析:该题目测验考生对if...elseif结构的理解,比较简单。x的值满足x<10.0的关系,所以程序将执行y=1.0/x;语句,y的值应该等于0.5。最后,用printf函数输出时,%f的输出格式为小数点后保留6位。

58.C解析:A、D选项是关系运算表达式,在C语言中,只要关系运算符两边是合法的表达式就可以了。C选项中,%只能对整型进行运算,其中对f进行了强制类型转换,但是转换的表达式错了,应为:(int)(f)。

59.C解析:面向对象程序设计的特征有以下几点:分类性、继承性、封装性、多态性、模块性等。

60.B

61.Ado{*t++=}S++;}while(*S);不能因为当*s=’、0。时,while(*s)跳出循环,这样字符串结束标志’、0’没有复制给}t,造成}t不完整。注意,*t++=*s++是先执行t=*s,然后才进行t=t+1,s=s+1。B、C、D都能将。\0’复制过去

62.A取余运算符%两边都应是正数,赋值语句左边必须是变量,不能是表达式,强制转换语句强制类型应加括号,而非加在变量上。

63.A标识符不能与c编译系统已经预定义的、具有特殊用途的保留标识符(即关键字)同名,否则程序在编译时会出现错误。题目源程序中使用了已经预定义的关键字case,所以将出现错误。

64.AC语言中标识符由字母、下划线、数字组成,且开头必须是字母或下划线。另外,关键字不能作为标识符。因为C语言中区分大小写,所以B选项中的。FOR。可以作为标识符来用。A选项中含有非法字符&,所以选择A。

65.B数据库管理系统是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等,是一种在操作系统支持下的系统软件,因此本题答案为B)。

66.B题目中定义变量x和y为双精度double类型,根据给定算数表达式的优先级应先计算5/2,结果为2,将值代入后,由x和y的数据类型得出y为3.0。整个逗号表达式的值为后面y=x+5/2的值,所以选择B)。

67.D软件测试是为了发现错误而执行程序的过程,测试要以查找错误为中心,而不是为了演示软件的正确功能,也不是为了评估软件或改正错误,因此本题答案为D)。

68.C第一次外循环i的值为l,第一次内循环j的值为3,不满足条件执行in}=i}j即m的值为3;第二次j的值为2,不满足条件执行m·=i*j,即m的值为6;第三次j的值为1,不满足条件执行nl*=i*j,即m的值仍为6。第二次外循环i的值为2,j的值为3,满足条件,执行break语句,跳出循环。

69.C在C语言中,main函数也可以有参数,例如,main(intar90,char*argv),argc是指字符串的指针数组,而其他几项表达不正确。

70.D整型的数据占4个字节,即-2147483648~2147483648,32768在其表达的范围之内,所以原样输出。

71.D

72.A

73.B

74.A调用f(a,b)函数返回3,调用f(a,c)函数返回6,因此外层调用f(f(a,b),“a,c));,即调用f(3,6)函数返回9,故本

温馨提示

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

最新文档

评论

0/150

提交评论