还剩8页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
计算机等级考试二级C模拟题及答案详解
一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分
(1)算法的空间复杂度是指A算法程序的长度B算法程序中的指令条数C算法程序所占的存储空间D执行算法需要的内存空间
(2)在结构化程序设计中模块划分的原则是A各模块应包括尽量多的功能B各模块的规模应尽量大C各模块之间的联系应尽量紧密D模块内具有高内聚度、模块间具有低耦合度
(3)下列叙述中不属于测试的特征的是A测试的挑剔性B完全测试的不可能性C测试的可靠性D测试的经济性
(4)下面关于对象概念的描述中错误的是A对象就是C语言中的结构体变量B对象代表着正在创建的系统中的一个实体C对象是一个状态和操作或方法的封装体D对象之间的信息传递是通过消息进行的
(5)下列关于队列的叙述中正确的是A在队列中只能插入数据B在队列中只能删除数据C队列是先进先出的线性表D队列是先进后出的线性表
(6)已知二叉树后序遍历序列是dabec中序遍历序列是debac它的前序遍历序列是AacbedBdecabCdeabcDcedba
(7)某二叉树中有n个度为2的结点则该二叉树中的叶子结点数为An+1Bn-1C2nDn/2
(8)设有如下三个关系表RSTABCABCm13m13nn13下列操作中正确的是AT=R∩SBT=R∪SCT=R×SDT=R/S
(9)下列叙述中正确的是A用E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系B用E-R图只能表示实体集之间一对一的联系C用E-R图只能表示实体集之间一对多的联系D用E-R图表示的概念数据模型只能转换为关系数据模型
(10)下列有关数据库的描述正确的是A数据处理是将信息转化为数据的过程B数据的物理独立性是指当数据的逻辑结构改变时数据的存储结构不变C关系中的每一列称为元组一个元组就是一个字段D如果一个关系中的属性或属性组并非该关系的关键字但它是另一个关系的关键字则称其为本关系的外关键字
(11)C语言规定在一个源程序中main函数的位置A必须在最开始B必须在系统调用的库函数的后面C可以任意D必须在最后
(12)以下叙述中错误的是A计算机不能直接执行用C语言编写的源程序BC程序经C编译程序编译后生成后缀为.obj的文件是一个二进制文件C后缀为.obj的文件经连接程序生成后缀为.exe的文件是一个二进制文件D后缀为.obj和.exe的二进制文件都可以直接运行
(13)下列选项可以正确表示字符型常量的是A′\r′BaC\897D296
(14)以下叙述中正确的是A构成C程序的基本单位是函数B可以在一个函数中定义另一个函数Cmain函数必须放在其他函数之前DC函数定义的格式是KR格式
(15)设变量均已正确定义若要通过scanf%d%c%d%ca1c1a2c2;语句为变量a1和a2赋数值10和20为变量c1和c2赋字符X和Y以下所示的输入形式中正确的是注:□代表空格字符A10□X□20□Y回车B10□X20□Y回车C10□X回车20□Y回车D10X回车20Y回车
(16)若有说明:int*pm=5n;以下正确的程序段是Ap=n;scanf%dp;Bp=n;scanf%d*pCscanf%dn;*p=n;Dp=n;*p=m;
(17)在执行下述程序时若从键盘输入6和8则结果为main{intabs;scanf%d%dab;s=aifabs=b;s*=s;printf%ds;}A36B64C48D以上都不对
(18)若执行下面的程序时从键盘输入5和2则输出结果是main{intabk;scanf%d%dab;k=a;ifabk=a%b;elsek=b%a;printf%d\nk;}A5B3C2D0
(19)在C语言中函数返回值的类型最终取决于A函数定义时在函数首部所说明的函数类型Breturn语句中表达式值的类型C调用函数时主调函数所传递的实参类型D函数定义时形参的类型
(20)已知大写字母A的ASCII码是65小写字母a的ASCII码是97以下不能将变量c中的大写字母转换为对应小写字母的语句是Ac=c-′A′%26+′a′Bc=c+32Cc=c-′A′+′a′Dc=′A′+c%26-′a′
(21)以下选项中当x为大于l的奇数时值为0的表达式是Ax%2==1Bx/2Cx%2!=0Dx%2==0
(22)有以下程序main{intk=5n=0;do{switchk{case1:case3:n+=1;k--;break;default:n=0;k--;case2:case4:n+=2;k--;break;}printf%dn;}whilek0n5;}程序运行后的输出结果是A235B0235C02356D2356
(23)有如下程序main{intn=9;whilen6{n--;printf%dn;}}该程序的输出结果是A987B876C8765D9876
(24)有以下程序#includestdio.hmain{intc;whilec=getchar!=′\n{switchc-′2′{case0:case1:putcharc+4;case2:putcharc+4;break;case3:putcharc+3;case4:putcharc+3;break;}}printf\n}从第一列开始输入以下数据CR代表一个回车符2743CR程序的输出结果是A66877B668966C6677877D6688766
(25)有以下程序main{intx=0y=0i;fori=1;;++i{ifi%2==0{x++;continue;}ifi%5==0{y++;break;}}printf%d%dxy;}程序的输出结果是A21B22C25D52
(26)有以下程序main{inta
[4]
[4]={{l432}{8657}{3725}{4861}}ijkt;fori=0;i4;i++forj=0;j3;j++fork=j+1;k4;k++ifa[j][i]a[k][i]{t=a[j][i];a[j][i]=a[k][i];a[k][i]=t;}/*按列排序*/fori=0;i4;i++printf%da[i][i];}程序运行后的输出结果是A1657B8731C4752D1621
(27)有以下程序intfintn{ifn==1return1;elsereturnfn-1+1;}main{intij=0;fori=1;i3;i++j+=fi;printf%d\nj;}程序运行后的输出结果是A4B3C2D1
(28)当运行以下程序时从键盘输入AhaMA空格AhaCR则下面程序的运行结果是#includestdio.hmain{chars
[80]c=′a′;inti=0;scanf%ss;whiles[i]!=′{ifs[i]==cs[i]-32;elseifs[i]==c-32s[i]=s[i]+32;i++;}putss;}AahaMaBAbAMaCAhAMa[空格]ahADahAMa[空格]ahA
(29)下面程序输出的结果是main{inti;inta
[3]
[3]={123456789};fori=0;i3;i++printf%da[2-i][i];}A159B753C357D591
(30)现有如下程序段#includestdio.hmain{inta
[5]
[6]={23365216782856725435768224578346783245674211};inti=0j=5;printf%d\n*a
[0]
[0]+2*i+j-2;}则程序的输出结果为A21B78C23D28
(31)请选出正确的程序段Aint*p;scanf%dp;…Bint*sk;*s=100;…Cint*sk;char*pc;s=k;p=c;*p=′a′;…Dint*sk;char*pe;s=k;p=c;s=p;*s=1;…
(32)下面程序段的运行结果是chara[]=lanuage*p;p=a;while*p!=′u′{printf%c*p-32;p++;}ALANGUAGEBlanguageCLANDlangUAGE
(33)以下程序的输出结果是#includestdio.hinta
[3]
[3]={123456789}*p;main{p=int*mallocsizeofint;fpa;printf%d\n*p;freep;}fint*sintp[]
[3]{*s=p
[1]
[1];}A1B4C7D5
(34)有以下程序voidfint*q{inti=0;for;i5;i++*q++;}main{inta
[5]={12345}i;fa;fori=0;i5;i++printf%da[i];}程序运行后的输出结果是A22345B62345C12345D23456
(35)以下合法的字符型常量是A′\x13′B′\081′C′65′D\n
(36)有以下语句则对a数组元素的引用不正确的是inta
[10]={0123456789}*p=a;Aa[p-a]B*a[i]Cp[i]D**a+i
(37)有以下程序#includestring.hmain{charp
[20]={′a′′b′′c′′d′}q[]=abcr[]=abcde;strcatpr;strcpyp+strlenqq;printf%d\nstrlenp;}程序运行后的输出结果是A9B6C11D7
(38)在C语言中变量的隐含存储类别是AautoBstaticCexternD无存储类别
(39)以下程序的输出结果是main{intc=35;printf%d\ncc;}A0B70C35D1
(40)有以下程序#includestdio.hmain{FILE*fp;inti=20j=30kn;fp=fopend
1.datw;fprintffp%d\ni;fprintffp%d\nj;fclosefp;fp=fopend
1.datr;fscanffp%d%dkn;printf%d%d\nkn;fclosefp;}程序运行后的输出结果是A2030B2050C3050D3020
二、填空题请将每一个空的正确答案写在答题卡序号的横线上,答在试卷上不给分
(1)设一棵完全二叉树共有700个结点则在该二叉树中有【1】个叶子结点
(2)常用的黑箱测试有等价类划分法、【2】和错误推测法3种
(3)数据库管理系统常见的数据模型有层次模型、网状模型和【3】3种
(4)通常将软件产品从提出、实现、使用维护到停止使用退役的过程称为【4】
(5)数据库保护分为:安全性控制、【5】、并发性控制和数据的恢复
(6)执行以下程序后的输出结果是【6】main{inta=10;a=3*5a+4;printfa=%d\na;}
(7)以下程序的输出结果是【7】#includestring.hmain{printf%d\nstrlenIBM\n012\1\\;}
(8)已定义charch=′$′;inti=1j;执行j!=chi++以后i的值为【8】
(9)以下程序的运行结果是【9】#includestdio.hlongfibintg{switchg{case0:return0;case1:case2:return1;}returnfibg-1+fibg-2;}main{longk;k=fib5;printfk=%5ld\nk;}
(10)下面程序的功能是输出数组s中最大元素的下标请填空main{intkps[]={1-972-103};forp=0k=p;p6;p++ifs[p]s[k]【10】printf%d\nk;}
(11)以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中然后输出请填空main{intx
[10]a
[9]I;forI=0;I10;I++scanf%dx[I];for【11】;I10;I++a[I-1]=x[I]+【12】;.forI=0;I9;I++printf%da[I];printf;}
(12)设有以下程序为使之正确运行请在横线中填入应包含的命令行注:try_me函数在a:\myfile.txt中有定义【13】main{printf\n;try_me;printf\n;}
(13)以下程序的功能是建立一个带有头结点的单向链表链表结点中的数据通过键盘输入当输入数据为-1时表示输入结束链表头结点的data域不放数据表空的条件是ph-next==NULL请填空#includestdio.hstructlist{intdata;structlist*next;};structlist*creatlist{structlist*p*q*ph;inta;ph=structlist*mallocsizeofstructlist;p=q=ph;printfInputanintegernumber;entre-1toend:\n;scanf%da;whilea!=-1{p=structlist*mallocsizeofstructlist;【14】=a;q-next=p;【15】=p;scanf%da;}p-next=′\0;returnph;}main{structlist*head;head=creatlist;}答案详解1D【解析】算法的复杂度主要包括算法的时间复杂度和算法的空间复杂度所谓算法的时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度是指执行这个算法所需要的内存空间2D【解析】在结构化程序设计中一般较优秀的软件设计尽量做到高内聚、低耦合这样有利于提高软件模块的独立性也是模块划分的原则3C【解析】软件测试的目标是在精心控制的环境下执行程序以发现程序中的错误给出程序可靠性的鉴定它有3个方面的重要特征即测试的挑剔性、完全测试的不可能性及测试的经济性其中没有测试的可靠性这一说法4A【解析】对象是由数据和容许的操作组成的封装体与客观实体有直接的对应关系对象之间通过传递消息互相联系从模拟现实世界中不同事物彼此之间的联系B、C、D是正确的对象的思想广泛应用于C++、Java等语言中因此A错误5C【解析】队列是一种操作受限的线性表它只允许在线性表的一端进行插入操作另一端进行删除操作其中允许插入的一端称为队尾rear允许删除的一端称为队首front队列具有先进先出的特点它是按先进先出的原则组织数据的6D【解析】依据后序遍历序列可确定根结点为c;再依据中序遍历序列可知其左子树由deba构成右子树为空;又由左子树的后序遍历序列可知其根结点为e由中序遍历序列可知其左子树为d右子树由ba构成如下图所示求得该二叉树的前序遍历序列为选项D7A【解析】对于任何一棵二叉树T如果其终端结点叶子数为n1度为2的结点数为n2则n1=n2+1所以该二叉树的叶子结点数等于n+18C【解析】对于两个关系的合并操作可以用笛卡尔积表示设有n元关系R和m元关系S它们分别有p和q个元组则R与S的笛卡儿积记为R×S它是一个m+n元关系元组个数是p×q由题意可得关系T是由关系R与关系S进行笛卡尔积运算得到的9A【解析】两个实体之间的联系实际上是实体集间的函数关系这种函数关系可以有下面几种即一对一的联系、一对多或多对一的联系和多对多的联系;概念模型便于向各种模型转换由于概念模型不依赖于具体的数据库管理系统因此容易向关系模型、网状模型和层次模型等各种模型转换10D【解析】数据处理是指将数据转换成信息的过程故选项A叙述错误;数据的物理独立性是指数据的物理结构的改变不会影响数据库的逻辑结构故选项B叙述错误;关系中的行称为元组对应存储文件中的记录关系中的列称为属性对应存储文件中的字段故选项C叙述错误11C【解析】不论main函数在整个过程中的位置如何一个C程序总是从main函数开始执行的12D【解析】一个C语言的源程序后缀名为.c在经过编译器编译后先生成一个汇编语言程序然后由编译程序再将汇编语言程序翻译成机器指令程序即目标程序后缀名为.obj目标程序不可以直接运行它要和库函数或其他目标程序连接成可执行文件后缀名为.exe后方可运行13A【解析】C语言中一个字符常量代表ASCII字符集中的一个字符在程序中用单引号括起来作为字符常量字符常量的的范围是0~127由于字符常量用单引号括起来所以选项BC错误选项D超过了字符常量的表示范围14A【解析】本题考查C语言的综合基础知识构成C程序的基本单位是函数不论main函数在整个程序中的位置如何一个C程序总是从main函数开始执行C语言的函数定义都是互相平行、独立的在定义函数时一个函数内不能定义另一个函数C函数定义的一般格式有两种:传统格式和现代格式传统格式也称KR格式是早期编译系统使用的格式;现代格式又称ANSI格式是现代编译系统使用的格式15D【解析】本题中scanf函数的格式控制没有空格所以对于选项A、B、C输入的第一个空格会作为字符赋值给变量c1而不会被解释成分隔符16D【解析】是求址运算符*是指变量说明符选项A、B应改为scanf%dp;选项C中指针变量p未指向一确定的内存单元不能为其赋值并且这样做很危险建议不使用17B【解析】本题中a的值为6b的值为8最后s的值为8s*=s等价于s=s*s18C【解析】本题考查简单的if…else语句先执行条件ifab显然不成立在执行else语句19A【解析】在C语言中应当在定义函数时指定函数值的类型凡不加类型说明的函数一律按整型处理在定义函数时对函数值说明的类型一般应该和return语句中的表达式类型一致如果函数值的类型和return语句中的表达式类型不一致则以函数类型为主即函数类型决定返回值的类型20D【解析】C语言中字符数据参加运算时实际上是其ASCII码参与运算大写字母的ASCII码比其对应的小写字母的ASCII码小32因此大写字母转化为小写字母只需将其加上32即可所以选项B、C都符合条件因为变量c中存储的是大写字母所以c-A的值一定小于26故选项A与选项C的含义相同21D【解析】因为x的值为大于1的奇数所以x除以2的余数等于1因此选项A、C中表达式的结果为真不为0;对于选项B来说x除以2的商不会等于0;选项D中表达式的结果为假即等于022A【解析】因为变量的初始值分别为k=5n=0所以程序第一次进入循环时执行default语句这时k=4执行case4:这个分支结果是n=2k=3打印出2;程序然后进行第二次循环这时n=2k=3执行case3:这个分支结果是n=3k=2打印出3;程序进行第三次循环这时n=3k=2执行case2:case4:这两个分支结果是n=5k=1打印出5这时因为n=5不满足n5的循环条件因此退出循环程序运行结束故输出结果为23523B【解析】该题目应该根据循环体第一次和最后一次执行时的输出结果来决定哪一项是正确的第一次进入循环时n的值是9循环体内先经过n--运算n的值变为8所以第一次的输出值是8由此可以排除选项A和D由循环条件n6可以知道最后一次循环开始时n的值应该为7所以最后一次执行循环时输出为6由此可以排除选项C24A【解析】本题主要考查了字符输入输出函数getchar和putchar的使用getchar函数用来从标准输入设备上读入一个字符putcharc函数是将字符变量c中的字符输出到标准输出设备上并且字符可以看作整数参与运算25A【解析】本题考查了continue和break语句在循环语句中的作用break语句的作用是结束本层循环而continue语句的作用是结束本次循环直接进入到下次循环26A【解析】本题利用多重for循环的嵌套来实现对二维数组元素的按列排序利用最外层循环来实现对列的控制内部循环利用选择法对数组元素按照从小到大的顺序进行排列最后输出对角线上的元素值27B【解析】在main函数中对f1和f2的值进行了累加f1=1f2=f1+1=2最后j的值为1+2=328A【解析】本题主要考查的知识点是大写字母比它对应的小写字母ASCII码值小32并且字符可以看作整数进行算术运算等操作29B【解析】本题用循环的方法考查对数组概念的掌握首先当i=0时数组中的位置是a
[2]
[0]=7当然如果用排除法就不用考虑后面的循环因为在4个选项中第1个数为7的选项只有B本题执行第2次循环时i的值为1则printf函数中的数组指向为a
[1]
[1]=5依次循环可求出答案30A【解析】通过地址来引用二维数组若有以下定义:inta
[3]
[4]ij;且当0≤i≤30≤j4则可以有以下几种方式来引用数组中的第i行第j列的元素:a[i][j]*a[i]+j**a+i+j*a+i[j]*a
[0]
[0]+4*i+j表达式a
[0]
[0]+2*i+j-2相当于是地址a
[0]
[0]加上多少偏移量31C【解析】本题的选项A和B犯了同样的错误即指针变量在定义后并没有指向具体的变量也就是说指针变量中没有确定的地址值它的值是不可预见的所指的单元也是不可预见的因此不能进行赋值操作另外在选项D中s是int型指针变量p是char型指针变量所指向的内存单元所占用的字节数是不同的因而不能将字符指针变量p的值赋给整型指针变量s32C【解析】本段程序的作用是输出字符串lanuage中字母u之前的字符并将其转化为大写字母注意:如果一个字符数组用来作为字符串使用那么在定义该字符数组时数组的大小就应该比它将要实际存放的最长字符多一个元素以存放\033D【解析】本题考查了二维数组元素引用的方法题中用动态存储分配函数malloc分配了一个int型数据长度大小的内存然后指针p指向了这段内存函数f中对p所指向的数据进行了赋值p
[1]
[1]为二维数组第二行第二列的元素对应于实参a的元素5所以输出结果为534B【解析】调用函数f时将数组a的地址传递给了指针q此时q指向的就是数组a的第一个元素a
[0]在5次循环过程中q始终指向a
[0]因此a
[0]的值增加了5最后的输出结果为6234535A【解析】C语言的字符常量是用单引号即撇号括起来的一个字符除此之外在C语言中还允许用一个\开头的字符序列来表示字符常量其中,形式\ddd表示1到3位8进制数所代表的字符;形式\xhh表示1到2位16进制数所代表的字符在本题中,\x13表示回车符,是一个字符常量;\081用8进制数所代表的字符,但形式不正确,因为8进制数所代表的字符中不会出现数字8;65不是一个字符,而是一个十进制数字;\n是用双引号括起来的一个字符,表示一个字符串,而不是字符常量36D【解析】本题考查数组指针的应用选项D第一层括号中为数组a中第i项元素的值外面再加指针运算符没有意义37B【解析】strcpy函数的功能是将字符串q复制到从p
[3]位置开始的存储单元同时复制字符串结束标志\0到p[6]中函数strlen返回的是字符串中不包括\0在内的实际长度,故本题答案为B)38A【解析】auto变量:无static声明的局部变量用auto作存储类别的声明时可以不写auto存储类别隐含确定为auto自动存储类别是动态存储方式大多数变量是自动变量用static声明的局部变量是静态局部变量函数调用结束后静态局部变量占据的内存存储单元空间不释放局部变量保留原值下次调用时可以继续使用该值用extern声明外部变量外部变量即全局变量可以用extern声明来改变全局变量的作用域实际上关键字auto可以省略auto不写则隐含确定为自动存储类别属于动态存储方式39C【解析】本题考查按位与因为11=100=0所以任何数与自身按位与结果仍为此数不发生变化40A【解析】本题中最主要的是掌握几个有关文件函数的应用函数名:fopen功能:打开一个文件调用方式FILE*fp;fp=fopen文件名使用文件方式;函数名:fprintf功能:传送格式化输出到一个文件中调用方式:fprintf文件指针格式字符串输出表列;函数名:fclose功能:关闭一个文件调用方式:fclose文件指针;函数名:fscanf功能:从磁盘文件执行格式化输入调用方式:fscanf文件指针格式字符串输入列表
二、填空题【1】350【解析】完全二叉树中设高度为n则除h层外其它层结点数都到达最大可以算出h=101至9层结点个数为2^9-1=511最后一层结点个数为700-511=189个189/2=95除最后一层外共有结点2^9-1-95=161个所以所有的结点个数为:189+161=350个【2】边界值分析法【解析】黑箱测试法完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例常用的黑箱测试有等价类划分法、边界值分析法和错误推测法3种【3】关系模型【解析】数据库管理系统是位于用户与操作系统之间的一层系统管理软件属于系统软件是用户与数据库之间的一个标准接口其总是基于某种数据模型可以分为层次模型、网状模型和关系模型【4】软件生命周期【解析】软件产品从考虑其概念开始到该软件产品不能使用为止的整个时期都属于软件生命周期一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动【5】完整性控制【解析】安全性控制:防止未经授权的用户有意或无意存取数据库中的数据以免数据被泄露、更改或破坏;完整性控制:保证数据库中数据及语义的正确性和有效性防止任何对数据造成错误的操作;并发控制:正确处理好多用户、多任务环境下的并发操作防止错误发生;恢复:当数据库被破坏或数据不正确时使数据库将其恢复到正确的状态【6】a=14【解析】本题考查的是表达式的优先级问题先计算表达式3*5=15再计算a+4=14将数据14赋值给a根据printf函数内的输出格式控制串最后的输出结果应为a=14【7】9【解析】本题的字符串中共有9个字符它们分别是I、B、M、\n、
0、
1、
2、\
1、\\,其中,\n表示换行,\\表示反斜杠字符\,所以本题的最后输出结果为9【8】1【解析】在执行逻辑表达式j=!chi++时首先判断j=!ch的值因为ch=$不为0所以j=!ch=0编译系统便不再计算表达式i++的值i的值不变仍为1【9】k=5【解析】本题主要考查了函数的递归调用方法g=0或g=1或g=2是递归的终止条件然后用回代的方法从一个已知值推出下一个值直到计算出最终结果【10】k=p;【解析】为寻找数组中最大元素的下标需先预设1个临时最大元素的下标并顺序逐一考查数组的元素当发现当前元素比临时最大元素更大时就用当前元素的下标更新临时最大元素下标直至考查了数组的全部元素后这临时最大元素下标就是数组的最大元素下标通常预设的最大元素下标是数组的首元素下标考查通常从首元素开始顺序向后继元素考查程序中存储临时最大元素下标的变量是k变量p控制顺序考查的循环控制变量当发现当前元素s[p]比临时最大元素s[k]更大时应该用p更新k所以在空框处应填入代码k=p;【11】I=1【12】x[I-1]【解析】对于10个数相临的两个数相加取和总共要进行9次加法运算所以空14处应填入I=1相临的两个数相加取和放在数组a中x
[0]与x
[1]的和存放在a
[0]中所以空15处应填入x[I-1]【13】#includea:\myfile.txt【解析】本题考查了函数的存储分类的概念如果没有特别说明函数的存储范围是从定义函数的位置到文件的结尾如果其他文件想使用这个函数需要用#include文件包含命令将定义函数的文件包含进来【14】p-data【15】q【解析】本题考查的是链表这一数据结构对结构体变量中数据的引用链表的特点是结构体变量中有两个域一个是数据另一个是指向该结构体变量类型的指针用以指明链表的下一个结点。