首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为c结点。找到后通过函数值返回该结点在链表中所:顺序号;若不存在值为ch的结点,函数返回0值。 请在程序的下画线处填入正确的内容并将一线删除,使程序得出正确的结果。
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为c结点。找到后通过函数值返回该结点在链表中所:顺序号;若不存在值为ch的结点,函数返回0值。 请在程序的下画线处填入正确的内容并将一线删除,使程序得出正确的结果。
admin
2020-11-27
22
问题
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为c结点。找到后通过函数值返回该结点在链表中所:顺序号;若不存在值为ch的结点,函数返回0值。
请在程序的下画线处填入正确的内容并将一线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
1 #include<stdio.h>
2 #include<stdlib.h>
3 #define N 8
4 typedef struct list
5 { int data;
6 struct list * next;
7 } SLIST;
8 SLIST * creatiist(char*);
9 void outlist(SLIST * );
10 int fun(SLIST * h,char ch)
11 { SLIST * p; int n=0;
12 p=h->next ;
13 /*********found*********/
14 while(p!=
【1】
)
15 { n++;
16 /*********found*********/
17 if(p->data==ch)
18 return
【2】
;
19 else p=p->next;
20 }
21 return 0;
22 }
23 msin()
24 { SLIST * head;int k;char ch;char a[N]={’m’,’p’ ,’g’,’a’,’w’,’x’,’r’,’d’}:
25 head=creatiist(a);
26 outlist(head);
27 printf(’’Enter a letter:’’);
28 scanf(’’%c’’,&ch);
29 /*********found*********/
30 k=fun(
【3】
);
31 if(k=:0)
32 printf(’’\nNot found!\n’’);
33 else
34 printf(’’The sequence number is:%d\n”,k);
35 }
36 SLIST*creatlist(char*a)
37 { SLIST*h *p,*q;int i;
38 h=p=(SLIST*)malloc(si-zeof(SLIST));
39 for(i=0;i<N;i++)
40 {q=(SLIST*)malloc(si-zeof(SLIST));
41 q->data=a
; p->next=q;
42 p=q;
43 }
44 p->next=0;
45 return h;
46 }
47 void outlist(SLIST*h)
48 { SLIST*p;
49 p=h->next ;
50 if(p==NULL)
51 printf(’’\nThe list is NULL!\n’’);
52 else
53 {printf(’’\nHead’’);
54 do
55 {printf(’’->%c’’,
56 p->data);p=p->next;}
57 while(p!=NULL);
58 printf(’’->End\n’’);
59 }
60 }
选项
答案
(1)NULL (2)n (3)head,ch
解析
填空1:while循环语句用来判断是否到达链表结尾,链表结尾结点指针域是NULL。
填空2:若找到指定字符,则通过return语句将该结点在链表的顺序号返回给main函数。
填空3:函数调用语句,其形式是:函数名(实际参数表),因此根据函数定义语句,填入head,ch。
转载请注明原文地址:https://jikaoti.com/ti/sRD0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includemain(){inta=1,b=0;printff"%d,",b=a+b);printf("%d\n",a=2*b);}程序运行后的输出结果是
以下叙述中错误的是
若变量已正确定义,在if(W)printf("%d\n",k);中,以下不可替代W的是
以下叙述中正确的是
若有以下定义和语句chars1[10]="abcd!",*s2="\n123\\";printf("%d%d\n",strlen(s1),strlen(s2));则输出结果是
以下选项中关于C语言常量的叙述错误的是
有以下程序段int*p;p=_________malloc(sizeof(int));若要求使p指向一个int型的动态存储单元,在横线处应填入的是
在软件开发中,下面不属于设计阶段的任务的是()。
以下选项中不能用于描述算法的是()。
在软件开发中,需求分析阶段可以使用的工具是
随机试题
试论述虚拟团队的人力资源管理。
血淋虚证宜选用便血湿热蕴蒸证宜选用
关于药品注册管理的基本制度和要求,说法错误的是
某国有企业拟改制为公司。除5个法人股东作为发起人外,拟将企业的190名员工都作为改制后公司的股东,上述法人股东和自然人股东作为公司设立后的全部股东。根据我国公司法的规定,该企业的公司制改革应当选择下列哪种方式?(2007年试卷三第25题)
对明代都察院司法执掌表达不正确的是:()
对于水泥土搅拌桩采用水泥作加固料的说法,正确的是()。
面包()时,不能食用。
对两个数组a和b进行下列初始化:charm[]="1234567";charn[]={’1’,’2’,’3’,’4’,’5’,’6’,’7’};则下列叙述正确的是()。
ThefamilyisthecenterofmosttraditionalAsians’lives.Manypeopleworryabouttheirfamilies’welfare,reputation,andhon
Insiders"Insiders,"rated"R"andwitharunningtimeofabouttwohoursandfortyminutesisanintelligentthrillerabou
最新回复
(
0
)