首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向—个链表中连续的三个结点。 street node { char data; struct node *next; } *p,*q
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向—个链表中连续的三个结点。 street node { char data; struct node *next; } *p,*q
admin
2013-02-23
130
问题
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向—个链表中连续的三个结点。 street node { char data; struct node *next; } *p,*q,*r;
现要将q和r所指结点交换前后位置,同时要保持链表的连续,以下不能完成此操作的语句是______。
选项
A、q->next=r->next; p->next=r,r->next=q;
B、p->next=r,q->next=r->next;r->next=q;
C、q->next=r->next;r->next=q;p->next=r,
D、r->next=q;P->next=r;q->next=r->next;
答案
D
解析
选项D中首先将q赋给r->next,也就是将结点q的地址存放在结点r的指针域中;接着将r赋给p->next,也就是将结点r的地址存放在结点p的指针域中,此时完成了q和r所指结点的交换。q->next=r->next的目的是想将q的指针域指向下—个结点的数据地址,但由于—开始执行了r->next=q,即已将r的指针域中存放了q结点的地址,所以再做操作“q->next=r->next”就相当于将q指向了其本身,也就是和下—个结点断开了,所以选项D操作错误。
转载请注明原文地址:https://www.kaotiyun.com/show/06Jp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有如下定义:ints[3]则下面表达式中不能代表数组元素s[1]的地址的是()
以下程序的输出结果是()main(){charss[16]="test\0\n\"";printf("%d,%d\n",strlen(ss),sizeof(ss)):}
下面被调用函数sub的函数值的类型是()sub(floatA){floatb;b=a*a+1;returnb;}
若以下程序所生成的可执行文件名为file1.exe,main(intargc,char*argv[]){while(argc-->0){++argv;printf("%s",*argv);}}当键入以下命令执行该程序时
假定所有变量均已正确说明,下列程序段运行后x的值是a=d=c=0;x=35;if(!a)x=-1,elseif(b);if(c)x=3;elsex=4;
有以下程序main(){inta=0,i;for(i=1;i<5;i++){switch(i){case0case3:a+=2
下面函数的功能是:找出一维数组元素中最大的值和它所在的下标,最大值的和它所在的下标通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n是x中的数据个数,max存放最大值,index存放最大值所在元素的下标。请填空。#include<
下面程序运行后的输出结果是______。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=-s[0]
随机试题
休克患者代偿期的主要表现为脉细速伴()
Studentswillneed【21】alloftheirlanguageskillsinorder【22】understandthereadingselectionsinReader’sChoice.Thebookco
PsychologistGeorgeSpilichandcolleaguesatWashingtonCollegeinChestertown,Maryland,decidedtofindoutwhether,asmany
为提高跳高运动员的比赛成绩,应有侧重地训练其下肢的哪一类型肌纤维
为解决之间食物嵌塞,设计卡环固位体时,应设计为
肌的辅助装置不包括()。
下列除哪项外,均有脉率快的特点
灌模剩余的沥青可以反复使用,反复使用的次数不得超过2次。()
根据《统计法》规定,统计机构和统计人员独立行使,且不受侵犯的职权是()。
根据民通意见的有关规定,下列选项中,属于近亲属的是()
最新回复
(
0
)