2022年安徽省六安市全国计算机等级考试C语言程序设计真题二卷(含答案)_第1页
2022年安徽省六安市全国计算机等级考试C语言程序设计真题二卷(含答案)_第2页
2022年安徽省六安市全国计算机等级考试C语言程序设计真题二卷(含答案)_第3页
2022年安徽省六安市全国计算机等级考试C语言程序设计真题二卷(含答案)_第4页
2022年安徽省六安市全国计算机等级考试C语言程序设计真题二卷(含答案)_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

2022年安徽省六安市全国计算机等级考试C语言程序设计真题二卷(含答案)学校:________班级:________姓名:________考号:________

一、单选题(20题)1.算法应该是()

A.程序B.问题求解步骤的描述C.要满足五个基本特性D.B和C

2.

3.下列字符数组初始化语句中,不正确的是()。A.A.charc[]='goodmorning';

B.charc[20]="goodmorning";

C.charc[]={'a','b','c','d');

D.charc[]={"ffgoodmorning"};

4.设二叉树的中序序列为BCDA,前序序列为ABCD,则后序序列为()。

A.CBDAB.DCBAC.BCDAD.ACDB

5.一个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是()。

A.edcbaB.decbaC.dceabD.abcde

6.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用()符号作为分隔符。

A.空格或逗号B.逗号或回车C.逗号或分号D.空格或回车

7.向一个栈顶指针为HS的链式栈中插入一个s所指的结点时,则执行()。

A.HS->next=s

B.S->next=HS->nextHS->next=s

C.s->next=HSHS=s

D.S->next=HSHS=HS->next

8.若有如下形式的函数:intfun(inta[],int*p,intn){…}调用函数之前需要对函数进行声明,则以下选项中错误的是()。

A.intfun(int,int,int);

B.intfun(inta[],int*p,intn);

C.intfun(inta[],int*,int);

D.intfun(int[],int*,int);

9.在一个链式队列中,假设f和r分别为队头和队尾指针,则删除结点的运算是()。

A.r=f->nextB.r=r->nextC.f=f->nextD.f=r->next

10.要求通过while循环不断读入字符,当读入字母N时结束循环,若变量已正确定义,下列正确的程序段是()。

A.while((ch=getchar())!='N')printf("%c",ch);

B.while(ch=getchar()!='N')printf("%c",ch);

C.while(ch=getchar()=='N')printf("%c",ch);

D.while((ch=getchar())=='N')printf("%c",ch);

11.在面向对象设计中,对象有很多基本特点,其中“从外面看只能看到对象的外部特性,而对象的内部对外是不可见的。”这一性质指的是对象的

A.分类性B.标识惟一性C.多态性D.封装性

12.有一个100×90的稀疏矩阵,非0元素有10,设每个整型数占2个字节,则用三元组表示该矩阵时,所需的字节数是()。

A.20B.66C.18000D.33

13.有以下程序:

A.CDEFB.ABEFC.ABCDD.CDAB

14.以下程序的输出结果是()。

f(intb[],intm,intn)

{inti,s=0;

for(i=m;i<n;i=i+2)s=s+b[i];

returns;

}

voidmain()

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

x=f(a,3,7);

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

}A.A.10

B.18

C.8

D.15

15.

16.函数调用:strcat(strcpy(str1,str2),str3)的功能是______。

A.将串str1复制到串str2中后再连接到串str3之后

B.将串str1连接到串str2之后再复制到串str3之后

C.将串str2复制到串str1中后再将串sir3连接到串str1之后

D.将串str2连接到串str1之后再将串str1复制到串str3中

17.已知各变量的类型说明如下则以下符合C语言语法的表达式是()。A.a+=a-=(b=4)*(a=3)B.a=a*3=2C.x%(-3)D.y=f1oat(i)

18.

19.有以下程序:#include<stdio.h>#defineSUB(a)(a)-(a)main(){inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%d\n”,d);}程序的运行结果是()。

A.0B.-12C.-20D.10

20.以下程序拟实现计算sum=1+1/2+1/3+…+1/50。#include<stdio.h>main(){inti;doublesum;sum=1.0;i=1;do{i++-;sum+=1/i;}while(i<50);printf(“sum=%lf\n”,sum);}程序运行后,不能得到正确结果,出现问题的语句是()。

A.sum+=1/i;B.while(i<50);C.sum=1.0D.i++;

