首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。 请在程序的下画线处填入正确的内容并将下画线删除,使
下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。 请在程序的下画线处填入正确的内容并将下画线删除,使
admin
2017-09-23
38
问题
下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdio.h >
#include < stdlib.h >
#define N 8
typedef struct list
{ int data;
stEUCt liSt*next;
}SLIST;
void fun(SLIST*h,int x)
{ SLIST*p,*q,*s;
s=(SLIST*)malloi(Sizeof
(SLIST));
/*********found*********/
s一 >data=
【1】
;
q=h;
P=h一 >next;
while (p!=NULL&&x >p一 >data)(
/*********found*********/
q=
【2】
;
p=p一 >next;
}
s一 >next=p;
/*********found*********/
q一 >next=
【3】
;
}
SLIST,lc creatlist(int*a)
{ SLIST*h,*p,*q;int i;
h=p=(SLIST*)malloc(si—
zeof(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("\nThe list is NULL!\
n");
else
{printf("\nHead");
do{printf("一 >%d",p一 >
data);
p=p一 >next;
}while(p!=NULL);
printf("一 >End\n");
}
}
main()
{ SLIST*head; int x;
int a[N]={11,12,15,18,19,22,25,29};
head=creatlist(a);
printf("\nThe list before
inserting:\n");
outlist(head);
printf("\nEnter a number:");
scanf("%d",&x);
fun(head,x);
printf("\nThe list after
inserting:\n");
outlist(head);
}
选项
答案
(1)x (2)p (3)s
解析
本题考查:链表的基本操作。了解链表的基本思想和相关算法,理解有关链表插入及删除时指针移动的先后顺序问题,注意指针的保存和归位。
填空1:将形参x赋值给结点的数据域。
填空2和填空3:将新的结点和原有链表中的结点进行比较。
转载请注明原文地址:https://jikaoti.com/ti/sFi0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若函数中有定义语句:inta;,则()。
下面程序的输出结果是()。#include<stdio.h>main(){chara[]={’a’,’b’,’c’,’d’,’f’,’g’},*p;p=a;printf("%c\n",*p+4);}
有以下程序:#include<stdio.h>#defineN8voidfun(int*x,inti){*x=*(x+i)+1;}main(){inta[N]={1,2,3,4,5,6,7,8},i
C语言中允许用外部说明来指定变量、函数和其他标识符的特征,这里所说的外部指的是()。
设变量均已正确定义,若要通过scanf("%d%c%d%c”,&a1,&e1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。下列所示的输入形式中正确的是(注:口代表空格字符)()。
下面的程序在编泽时产生错误,其出错原因是()。#include<stdio.h>main(){int1_case;floatprintF;printf("请输入2个数:");scanf("%d%f",&
以下语句段执行后的输出结果是()。#include<stdio.h>main(){intk=3;if(k)printf("###")elseprintf("&&&&");}
若有以下定义和语句:inta=010,b=0×10,c=10;printf("%d,%d,%d\a",a,b,C);则输出结果是()。
若有以下定义(设int类型变量占2个字节)inti=8,j=9:则以下语句:printf("i=%%d,j=%%%d\n",i,j);输出的结果是()。
读取二进制文件的函数调用形式为:fread(buffer,size,count,pf);,其中buffer代表的是()。
随机试题
( )是指由施工企业自行组织,主要根据企业的自身情况,包括人员素质、机械装备程度、技术和管理水平等编制,在本企业内部使用的定额。
下列不属于市场风险管理主要措施的是()。
财政收入与支出的差额即为财政赤字(差值为正时)或财政结余(差值为负时)。()
上海证券交易所、深圳证券交易所于1990年12月以后相继营业。()
下列关于单一性的说法哪个是正确的?
推理是指从具体事物归纳出一般规律,或者根据一般原理推出新结论的思维过程。推理可分为_______和演绎推理。
有关行政部门在接到教师申诉书后,针对不同的情况,应做出的处理,下列说法错误的是()
民族自治地方的人民代表大会在自治权范围内,依法根据当地民族的特点,针对某一方面问题制定的规范性文件属于()。
目前有许多不同的音频文件格式,下列哪一种不是数字音频的文件格式()。
A、Takefourpillseveryday.B、Refusetotakeanypills.C、Takethedoctor’sadvice.D、Putthepillsinthebottle.C
最新回复
(
0
)