首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中已建立了一个带头结点的单向链表,链表中的各结点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。 请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:不得增行或删行,也
下列给定程序中已建立了一个带头结点的单向链表,链表中的各结点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。 请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:不得增行或删行,也
admin
2020-06-16
64
问题
下列给定程序中已建立了一个带头结点的单向链表,链表中的各结点按数据域递增有序链接。函数fun的功能是:删除链表中数据域值相同的结点,使之只保留一个。
请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<stdlib.h>
#define N 8
typedef struct list
{int data;
struct list*next:
}SLIST;
void fun(SLIST*h)
{
SLIST*p,*q;
p=h—>next;
if(p!=NULL)
{
q=p—>next;
while(q!=NULL)
{if(p—>data==q—>data)
{p—>next=q—>next;
/ * * * * * * found * * * * * * /
free(
1
);
/ * * * * * * found * * * * * * /
q=p—>
2
;
}else
{p=q;
/ * * * * * * found * * * * * * /
q=q—>
3
;}
}
}
}
}
SLIST*creatlist(int*a)
{
SLIST*h,*p,*q;int i;
h=p=(SLIST*)malloc(sizeof(SLIST));
for(i=0;i<N;i++)
{
q=(SLIST*)malloc(sizeof(SLIST));
q—>data=a
;p—>next=q;p=q;
}
p—>next=0;
return h;
}
void outlist(SLIST*h)
{SLIST*p;
p=h—>next;
if(p==NULL)
printf("The list is NULL!\n");
else
{printf("\nHead");
do{
printf("—>%d”,p—>data);
p=p—>next;
}while(p!=NULL);
printf("—>Endkn");
}
}
main()
{
SLIST*head:
int a[N]={1,2,2,3,4,4,4,5};
head=creatlist(a):
printf("The list before deleting:n");
outlist(head);
fun(head);
printf("The list after deleting:n");
outlist(head);
}
选项
答案
(1)q (2)next (3)next
解析
本题考查:释放内存空间函数free();链表结点的基本操作。
填空1:使用free函数,释放q所指的内存空间,其一般格式为:free(指针变量)。
填空2和填空3:删除链表中符合条件结点后,指针要指向下一个结点。
转载请注明原文地址:https://kaotiyun.com/show/AdCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有以下程序:#include<stdio.h>main(){inta=6,b=0,c=0;for(;a;){b+=a;a一=++c;)printf("%d,%d,%d\n",a,b,c);}
请编函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。可调用strlen函数求字符串的长度。例如,在键盘输入字符串2345210,函数返回长整型数2345210。注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun
下列给定程序中,函数fun的功能是:依次取出字符串中所有的数字字符,形成新的字符串,并取代原字符串。请改正函数fun中的错误,使它能得出正确的结果。注意:不得增行或删行,也不得更改程序的结构!试题程序:#include#inc
以下叙述中正确的是()。
设文件指针fp已定义,执行语句fp=fopen(“file”,“w”);后,以下针对文本文件file操作叙述的选项中正确的是()。
请编一个函数voidfun(inttt[M][N],intPP[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指的一维数组中。二维数组中的数已在主函数中给出。注意:部分源程序给出如下。请勿改
结构化程序设计的基本原则不包括
结构化程序设计强调
软件(程序)调试的任务是
随机试题
A.青霉素类B.头孢菌素类C.碳青霉烯类D.氨基糖苷类E.多黏菌素类杀菌靶值≥40%~50%的抗菌药物是
下列属于快速性心律失常的是
土地总登记是按照()进行的。A.基准地价区B.土地利用总体规划的允许建设区C.行政辖区D.城市总体规划的规划区
为了有效地控制建设工程进度,监理工程师要在设计准备阶段( )。
申请投资主办人注册的人员应当具备的条件不包括()。
有一位9个月的儿童疑有蛋白质一能量营养不良,请您设计一个方案对其进行营养状况评价与判别。[江苏2011年三级真题]
2017年,某省全省园林水果面积1987.30万亩,比上年增长4.8%。其中,苹果的挂果面积为726.21万亩,同比增长4.1%;梨的挂果面积为61.29万亩,同比增长一1.0%;柑橘的挂果面积为40.26万亩,同比增长4.5%;桃的挂果面积为45.05万
以下关于变量作用域的叙述中,错误的是
Onlyonelittleboy______theaccident.Everyoneelsewaskilled.
+11=______
最新回复
(
0
)