二、2.填空题(20题)21.下面程序有两个printf语句,如果第一个printf语句输出的是194,则第二个printf语句的输出结果是【】。

main()

{inta[10]={1,2,3,4,5,6,7,8,9,0},*p;

p=a;

printf("%x\n",p);

printf("%x\n,p+9);

}

22.若有说明chars1[]="Thatgirl",s2[]="isbeautiful";则使用函数strcmp(s1,s2)后,结果是______。

23.若有下列定义和语句:

char*s1="12345",*s2="1234";

printf("%d\n",strlen(strcpy(s1,s2)));

则输出结果为______。

24.以下程序的运行结果是______。

#include<stdio.h>

main()

{intfun();fun();}

fun()

{staticinta[3]={0,1,2};

inti;

for(i=0;i<3;i++)a[i]+=a[i];

for(i=0;i<3;i++)printf("%d,",a[i]);

pfintf("\n",);}

25.长度为n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为【】。

26.某二叉树中度为2的结点有18个,则该二叉树中有【】个叶子结点。

27.软件维护活动包括以下几类:改正性维护、适应性维护、【】维护和预防性维护。

28.数据结构包括数据的逻辑结构、数据的【】以及对数据的操作运算。

29.程序测试分为静态分析和动态测试。其中【】是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。

30.在结构化分析使用的数据流图(DFD)中,利用【】对其中的图形元素进行确切解释。

31.设一棵完全二叉树共有700个结点,则在该二叉树中有【】个叶子结点。

32.数据结构分为逻辑结构与存储结构,线性链表属于【】。

33.在长度为n的线性表中查找一个表中不存在的元素,需要的比较次数为【】。

34.数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为【】。

35.有以下定义和语句,则sizeof(a)的值是【】,而sizeof(a.share)的值是【】。

structdate

{intday;

intmouth;

intyear;

union{intshare1;

floatshare2;

}share;

}a;

36.算法的复杂度主要包括时间复杂度和______复杂度。

37.以下程序调用函数swap将指针s和t所指单元(a和B)中的内容交换,请填空。main(){inta=10,b=20,*s,*t;s=&a;t=&b;()printf("%d%d",a,B);}swap(int*ss,int*tt){intte;te=*ss;*ss=*tt;*tt=te;}

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

intf(inta[],intn)

{if(n>=1)returnf(a,n-1)+a[n-1];

elsereturn0;

}

main()

{intaa[5]=(1,2,3,4,5),s;

s=f(aa,5);printf("%d\n",s);

}

39.设有定义:floatx=123.4567;,则执行以下语句后的输出结果是()。printf("%f\n",(int)(x*100+0.5)/100.0);

40.下列程序段的输出结果是【】。

intn='c';

switch(n++)

{default:printf("error");break;

case'a':

case'A':

case'b':

case'B':printf("good");break;

case'c':case'C':printf("pass");

case'd':case'D':printf("warn");

}

三、1.选择题(20题)41.有以下函数intaaa(char*s){char*t=s;while(*t++);t--;return(t-s);}以下关于aaa函数的功能的叙述正确的是A.求字符串s的长度B.比较两个串的大小C.将串s复制到串tD.求字符串s所占字节数

42.若变量已正确定义并赋值,以下符合C++语言语法的表达式是()。

A.a:=b+1B.a=b=c+2C.int18.5%3D.a=a+7=c+b

43.下面程序的运行结果是()。#include<stdio.h>main(){inty=10;do{y--;}while(--y);printf("%d\n",y--);}

A.-1B.1C.8D.0

44.以下程序的运行结果是#defineMAX(A,B)(A)>(B)?(A):(B)#definePRINT(Y)printf("Y=%d\t",Y)main(){inta=1,b=2,c=3,d=4,t;t=MAX(a+b,c+d);PRINT(t);}

A.Y=3B.存在语法错误C.Y=7D.Y=0

45.以下选项中可作为C语言合法常量的是______。

A.-80B.-80C.-8e1.0D.-80.0e

46.已知下面的程序段,正确的判断是______。#defineA3#defineB(A)((A+1)*a)inta=3;......X=3*(A+B(7));

A.程序错误,不允许嵌套定义B.X=93C.X=81D.程序错误,宏定义不允许有参数

47.以下不合法的用户标识符是______。A.j2KEYB.DoubleC.4dD._8_

48.十六进制数FF.1转换成十进制数是()

A.255.0625B.255.125C.127.0625D.127.125

49.有以下程序:voidswap1(intC[]){intt;t=c[0];c[0]=C[1];c[1]=t;}voidswap2(intc0,intc1){intt;t=c0;c0=c1;c1=t;}main(){inta[2]={3,5},b[2]={3,5);swapl(a);swap2(b[0],b[1]);printf("%d%d%d%d\n",a[0],a[1],b[0],b[1]);}其输出结果是

A.5353B.5335C.3535D.3553

50.下列选项中不合法的十六进制数是()。

A.OxffB.OX11C.OxlgD.OXabc

51.将E-R图转换到关系模式时,实体与联系都可以表示成________。

A.属性B.关系C.键D.域

52.下列哪个是面向对象程序设计不同于其他语言的主要特点?

A.继承性B.消息传递C.多态性D.静态联编

53.若变量已正确定义,有以下程序段

inta=3,b=5,c=7;

if(a>b)a=b;c=a;

if(c!=a)c=b;

printf("%d,%d,%d\n",a,b,c);

其输出结果是

A.程序段有语法错B.3,5,3C.3,5,5D.3,5,7

54.下面四个选项中,均是不正确的八进制数或十六进制数的选项是

A.0160x8f018

B.0abc0170xa

C.010-0x110x16

D.0a127ff-123

55.下列叙述中,不属于软件需求规格说明书的作用的是()

A.便于用户,开发人员进行理解和交流

B.反映出用户问题的结构,可以作为软件开发工作的基础和依据

C.作为确认测试和验收的依据

D.便于开发人员进行需求分析

56.若有定义"int*p[3];",则以下叙述中正确的是()。

A.定义了一个基类型为int的指针变量p,该变量具有3个指针

B.定义了一个指针数组p,该数组含有3个元素,每个元素都是基类型为int的指针

C.定义了—个名为*p的整型数组,该数组含有3个int类型元素

D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有3个int类型元素

57.软件开发离不开系统环境资源的支持,其中必要的测试数据属于A.硬件资源B.通信资源C.支持软件D.辅助资源

58.下面程序的输出结果是_______。#defineP1(x)printf(x)main(){chard[]="p";P1(d);P1("d");}

A.pdB.d"d"C.pdD.p"d

59.下列关于栈的叙述正确的是()。

A.在栈中只能插入数据B.在栈中只能删除数据C.栈是先进先出的线性表D.栈是先进后出的线性表

60.有以下程序#include<string.h>structSTU{inthum;floatTotalScore;};voidf(structSTUp){structSTUs[2]={{20044,550},{20045,537}};p.num=s[1].num;p.TotalScore-s[1].TotalScore;}main(){structSTUs[2]-{{20041,703},{20042,580}};f(s[0]);printf("%d%3.0f\n",s[0].num,s[0].TotalScore);}程序运行后的输出结果是

A.20045537B.20044550C.20042580D.20041703

四、选择题(20题)61.

62.以下程序的输出结果是()。

main()

{inta=4,b=5,c=0,d;

d=!a&&!b║!c;

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

}

A)1B)0

