2022-2023年内蒙古自治区巴彦淖尔市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第1页
2022-2023年内蒙古自治区巴彦淖尔市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第2页
2022-2023年内蒙古自治区巴彦淖尔市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第3页
2022-2023年内蒙古自治区巴彦淖尔市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第4页
2022-2023年内蒙古自治区巴彦淖尔市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

2022-2023年内蒙古自治区巴彦淖尔市全国计算机等级考试C语言程序设计知识点汇总卷(含答案)学校:________班级:________姓名:________考号:________

一、单选题(20题)1.对于循环队列()。

A.无法判断队列是否为空B.无法判断队列是否为满C.队列不可能满D.以上说法都不对

2.以下叙述中正确的是()。

A.文件指针是一种特殊的指针类型变量

B.文件指针的值等于文件当前读写位置,以字节为单位

C.文件指针的值等于文件在计算机硬盘中的存储位置

D.调用fscanf函数只能向文本文件中写入任意字符

3.

4.下面关于线性表的叙述中,错误的是哪一个()。

A.线性表采用顺序存储,必须占用一片连续的存储单元

B.线性表采用顺序存储,便于进行插入和删除操作

C.线性表采用链式存储,不必占用一片连续的存储单元

D.线性表采用链式存储,便于进行插入和删除操作

5.

6.若有语句“typedefstructTT{charc;inta[4];}CIN;”,则下列叙述中正确的是()。

A.CIN是structTT类型的变量

B.TT是struct类型的变量

C.可以用TT定义结构体变量

D.可以用CIN定义结构体变量

7.有以下语句:intb;charc[10];,则正确的输入语句是______。

A.scanf("%d%s",&b,&c);

B.scanf("%d%s",&b,c);

C.scanf("%d%s",b,c);

D.scanf("%d%s",b,&c);

8.若有定义“inta[2][3],*p[3];”,则以下语句中正确的是()。

A.p=a;B.p[0]=a;C.p[0]=&a[1][2];D.p[1]=&a;

9.已知shortint类型变量占用两个字节,若有定义:shortintx[10]={0,2,4};,则数组x在内存中所占字节数是()。

A.3B.6C.10D.20

10.有下列程序:main{inti,j,x=0;for(i=0,i<2;i++){x++;for(j=0;j<=3;j++){if(j%2)continue;x++:}x++:}printf("x=%d\n",x);}程序执行后的输出结果是()。A.x=4B.x=8C.x=6D.x=12

11.若某表最常用的操作是在最后一个结点之后插入一个结点或删除最后一个结点,则采用()存储方式最节省运算时间。

A.单链表B.给出表头指针的单循环链表C.双链表D.带头结点的双循环链表

12.下面不能正确表示a*b/(c*d)的表达式是()。

A.(a*b)/c*dB.a*b/(c*d)C.a/c/d*bD.a*b/c/d

13.下列条件语句中,输出结果与其他语句不同的是()。

