首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。 请在程序的中括号处填入正确的内容并将中括号删除,使程序得出正确的结果。
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。 请在程序的中括号处填入正确的内容并将中括号删除,使程序得出正确的结果。
admin
2016-08-16
68
问题
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为ch的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。
请在程序的中括号处填入正确的内容并将中括号删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include
#include
#define N 8
typedef struct list
{ int data;
strLlCt list*next;
}SLIST;
SLIST*Crearlist(char*);
void outlist(SLIST*);
int fun(SLTST*h,char ch)
{ SLIST*p; int n=0;
p=h一>next;
/*********found*********/
while(p!=【1】)
{ n++;
/*********found*********/
if(p一>data==ch)
return【2】;
else p=p一>next;
}
return 0:
}
main()
{ SLIST*head;int k;char ch;
char a[N]={’m’,’p’,’q’,’a’,
’w’,’x’,’r’,’d’};
head=crearlist(a);
outlist(head);
print;f(”Enter a letter:”);
scarlf("%c",&ch);
/*********found*********/
k=fun(【3】);
if(k==0)
printf("\nNot found!\n");
else
printf("The sequence
number is:%d\n",k);
}
SLIST*creatlist(char*a)
{ SLIST*h,*p,*q;int i;
h=p=(SLIST*)malloc(sizeof(SLIST));
for(i=0;i
{q=(SLIST*)ma210c(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("一>%c",
p一>data);p=p一>next;}
while(P!=NULL);
printf("一>End\n");
}
}
选项
答案
(1)NULL (2)n (3)head,ch
解析
填空1:while循环语句用来判断是否到达链表结尾,链表结尾结点指针域是NULL。
填空2:若找到指定字符,则通过return语句将该结点在链表的顺序号返回给main函数。
填空3:函数调用语句,其形式是:函数名(实际参数表),因此根据函数定义语句,填入head,ch。
转载请注明原文地址:https://kaotiyun.com/show/qaNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<iostream>usingnamespacestd;intmain(){intnum[2][3],*p;intt,i,j,k
若有数组名作为实参,则传递给形参的是()。
有以下程序:#include<iostream>usingnamespacestd;intmain(){chara[10]={’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’
以下程序的输出结果是【】。#include<iostream.h>voidmain(){chars[]="abcdef";s[3]=’\0’;cout<<s<<endl;}
根据数据结构中各数据元素之问前后件关系的复杂程度,一般将数据结构分成
对虚函数的调用有两种方式:【】和【】。
在程序设计阶段应该采取【】和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,进而用某种程序设计语言写成程序。
请选出以下程序段的输出结果()。#include<iostream>usingnamespacestd;#defineMIN(x,y)(x)<(y)?(x):(y)intmain()
友元类的所有成员函数都是另一个类的【】。
设有语句:charstr1[]="string",str2[8],*str3,*str4="string";则下列对库函数strcpy()调用不正确的是()。
随机试题
_______是指当从一张幻灯片转到另一张幻灯片时候的过渡效果。
下列有关“国法”的理解,哪些是不正确的?(2012年卷一54题)
如果一个存储单元能存放一个字节,则容量为32KB的存储器中的存储单元个数是()。
下列属于支付结算的是()。
某上市公司2015年年底流通在外的普通股股数为5000万股,2016年5月7日派发普通股股利1000万股,2016年7月1日经批准增发普通股250万股,2016年净利润为1600万元,其中应付优先股股利为200万元,则2016年的基本每股收益为()
抵押是担保的一种方式,根据《物权法》,下列说法正确的是()。
【2014广发银行】X企业资产总额为6000万元,以银行存款500万元偿还借款,并以银行存款500万元购买固定资产后,该企业资产总额为()万元。
学校应当全面贯彻国家的教育方针,实施素质教育,提高教育质量,注重培养未成年学生(),促进未成年学生全面发展。(2015·湖南)
A.髓袢升支和降支B.近端小管和远端小管C.近端小管和集合管D.远端小管和集合管尿液的稀释主要发生在
在VLAN的划分中,不能按照以下哪种方法定义其成员?()
最新回复
(
0
)