C)非0的数D)-1

63.结构化程序所要求的基本结构不包括()。

A.顺序结构B.选择(分支)结构C.GOT0跳转D.重复(循环)结构

64.若有定义语句:

65.

66.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。

A.-369B.369C.0.369D.整数集合11,2,3,4,51

67.

68.已有定义:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判断e中的字符是否为大写字母的表达式是()。

A.isupper(c)

B.A<=c<=Z

C.A<=cc<=Z

D.c<=(z-32)(a-32)<=c

69.下列排序方法中,最坏情况下比较次数最少的是()。

A.冒泡排序B.简单选择排序C.直接插入排序D.堆排序

70.在长度为n的有序线性表中进行二分法查找,最坏情况下需要比较的次数是()。A.O(n)B.0(n2)C.O(log2n)D.O(nlog2n)

71.有以下程序:

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

A.B,C,D,E,B.A,B,C,D,C.C,D,E,F,D.B,D,F,H,

72.

73.

74.有以下程序main(){intc=35;printf("%d\n",c&c);}程序运行后的输出结果是______。

A.0B.70C.35D.1

75.

76.

77.

下列程序的运行结果是()。

main

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

while(x++!=(y-=l))

{a+=1;

if(y<x)break;

}

printf("%d,%d,%d\n",x,y,a);

}

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

78.下列叙述中错误的是()。

A.C程序可以由多个程序文件组成

B.一个c语言程序只能实现一种算法

C.c程序可以由一个或多个函数组成,

