首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下blankl中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun()的功能是将带头节点的单向链表逆置,即若原链表中从头至尾节点数据域依次为2、4 6 8、10,逆置后,从头至尾节点数
使用VC++2010打开考生文件夹下blankl中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun()的功能是将带头节点的单向链表逆置,即若原链表中从头至尾节点数据域依次为2、4 6 8、10,逆置后,从头至尾节点数
admin
2023-02-27
5
问题
使用VC++2010打开考生文件夹下blankl中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun()的功能是将带头节点的单向链表逆置,即若原链表中从头至尾节点数据域依次为2、4 6 8、10,逆置后,从头至尾节点数据域依次为10、8、6、4、2。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdio.h>
2 #include<stdlib.h>
3 #define N 5
4 typedef struct node {
5 int data;
6 struct node*next;
7 }NODE;
8 void fun(NODE*h)
9 { NODE*p, *q,*r;
10 /*********found*********/
11 p=h-><u>【1】</u>;
12 /*********found*********/
13 if(p==<u>【2】</u>)return;
14 q=p->next;
15 p->next=NULL;
16 while(q)
17 { r=q->next;q->next=p;
18 /*********found*********/
19 p=q; q=<u>【3】</u>;
20 }
21 h->next=p:
22 }
23 NODE*creatlist(int a[])
24 { NODE*h,*P,*q;int i;
25 h=(NODE)malloc (sizeof(NODE));
26 h->next=NULL:
27 for{i=0;i<N;i++)
28 { q=(NODE*)malioc(sizeof (NODE));
29 q->data=a
;
30 q->next=NULL;
31 if(h->next==NULL)
32 h->next=p=q;
33 else{p->next=q;p=q;}
34 }
35 return h;
36 }
37 void outlist(NODE*h)
38 {NODE*p;
39 p=h->next:
40 if(p==NULL)
41 printf("The list is NULL!\n");
42 else
43 {printf("\nHead");
44 do
45 {printf("->%d",p->data);
46 p=p->next;}
47 while(p!=NULL);
48 printf("->End\n");
49 }
50 }
51 main()
52 {NODE*head;
53 int a[N]={2,4,6,8,10};
54 head=creatlist(a);
55 printf("\nThe original list:\n");
56 outlist(head);
57 fun(head);
58 printf{"\nThe List:after inverting:\n");
59 outlist(head);
60 }
选项
答案
(1)next (2)NULL (3)r
解析
填空1:根据题目的要求,将带头节点的单向链表逆置。可知指针p的初值应该为h->next。故空
1处应该填next。
填空2:当链表的头节点指针指向空值时,表示链表没有其他节点,可以不做其他操作,函数返回。故空2处应该填NULL。
填空3:把q的指针向后移动,才能实现将带头节点的单向链表逆置。故空3处应该填r。
转载请注明原文地址:https://kaotiyun.com/show/uP0D777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
设有编号为1,2,3,4,5的五个球和编号为1,2,3,4,5的五个盒子,现将这五个球投入五个盒子内,每个盒子放一个球,并且恰好有两个球的编号与盒子的编号相同,则这样的投放方法有()。
一组数据的方差是2,将这组数据中的每一个数据都扩大3倍,则所得一组新数据的方差是()。
半径分别为60米和40米的两条圆形跑道在点A相切,甲乙两人同时从点A出发,以相同的速度分别沿两个跑道行走,则第一次相遇时沿小圆轨道行走的人一共走了()圈。
已知等差数列{an}的公差不为0,但第三、四、七项构成等比数列,则(a2+a6)/(a3+a7)=()。
在等差数列{an}中,若a4+a7+a10+a13=20,则S16=()。
一出租车司机从饭店到火车站途中有六个交通岗,假设司机在各交通岗遇到红灯这一事件是相互独立的,并且概率都是,那么这位司机遇到红灯前,已经通过了两个交通岗的概率是()。
从0,1,2,3,4,5中任取3个数字,组成没有重复数字的三位数,其中能被5整除的三位数共有()。
设含有8个元素的集合的全部子集数为S,其中由3个元素组成的子集数为T,则是的值为()。
若|x+1|+|2-x|=3,则x的取值范围包括()个整数。
标志着中共中央放弃“反蒋抗日”口号,第一次公开把蒋介石作为联合的对象这一变化发生的文件是《停战议和一致抗日通电》。()
随机试题
每平方米储存量是指仓库每平方米______面积平均______储存商品的数量。
基本时间与焊缝长度成反比。
WhentheTVviewerturnsonhisset,whatsortofprogramsdoeshehavetochoosefrom?Youmightthinktherewouldbemoreprog
关于可转换公司债券的会计处理,下列说法中正确的有()。
银七星室内滑雪场是亚洲规模最大的室内滑雪场之一,位于上海的()。
我国2007全年普通高等教育招生566万人,在校生1885万人,毕业生448万人;各类中等职业教育招生800万人,在校生2000万人,毕业生530万人;全国普通高中招生840万人,在校生2522万人,毕业生788万人;全国初中招生1869万人,在校生573
我国现阶段,不同国有企业的职工付出同样的劳动获得的劳动报酬会有所差别。这是因为()。
互联网目前广泛使用的是IP协议第四版(IPv4),IP地址仅32位,据报道已全部分配完毕,今后在互联网中推广使用的很可能是______。A)IPv4.1B)IPv5C)IPv6D)IPv7
A、 B、 C、 C
【B1】【B10】
最新回复
(
0
)