A.if(a)printf("%dn",x);elseprint[("%d\n",y)

B.if(a=0)pritf("%dn",y);elseprint[("%d\n",x)

C.if(a!一0)printf("%dn",x);elseprint[("%a\n",y)

D.if(a=O)print[("%dn",x);elseprintf("%d\n",y)

14.有以下程序:

程序运行后的输出结果是()。A.AaB.AbC.abD.Ba

15.有以下程序#definef(x)x*xmain(){inti;i=f(4+4)/f(2+2);printf(“%d\n”,i);}执行后输出结果是()A.28B.22C.16D.4

16.顺序查找不论在顺序线性表中还是在链式线性表中的时间复杂度为()。

A.O(n)B.O(n^2)C.O(n^1/2)D.O(1og2n)

17.

18.判断char型变量c1是否为小写字母的正确表达式为()。

A.'a'<=c1<='Z'

B.(c1>=A)‖c1<=z)

C.('a'=>c1‖("z"<=c1)

D.(c1>='a')&&(c1<='z')

19.数据的存储结构是指()。

A.存储在外存中的数据B.数据所占的存储空间量C.数据在计算机中的顺序存储方式D.数据的逻辑结构在计算机中的表示

20.设有宏定义“#defineIsDIV(k,n)((k%n==1)?1:0)”,且变量m已正确定义并赋值,则宏调用“IsDIV(m,5)&&IsDIV(m,7)”为真时所要表达的是()。

A.判断m是否能被5和7整除

B.判断m被5和7整除是否都余1

C.判断m被5或者7整除是否余1

D.判断m是否能被5或者7整除

二、2.填空题(20题)21.以下程序的功能是调用函数fun计算:m=1-2+3-4+…+9-10,并输出结果。请填空。

intfun(intn)

{

intm=0,f=1,i;

for(i=1:i<=n;i++)

{

m+=i*f;

f=______;

}

returnm;

}

main()

{printf(“m=%d\n”,______)};

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

#include<string.h>

typedefstructstudent{

charname[10];

longsno;

floatscore;

}STU;

main()

STUa={"Zhangsan",2001,95},b={"Shangxian",2002,90},

c={"Anhua",2003,95},d,*p=&d;

d=a;

if(strcmp(,)>0)d=b;

if(strcmp(,)>0)d=c;

printf("%1d%s\n",d.sno,p->name);

}

23.在C语言中,可以利用【】,将一个表达式的值转换成指定的类型。

24.对于软件测试,从是否需要执行被测软件的角度,可以分为静态测试和动态测试。代码检查属于______测试。

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

#include<stdio.h>

#defineMAX_COUNT4

voidfun()

main()

{intcount;

for(count=1;count<=MAX_COUNT;coun++)fun();

}

voidfun()

{staicinti;

i+=2;

printf(”%d,i);

}

26.在索引查找或分块查找中,首先查找【】,然后再查找相应的【】,整个索引查找的平均查找长度等于查找索引表的平均查找长度与查找相应子表的平均查找长度之和。

27.数据库系统的三级模式分别为______模式、内部级模式与外部级模式。

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

main()

{

charc1,c2;

for(c1='0',c2='9';c1<c2;c1++,c2--)

printf("%c%c",c1,c2);

printf("\n");

}

29.按照逻辑结构分类,结构可以分为线性结构和非线性结构,栈属于______。

30.一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于【】。

31.若x,y和z均是int型变量,则执行下面表达式后的x值为【】。

x=(y=4)+(z=2)

32.以下sstrcpy()函数实现字符串复制,即将t所指字符串复制到s所指内存空间中,形成一个新字符串s。请填空。

voidsstrcpy(char*s,char*t)

{while(*s++=【】);}

main()

{charstrl[100],str2[]="abcdefgh";

sstrcpy(str1,str2);

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

}

33.若有定义语句chars[100],d[100];intj=0,i=0;且s中已赋字符串,请填空以实现拷贝。(注:不使用逗号表达式)

whi1e()s[i]){d[j]=【】:j++;}

d[j]=0;

34.在面向对象的方法中,______描述的是具有相似属性与操作的一组对象。

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

main()

{

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

p++;

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

}

36.测试的目的是暴露错误,评价程序的可靠性;而______的目的是发现错误的位置并改正错误。

37.有以下程序段,且变量已正确定义和赋值。

for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k/1));

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

请填空,使下面程序段的功能与之完全相同。

s=1.0;k=1;

while(【】){s=s+1.0/(k*(k+1));【】;}

printf("s-=%f\n\n",s);

38.软件工程研究的内容主要包括:【】技术和软件工程管理。

39.数据模型是数据库系统中用于提供信息表示和操作手段的结构形式。实际数据库系统中所支持的数据模型主要有层次模型、网状模型和【】3种。

40.现有两个C程序文件T18.c和myfun.c同在TC系统目录(文件夹)下,其中T18.c文件如下:

#include<stdio.h>

#include"myfun.c"

main()

{fun();printf("\n");}

myfun.c文件如下:

voidfun()

{chars[80],c;intn=0;

while((c=getchar())!=′\n′)s[n++]=c;

n--;

while(n>=0)printf("%c",s[n--]);

}

当编译连接通过后,运行程序T18时,输入Thank!,则输出结果是【】。

三、1.选择题(20题)41.在执行完下列的C语句段之后,则B的值是()。chara='A';intb;B=((34&&56)&&(a<'b'));

A.0B.1C.TRUED.FALSE

42.下列程序的执行结果是()。#include<stdio.h>main(){inta,b,c;a=b=2;c=(a++)-1;printf("%Ad,%d",a,C);c+=-a+++(++B);printf("%d,%d",a,C);}

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