D.一个C函数可以单独作为一个C程序文件存在

79.

80.表达式a+=a-=a=9的值是()。

A.0B.-9C.18D.9

五、程序改错题(1题)81.已知一个数列从0项开始的前3项为0,0,1,以后的各项都是其相邻的前3项之和。下列给定的程序中,函数proc的功能是:计算并输出该数列前n项的和sum。n的值通过形参传人。例如,当n=20时,程序的输出结果应为42762.000000。

请修改程序中的错误,使它能得到正确结果。

注意:不要改动maiil函数,不得增行或删行,也不得更改程序的结构。

试题程序:

#include<stdlib.h>

#include<conio.h>

#include<stdio.h>

doubleproc(intn)

{

doublesum,s0,s1,s2,s;

intk;

sum=1.0;

if(n<=2)

sum=0.0;

s0=0.0;

s1=0.0;

s2=1.0;

//****found****

for(k=4;k<n;k++)

}

{

s=s0+s1+s2;

sum+=S:

s0=s1;

s1=s2;

//****found****

s2=s;

returnsum;

}

voidmain

{

intn;

system("CLS");

printf("InputN=");

scanf("%d",&nJ;

printf("%f\n",proc(n));

}六、程序设计题(1题)82.

参考答案

1.B

2.A

3.A本题考查两个概念:①用单引号括起来的一个字符常量只能存放一个字符;②℃语言中没有字符串变量,只能用字符数组来存储字符串。

4.B二叉树的前序序列为ABCD,由于前序遍历首先访问根节点,可以确定该二叉树的根节点是A。再由中序序列为BCDA,可知以A为根节点的该二叉树只存在左子树,不存在右子树,故后序序列为DCBA。本题答案为B选项。

5.C

6.D

7.C

8.AC语言中,函数声明的函数名、返回值类型和参数列表必须与函数定义相同。其中参数列表中可以省略参数名。题干中,fun函数返回整型,3个参数分别是:整型指针、整型指针、整型。选项A中,第1个参数应该是整型指针类型,第2个参数也应该是指针类型,错误;其他选项都正确。故本题答案为A选项。

9.C

10.A解析:while循环的执行过程如下:(1)计算while后面圆括号中表达式的值.当值为非0时,执行步骤(2);当值为0时,执行步骤(4)。(2)执行循环体一次。(3)转去执行步骤(1)。(4)退出循环。在选项A)中,表达式(ch=getchar())!='N'表示输入的字符不等于N,如果这个条件表达式成立,则执行循环体,打印输出输入的字符。如果这个条件表达式不成立,即输入的字符等于N,则退出循环.所以选项A)为正确答案。

11.D解析:从外面看只能看到对象的外部特性,而对象的内部,即处理能力的实行和内部状态,指的是对象的封装性。

12.B

13.A在函数funl()之前定义了全局字符变量a和b。这两个变量的作用域是从其定义处开始到整个程序末结束。在函数funl()之内定义了两个变量a和b,并且分别初始化为字符ˊCˊ和ˊDˊ。

14.A函数的功能是对数组某一区域内的元素隔个求和;a[3]=4,所以从4开始进行隔个求和,a[7]=8,即对4到8的元素隔个求和,4+6=10。

15.B

16.C解析:题目中所给函数的功能是;先用函数strcpy把参数串str2复制到参数串str1中去,然后用函数strcat把参数串str3连接到经过修改后的参数串str1后,因此选项C正确。

17.A

18.A

19.C宏定义只是做简单的替换,本题中SUB(a+b)*c=(a+b)-(a+b)*c=-20。故本题答案为C选项。

20.A选项A中,“sum+=1/i;”中的i为整型,因此“1/i”是整型类型,当“1/i”有小数时。会被截断。因此“1/i”结果始终为0,导致结果出错。应该改为“sum+=1.0/i”。故本题答案为A选项。

21.1a61a6解析:对于指针变量的运算,就是对地址的运算。本题中由于指针指向的是整型变量,所以,使指针变量移动9个位置也就是移动18个字节。注意,本题是以十六进制输出的。

22.-1-1解析:strcmp(s1,s2)函数的作用是:对字符数组s2和字符数组s1进行比较。如果s1<s2,则返回负数;如果s1==s2,则返回0;如果s1>s2,则返回正数。

23.44解析:strcpy(s1,s2)函数的作用是将字符串s2中的内容拷贝到字符串s1中的内容覆盖。strlen()函数是求字符串的长度。本题实际上是要求s2字符串的长度,即是4。

