首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为eh的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。 请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为eh的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。 请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
admin
2018-02-02
33
问题
下列给定程序中,函数fun的功能是:在带头结点的单向链表中,查找数据域中值为eh的结点。找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回0值。
请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include
#include
#define N 8
typedef struet list
int data;
struet list*next;
}SLIST;
SLIST*creatlist(char*);
void ouflist(SLIST});
int fun(SLIST*h,char ch)
{
SLIST*P;int n=0;
P=h一>next;
/******found******/
while(P!=__1__)
{
n++:
if(P一>data:=ch)
/******found******/
return __2__;
else P=P一>next:
}
return 0;
}
main()
i
SLIST$head:int k;char eh;
chae:a[N]=;‘m’,‘P’,’g‘,’a’,‘w’;
‘x’.‘r’,‘d’;;
head:creatlist(a);
outhst(nead);
printf(“Enter a letter:”);
scanf(“%c,&chj:
k:fun(___3___);
if (k==0)
prinff(“\nNot found!\n”);
else
onnff(The sequence number is:%d\n”,k):
}
SLIST*creatlist(char*a)
{
SLIST*h,*P,*q;int i;
h=P=(SLIST*)malloe(sizeof(SLIST));
for(i=0;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)
prinff(“\nThe list is NULL!\n”);
else
{
printf(“\nHead”);
do
{
prinff(“一>%c”,P一>data);
P=p一>next;
}while(P!=NULL);
printf(“一>End\n”);
}
}
选项
答案
(1)NULL (2)n (3)llead,ch
解析
本题考查:链表相关知识;while循环语句;函数返回值。
填空1:while循环语句判断是否到达链表结尾,链表结尾结点指针域是NULL。
填空2:若找到指定字符,则通过return语句将该结点在链表的顺序号返回给main函数。
填空3:函数调用语句,其形式是:函数名(实际参数表),因此根据函数定义语句,填入:heaqd,ch。
转载请注明原文地址:https://kaotiyun.com/show/KWxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中的三个连续结点。 struct node { int data; struct node*next; }*p,*q,*r; 现要将q和r所指结点的先后位置交换,同时要保持链表的连续,
有以下程序#inculdeintFun(){ststicintx=1;x*=2;returnx;}main(){inti,s=1;For(i=1;I
软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的是【】。
有以下程序main(){chara,b,c,d;scanf("%c,%c,%d,%d",&a,&b,&c,&d);printf("%c,%c,%c,%c\n",a,b,c,d);}
下列关于队列的叙述中正确的是()。
以下程序企图把从终端输入的字符输出到名为abc.txt的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。#include main(){ FILE *fout; char ch;fout=fopen(’abc.txt’,’w’);ch=fg
以下叙述中错误的是()。
是构成C语言程序的基本单位。
若x=10010111,则表达式(3+(int)(x))&(~3)的运算结果是()。
软件调试的目的是()。
随机试题
依据施工合同示范文本的规定,下列有关设计变更说法中正确的有( )。
汇总记账凭证账务处理程序特别适用于转账业务少,而收、付款业务较多的单位。()
甲公司为一物流企业,经营国内、国际货物运输业务。由于拥有的货轮出现了减值迹象,甲公司于2×16年12月31日对其进行减值测试。相关资料如下:(1)甲公司以人民币为记账本位币,国内货物运输采用人民币结算,国际货物运输采用美元结算。(2)货轮采用年限平均法
4×(0.25+7.25)+0.25×(4+7.25)+7.25×(4+0.25)=()。
知觉的恒常性中最主要的是______的恒常性。
你参加一个重要考试,上楼梯时眼镜摔碎了,但考试必须要有眼镜,你怎么办?
虚开增值税专用发票、用于骗取出口退税、抵扣税款发票罪的行为方式包括()
假设随机变量U在区间[-2,2]上服从均匀分布,随机变量试求:(I)X和Y的联合概率分布;(Ⅱ)D(X+Y).
[*]①定义循环变量i,字符变量first和字符指针变量p,并使p指向字符串s。②把字符串s的第一个字符赋给first变量保存起来。③在for循环语句中,循环变量i从0开始,依次递增直到其值等于或大于(int)strlen(s)-1,把
Theymay______nextSunday.
最新回复
(
0
)