43.在浏览WWW时,如果连接到一个安全的站点,应当以()开头来书写统一资源定位器。

A.shttp://B.http:s//C.http://D.https//

44.下面可以作为C语言用户标识符的一组是

A.voiddefineWORD

B.a3_b3_123IF

C.for--abccase

D.2aD0sizeof

45.使计算机病毒传播范围最广的媒介是________

A.硬磁盘B.软磁盘C.内部存储器D.互联网

46.设有下列二叉树:

对此二叉树后序遍历的结果为

A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA

47.有以下程序unionmyun{struct{intx,y,z;}u;intk;}a;main(){a.u.x=4;a.u.y=5;a,u.z=6;a.k=0;printf("%d\n",a.u.x);}程序运行后的输出结果是()

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

48.在下列叙述中,错误的一条是()

A.形式参数是局部变量

B.不同函数中,可以使用相同名字的变量

C.主函数main中定义的变量在整个文件或程序中有效

D.在―个函数内部,可在复合语句中定义变量,这些变量只在本复合语句中有效

49.设有以下语句:charstr1[]="string",str2[8],*str3,*str4="string";则______不是对库函数的正确调用。

A.strcpy(str1,"HELLO1");

B.strcpy(str2,"HELLO2");

C.strcpy(str3,"HELLO3");

D.strcpy(str4,"HELLO4");

50.设intx=7,则~x的值是()。

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

51.在面向对象的程序设计中,能表示类之间相似性质的机制是()。

A.继承B.封装C.分类D.动态连接

52.下列不属于软件工程的3个要素的是______。

A.工具B.过程C.方法D.环境

53.若有如下程序:#definePI3.1415926#defineA(r)2*PI*rmain(){floata,1;a=3.0;1=A(a);printf("r=%.2f,1=%.2f\n",a,1);}则程序运行后的输出结果是()

A.r=3.001=18.85

B.3.00,18.85

C.r=3.0000001=18.8495555

D.r=3.01=18.8495555

54.以下程序的输出结果是()。mam(){charcf[3][5]={"AAAA","BBB","CC");printf("\"%s\"n",cf[1]);}

A.AAAAB.BBBC.BBBCCD.CC

55.在数据库设计中,将E-R图转换为关系模式的过程属于()。

A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段

56.以下叙述中正确的是()。

A.调用printf函数时,必须要有输出项

B.使用putchar函数时,必须在之前包含头文件stdio.h

C.在C语言中,整数可以以十二进制、八进制或十六进制的形式输出

D.调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCⅡ码

57.C语言中共用体类型变量在程序运行期间()

A.最后一次存放的成员起作用,其他成员都已失去作用

B.已存放的一部分成员在内存中起作用

C.已存放的成员没有一个在内存中起作用

D.已存放的所有成员在内存中都起作用

58.设有如下定义:structsk{intm;floatx;}data,*q;若要使q指向data中的m域,正确的赋值语句是()。

A.q=&data.m;

B.*q=data.m;

C.q=(structsk*)&data.m;

D.q=(structsk*)data.m;

59.请选出正确的程序段______。

A.int*pscanf(""%d"",p);……

B.int*s,k;*s=100;……

C.int*s,k;char*p,c;s=&k;p=&c;*p='a';……

D.int*s,k;char*p,e;s=&k;p=&c;s=p;*s=1;……

60.下列程序的输出结果是______。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

四、选择题(20题)61.

62.下面不属于软件工程三要素的是()。

A.方法B.环境C.工具D.过程

63.有以下程序:

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

A.zB.0C.元素eh[5]的地址D.字符Y的地址

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

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

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

C.将字符串str2复制到字符串str1之后再将字符串str3连接到字符串str1之后

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

65.设有:

inta=1,b=2,c=3,d=4,m=2,n=2;

执行(m=a>b)&&(n=c>d)后,n的值是

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

66.以下叙述中错误的是()。A.可以通过typedef增加新的类型

B.可以用typedef已存在的类型用一个新的名字来代表

C.用pypedef义新的类型名后,原有类型名仍有效

D.用pypedef以为各种类型起别名,但不能为变量起别名

67.

68.有以下程序段:intx=3;do{printf("%d",x-=2);)while(!(--x));其输出结果是()。A.1B.30C.1-2D.死循环

69.

70.

71.

72.