24.本题主要考查for循环语句的使用以及静态局部变量的特点。

25.n/2性表的任何位置插入一个元素的概率相等,即概率为p=1/(n+1),则插入一个元素时所需移动元素的平均次数为E=1/(n+1)(n-i+1)=n/2。

26.1919解析:根据二叉树的性质:在任意一棵二叉树中,度为。的结点(即叶子结点)总是比度为2的结点多一个。本题中度为2的结点数为18,故叶子结点数为18+1=19个。

27.完善性软件维护活动包括以下几类:改正性维护,适应性维护、完善性维护和预防性维护,完善性维护是指为了满足用户对软件提出的新功能与性能要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。

28.存储结构数据结构包括3个方面,即数据的逻辑结构、数据的存储结构及对数据的操作运算。

29.静态分析静态分析解析:程序测试分为静态分析和动态测试。其中,静态分析是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。

30.数据字典或DD数据字典或DD解析:数据流图用来对系统的功能需求进行建模,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。数据词典(DataDictionary,DD)用于对数据流图中出现的所有成分给出定义,它使数据流图上的数据流名字、加工名字和数据存储名字具有确切的解释。

31.350350解析:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。在根据完全二叉树的定义,在一棵完全二叉树中,最多有1个度为1的结点。因此,设一棵完全二叉树具有n个结点,若n为偶数,则在该二叉树中有n/2个叶子结点以及n/2-1个度为2的结点,还有1个是度为1的结点:若n为奇数,则在该二叉树中有[n/2]+1个叶子结点以及[n/2]个度为2的结点,没有度为1的结点。本题中,完全二叉树共有700个结点,700是偶数,所以,在该二叉树中有350个叶子结点以及349个度为2的结点,还有1个是度为1的结点。所以,本题的正确答案为350。

32.存储结构

33.nn解析:在长度为n的线性表中查找一个表中不存在的元素,需要的比较次数为n。

34.物理独立性物理独立性解析:数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为物理独立性。

35.10410\r\n4解析:结构体变量所占内存长度是各成员占的内存长度之和。每个成员分别占有其自己的内存单元。int占2个字节,float占4个字节,共用体变量所占的内存长度等于最长的成员的长度。所以,sizeof(a.share)的值是4,sizeof(a)的值是2+2+2+4=10。

36.空间空间解析:算法的复杂度主要包括时间复杂度和空间复杂度。所谓算法的时间复杂度,是指执行算法所需要的计算工作量。一个算法的空间复杂度,一般是指执行这个算法所需要的内存空间。

37.swap(st);swap(s,t);解析:本题要在主函数中调用swap函数交换a、b的值,实现数据交换需要进行地址传递,所以函数的形参都应该是需要交换的数据的地址,程序中通过“s=&a;t=&b;”将指针变量s和t指向变量a、b的地址,因此,引用时直接引用指针变量s和t即可。

38.1515解析:s=f(aa,5)=f(aa,4)+a[4]=f(aa,3)+a[3]+a[4]=f(aa,2)+a[2]+a[3]+a[4]

=f(aa,1)+a[1]+a[2]+a[3]|a[4]=0+a[0]+a[1]+a[2]+a[3]+a[4]=15。

39.460000

40.passwarnpasswarn解析:n++是在执行完其所在的语句后再加1,因此,在执行case的时候,n的值依然为'c',执行case'c'后面的语句,先打印出“pass”;在执行完case'c'后,未遇到break跳出switch,便接着执行下面的语句,又打印出warn。所以此题输出结果是passwarn。

41.A解析:aaa()函数中,首先定义了一个字符指针t指向形参s,然后通过一个while循环让指针\u3000t不断递增,直到t指向字符串结束标志处。当t指向结束标志处时,由于后缀++运算符的原因,它还会被再递增1,所以接卜来的t--;语句让它回到结束标志处。最后返回t-s,因此s还是指向字符串第1个字符处,而t指向了字符串结尾,故返回值为字符串的长度值。

42.B解析:a=b=c+2实际上相当于a=(b=c+2),进而可分解为两个表达式:b=c+2和a=b。注意:选项A)中包含一个不合法的运算符“:=”;选项C)应改为(int)18.5%3;选项D)可理解为两个表达式:a+7=c+b和a=a+7,其中第一个是错的,因为C++语言规定赋值号的左边只能是单个变量,不能是表达式或常量等。注意:C++语言赋值语句的运用,

43.D解析:本题考查“++”和“--”运算符,运算符“++”是操作数加1,而“--”则是操作数减1。在do-while循环中,首先执行y--,再执行--y。当y=2时,执行y--,y的值变为1,--y使y值变为0,循环结束。执行输出时,先输出y的值0,然后执行y--,使y的值变为-1。

44.C解析:宏替换不像函数调用要进行参数值的计算、传递等,而只是简单按照原格式进行字符串的替换。注意:宏定义的命令格式。

45.A解析:选项B中,以0开头表示是一个八进制数,而八进制数的取值范围是0~7,所以-080是不合法的;选项C和D中,e后面的指数必须是整数,所以也不合法。

46.C解析:本题的宏定义是合法的,宏定义展开为3*(3+((A+1)*a))=3*(3+((7+1)*3))=81。

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

48.A

49.B解析:本题中函数swapl()是传递的地址。所以对该形参c的改变将影响实参,分析可知该函数的作用,是使数组c的第一个元素和第二个元素的值互换。主函数中调用该函数将a作为实参传递给形参c,故执行该函数后a的第一个元素和第二个元素的值将交换。分别为5和3。函数swap2()是值传递的,所以该函数执行后对数组b将没有任何改变,此时该数组的第一个和第二个元素依然为3和5,因此最后的输出为5、3、3和5,所以,4个选项中选项B符合题意。

50.C解析:十六进制是以“0x”或“0X”开头的字符串,字符串中只能含有0~9这10个数字和a、b、c、d、e、f这6个字母。

51.B解析:关系数据库逻辑设计的主要工作是将\ue008E-R\ue009图转换成指定RDBMS中的关系模式。首先,从E-R图到关系模式的转换是比较直接的,实体与联系都可以表示成关系,E-R图中属性也可以转换成关系的属性,实体集也可以转换成关系。

52.A解析:继承是一个子类直接使用父类的所有属性和方法。它可以减少相似的类的重复说明,从而体现出一般性与特殊性的原则,这使得面向对象程序设计语言有了良好的重用性,也是其不同于其他语言的主要特点。故答案为A。

53.B解析:两个if语句的判断条件都不满足,程序只执行了c=a这条语句,所以变量c的值等于3,变量b的值没能变化,程序输出的结果为3,5,3。所以正确答案为B)。

54.D解析:八进制中,不可能包括8以上的数字,它的范围只在07之间,以0开头。同样,十六进制是以0x开头,数字在0~9和A~F之间。

55.D解析:软件需求规格说明书SRS,SoftwareRequirementSpecification)是需求分析阶段的最后成果,是软件开发中的重要文档之一。它有以下几个方面的作用,①便于用户、开发人员进行理解和交流;②反映出用户问题的结构,可以作为软件开发工作的基础和依据;③作为确认测试和验收的依据。

56.B解析:指针数组也是一种数组,所有有关的概念都适用于它。但它与普通的数组又有区别,它的数组元素是指针类型,只能用来存放地址。其格式为:存储类型数据类型*指针数组名[长度1],其含义为:定义了一个长度1的数组,其中数组元素为相应存储类型的指针,对比定义可知,选项A、C和D都不正确,所以,4个选项中选项B符合题意。

57.D软件开发离不开系统环境资源的支持,其中主要的资源有硬件资源、通信资源、辅助资源等。(1)硬件资源是指组成计算机及相关应用所需要的硬件,它是软件开发必不可少的资源,因为无论什么样的软件工具都需要在硬件上完成任务,它是其他资源的基础资源。(2)通信资源是指为软件开发提供通信支撑的资源,它与测试数据无关。(3)支持软件是指为软件开发提供操作平台的软件,如常用的面向对象开发的Rose软件,它主要是软件开发的工具。通过对上述分析的总结,可以知道本题的正确答案选D。

58.A解析:带参数的宏定义的一般形式为:#define宏名(参数表)字符串程序中的P1(d);经宏置换后为printf(d);,所以输出字符串p;程序中的P1('d');经宏置换后printf('d')。

59.D解析:栈是一种特殊的线性表,其插入与删除运算都只性表的一端进行。在这种线性表的结构中,一端封闭,不允许插入与删除元素;另一端开口,允许插入与删除元素。在栈中不仅能插入数据,也能删除数据,选项A与选项B都错。栈是后进先出的线性

温馨提示

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

评论

0/150

提交评论