73.以下程序中函数f的功能是:当na9为1时,进行由小到大排序;当na9为0时,进行由大到小排序。

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

A.1,2,3,4,5,6,7,8,9,10,

B.3,4,5,6,7,2,1,8,9,10,

C.5,4,3,2,1,6,7,8,9,10,

D.10,9,8,7,6,5,4,3,2,1,

74.

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

inta=5;

floatx=3.14;

a*=x*(‘E’-‘A’);

printf(“%f\n”,(float)a);

A.62.000000B.62.800000C.63.000000D.62

76.

77.

78.

79.

80.

五、程序改错题(1题)81.以下程序可把输入的十进制数以十六进制数的形式输出。请在横线上填上适当的内容并把横线删除,使它能得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。试题程序:

六、程序设计题(1题)82.使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun(),其功能是找出一维整型数组元素中最大的值及其所在的下标,并通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n表示x中的元素个数,max存放最大值,index存放最大值所在元素的下标。注意:部分源程序给出如下。请勿改动主函数main()和其他函数中的任何内容,仅在函数fun()的花括号中填入你编写的若干语句。试题程序:#include<time.h>#include<stdlib.h>#include<stdio.h>voidfun(inta[],intn,int*max,int*d){}voidmain(){ inti,x[20],max,index,n=10; srand((unsigned)time(NULL)); for(i=0;i<=n;i++) { x[i]=rand()%50; printf(“%4d”,x[i]); /*输出一个随机数组*/ } printf(n\nH); fun(xfnf&max,&index); printf(“Max=%5d,Index=%4d\n”,max,index);}

参考答案

1.D

2.A文件指针实际上是指向一个结构体类型的指针。这个结构体中包含缓冲区的地址、在缓冲区中当前存取字符的位置、对文件是“读”还是“写”、是否出错、是否已经遇到文件结束标识等信息。选项A正确,选项B、C错误;fscanf函数只能从文本文件中输入数据到内存,选项D错误。故本题答案为A选项。

3.C

4.B

5.C

6.DCIN为结构体类型名,而不是结构体变量。故本题答案为D选项。

7.B解析:b是整型数,在输人语句中要加取地址符,而c是数组名,本身就是数组的首地址,因此不用加取地址符。

8.CA选项错误,因为p是指向一个指针数组,而数组名相当于常量,不能重新赋值。B选项错误,因为p[0]是一个int指针,也就是int*,而a是一个指向指针的指针int**。C选项正确,因为p[0]是int*,a[1][2]是int,&a[1][2]是int*,类型吻合。D选项错误,因为a作为数组名,不能取地址,即使能取,P[1]是int*,&a是int***,类型不吻合。故本题答案为C选项。

9.D

10.B在第1次外层for循环中,首先x++得到x=1。进入到内层for循环,只有循环j的值为奇数时,变量x的值才自加1,所以在内层for循环执行过程中,变量x的值自加两次,当退出内层for循环时,x=3,然后执行x++,得到x=4。在进入执行第2次外层for循环中,首先x++得到x=5。进入到内层for循环,只有循环变量j的值为奇数时,变量x的值才自加1,所以在内层for循环执行过程中,变量X的值自加1两次,当退出内层for循环时,x=7,然后执行x++,得到x=8,所以打印输出变量x的值为8。

11.D

12.A

13.D主要考查if判断语句,A选项if(a),如果a为真,则输出X,否则输出Y。B选项if(a==0),如果a恒等于0,则输出Y,否则输出X。C选项a(!=o),如果a不等于0,则输出X,否则输出y。D选项if(a==0),如果a恒等于0,则输出X,否则输出y。由以上结论可知,输出结果不同的为D选项。

14.B函数fun将形参b赋给形参a,使得a和b都指向原b所指向的地址,然后对该地址的值执行自增1;main函数中p1指向ch1,p2指向ch2。通过fun函数的调用,将ch2的值完成自增1,字符’a’自增1后变成字符’b’,所以程序输出:Ab。本题答案为B选项。

15.A解析:f(4+4)/f(2+2)=4+4*4+4/2+2*2+2=28。

16.A

17.C

18.D解析:C语言规定,字符常量在程序中要用单引号括起来。判断c1是否为小写字母的充要条件c1>='a'和c1<='z',用逻辑与(&&)来表示。A选项的这种形式在C语言中没有,所以选项D)正确.

19.D数据的逻辑结构是指数据元素之间的逻辑关系的数据结构。数据的存储结构则是数据的逻辑结构在计算机中的物理实现,有时也称作数据的物理结构。两者的区别是数据的逻辑结构只涉及到数据之间抽象的数学关系。存储结构则涉及到如何在计算机中通过对数据的物理存储进行组织来表达数据元素之间的逻辑关系。比如在线性表的顺序存储中是利用物理存储空间上的连续性来表达线性表中数据的前后件关系;在线性表的链式存储中是通过指针域构成的逻辑链条来表达数据的前后件关系。一般的,一种数据的逻辑结构对应的物理实现,即数据的存储结构不止一种。因此选项D正确。

20.B逻辑与运算两边运算对象的值都为真时,结果才为真。所以需要m能被5和7整除都余1。故本题答案为B选项。

21.-f或f*-1或-1*f或f*(-1)或(*1)*f。fun(10)-f或f*-1或-1*f或f*(-1)或(*1)*f。\r\nfun(10)解析:本题考核的知识点是C程序的简单应用。本题要求调用fun()函数计算m的值,故在主函数中的空格处应该填调用fun()函数的语句。fun()函数有一个形参n,为每次参加计算的值的个数,故在主函数中的空格处应该填fun(10),回到fun()函数,函数用到了一个for循环,共循环n次,当循环第i次的时候,m的值等于m=1-2+……+[(-1)的i-1次方]*1所以在fun()函数的空格处应该填使f改变符号的语句,故应填*f或f*-1或-1*f或f*(-1)或(-1)*f。

22.2002Shangxian2002Shangxian解析:本题中首先定义一个结构体类型STU,该结构体由一个长度为10的字符型数组、一个long型变量和一个float型变量组成。接着在主函数中用STU定义了4个结构体变量a、b、c、d,并且给a、b、c赋初值,然后定义了一个结构体指针p,并让它指向变量do将变量a的值赋给变量d,接着通过两个if语句比较结构体变量a、b、c的成员name大小。第一个if语句将结构体变量和结构体变量中较小的那个赋值给结构体变量d,第二个if语句将结构体变量和结构体变量较大的那个赋给结构体变量do比较通过函数strcmp实现。strcmp()函数有两个参数,分别为被比较的两个字符串。如果第一个字符串大于第二个字符串返回值大于0,若第一个小于第二个返回值小于0,相等时返回值为0。字符串比较大小的标准是从第一个字符开始依次向右比较,遇到某一个字符大,该字符所在的字符串就是较大的字符串,如果遇到某一个字符小,该字符所在的字符串就是较小的字符串。程序中第一个if语句strcmp(,)>0为真,故将b的值赋给d,第二个if语句strcmp(,)>0为假,故不执行后面的语句,最后d的值为b的值,因此输出d.sn0和p->name的值为2002Shangxian。

23.强制类型转换强制类型转换

24.静态静态解析:静态测试包括代码检查、静态结构分析,代码质量度量等。静态测试不实际运行软件。

25.2468(若字符间有空格扣1分)2468(若字符间有空格扣1分)

26.索引表块索引表\r\n块

27.概念(或概念级)概念(或概念级)

28.09182736450918273645解析:题目中为for循环定义了两个字符型循环变量c1和c2,循环开始时分别初始化为字符‘0’和‘9’,然后每次循环结束给c1增1、c2减l,循环条件为c1<c2,即让c1的值依次为‘0’、‘1’、‘2’…,c2的值依次为‘9’、‘8’、‘7’…,直到两个数相遇时结束循环。又因为该循环的循环体每次按字符形式输出c1和c2的值。所以最终的输出结果为:0918273645。

29.线性结构线性结构解析:数据的逻辑结构是指数据元素之间的逻辑关系,分为线性结构和非线性结构。常见的线性结构有线性表、栈和队列等,常见的非线性结构有树、二叉树等。

30.一对多一对多解析:由于一个项目主管可以管理多个项目,而一个项目只能有一个项目主管,“项目主管”这个实体与“项目”这个实体的管理关系属于一对多。

31.6

32.*t++*t++解析:要使sstrcpy函数实现字符串复制,必须将t字符串中的每个字符逐个复制到s字符串中,可以使用*s=*t;s++;t++,也可以写成*s++=*t++,因此空格处填*t++。

33.s[i++]s[i++]解析:本题中为了能实现字符串的拷贝,需要使字符数组s从头到尾依次遍历其所有元素。本题应使用i的自增后置来实现。

34.类类解析:在面向对象的方法中,把具有相同属性和方法的对象称为类,类是对象的抽象,对象是类的实例。

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

36.调试调试

37.k<=n或n>=kk++k<=n或n>=k\r\nk++解析:while语句和for语句的作用都是循环控制语句的执行,两者之间是可以互相转换的。将while(EXP)转换为for语句可以写成for(;EXP;);将for(EXP1;EXP2;EXP3)转换为while语句可以写成:EXP1;while(EXP2){...EXP3;}。故本题的两个空分别应填写for语句的第2和第3个表达式。即k<=n或n>=k和k++。当然也可写成与之等价的其他形式。

38.软件开发

39.关系模型关系模型

40.!knahT!knahT解析:此程序是一道次序颠倒题,即输入'Thank!',则输出'!knahT'。

41.B解析:本题考查C语言3个知识点:①将一个字符赋给一个字符变量时,并不是将该字符本身存储到内存中,而是将该字符对应的ASCII码存储到内存单元中;②大写字母的ASCII码值小于其对应小写字母的ASCII码值;③只要逻辑与运算符&&的两个运算对象都为非零,返回值就是1。

42.A解析:本题主要考查自加运算符(++、--)的使用。①前缀变量“++i,--i”,在使用i之前,先使i的值加1或者减1,再使用此时的表达式的值参与运算;②后缀变量“i++、i--”,先使用此时的表达式的值参与运算,在使用i之后,再使i的值加1或者减1。题中计算表达式c=(a++)-1时先使用a的值进行计算,结果为c=2-1=1,然后将a的值加1,即执行完此语句后a的值是3,表达式c+=-a+++(++B)等价于c=c+(-a++)+(++B),c=1+(-3)+3=1,此时a=4,b=3。

43.C

44.B解析:在C语言中,合法的标识符可以由字母、数字和下划线组成,其中关键字不能作为用户的标识符,且开头的第一个字符必须为字母或下划线。选项A中void为关键字;选项C中for和case为关键字;选项D中sizeof为关键字。

45.D

46.D解析:二叉树的遍历分为先序、中序、后序三种不同方式。本题要求后序遍历,其遍历顺序应该为:后序遍历左子树->,后序遍历右子树->,访问根结点。按照定义,后序遍历序列是DEBFCA,故答案为D。

47.D

48.C

49.C解析:C语言中:strcpy(st1,st2);,其两个参数均为字符指针或字符数组,选项C中的目的串指针str3没有指向具体有效的存储单元,故是错误的调用。

50.A解析:本题主要考查按位求反运算和C语言中正负数的表示,“0”代表正数,“1”代表负数;x=7的二进制为00111,第一个0代表正数,~x为11000,第一个1代表负数,值为8。

51.A解析:在面向对象的程序设计中,继承是表示类之间相似性的机制。

52.D解析:本题考查了软件工程的基本概念。软件工程包括3个要素,即方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理和文档生成;过程支持软件开发的各个环节的控制和管理。

53.A

54.B解析:二维字符数组可以看成由若干个一维字符数组组成,每行是一个一维字符数组。本题首先定义了一个数组ch[3][5],并给它们按行赋初值,即相当于给eh[0]赋值“AAAA”,给ch[1]赋值“BBB”,给eh[2]赋值“BBB”,最后输出转义字符“叮”、ch[1]和转义字符“\\”,因此输出为“BBB”。所以,4个选项中B为所选。

55.BB。【解析】数据库设计阶段主要包括需求分析、概念设计、逻辑设计和物理设计。其中逻辑设计的主要工作是将E-R图转换为关系模式。

56.B

57.A

58.C利用强制类型转换(structsk*)把整数型地址&data.m转换成结构体变量指针赋给结构体指针变量q。

59.C解析:本题的选项A)和B)犯了同样的错误,即指针变量在定义后并没有指向具体的变量。也就是说,指针变量中没有确定的地址值,它的值是不可预见的,所指的单元也是不可预见的,因此不能进行赋值操作。另外,在选项D)

温馨提示

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

评论

0/150

提交评论