首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,已建立一个带有头结点的单向链表,链表中的各结点包含数据域(data)和指针域(next),数据域为整型。函数fun的作用是:找出链表各结点数据域中的最大值,其最大值由函数值返回。 请在程序的下划线处填入正确的内容并把下划 线删除,使程序
给定程序中,已建立一个带有头结点的单向链表,链表中的各结点包含数据域(data)和指针域(next),数据域为整型。函数fun的作用是:找出链表各结点数据域中的最大值,其最大值由函数值返回。 请在程序的下划线处填入正确的内容并把下划 线删除,使程序
admin
2020-06-02
34
问题
给定程序中,已建立一个带有头结点的单向链表,链表中的各结点包含数据域(data)和指针域(next),数据域为整型。函数fun的作用是:找出链表各结点数据域中的最大值,其最大值由函数值返回。
请在程序的下划线处填入正确的内容并把下划
线删除,使程序得出正确的结果。
注意:源程序存放在文件BLANK1.C中,不得增行或删行,也不得更改程序的结构!
#include<stdio.h>
#include<stdlib.h>
#pragma warning(disable:4996)
struct list
{
int data;
struct list*next;
};
struct list*createlist (int data[],int n)
{
struct list*head=0,*p,*q;
int i;
head=(struct list*)malloc(sizeof(struct list));
head一>data=data[0];
p=q=head;
for(i=1;i<n;i++)
{
p=(struct list*)malloc(sizeof(struct list));
p一>data=data
;q一>next=p;q=p;
}
p一>next=NULL;
return head;
}
/*********found*********/
int func(
【1】
head)
{ int pmax=head一>data;
struct list*p=head一>next;
whil e(p!=NULL)
{if(p一>data>pmax)pmax=p一>data;
/*********found*********/
p=
2】
;
}
/*********found*********/
【3】
}
void main()
{
int data[]={123,21,65,789, 32, 310, 671, 651,81,101},pmax;
struct list*head;
head=createlist(data,10);
pmax=func(head);
printf("Nax=%d\n”",pmax);
}
选项
答案
(1)struct list* (2)p一>next; (3)return pmax;
解析
程序定义了结构体类型list,用来作为链表的结点类型,它包含两个成员:data数据成员,next指针成员。func()函数参数为链表的头结点指针,pmax用来存放最大值,通过while循环遍历整个链表,在遍历的过程中,将当前结点的data与pmax比较,若pmax小于当前结点的data,则使用当前结点的data更新pmax,最后将pmax的值作为函数返回值返回。
转载请注明原文地址:https://kaotiyun.com/show/yqCp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列定义数组的语句中错误的是()。
有以下函数:intfun(char*s){char*t=s;while(*t++);return(t-s);}该函数的功能是()。
有以下程序:#include<stdio.h>main(){inty=10:while(y--);printf("y=%d\n",y);}程序执行后的输出结果是()。
度为3的一棵树共有30个结点,其中度为3,1的结点个数分别为3,4。则该树中的叶子结点数为()。
某带链栈的初始状态为top=bottom=NULL,经过一系列正常的入栈与退栈操作后,top=bottom=20。该栈中的元素个数为()。
在线性表的链式存储结构中,其存储空间一般是不连续的,并且()。
若有定义intx,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++):(y++)中的条件表达式(x-y)等价的是()。
有以下程序#includemain(){inti,s=1:intfun(){staticintx=1;for(i=1;i
有以下程序#includemain(){intk=4,m=1,p;fun(inta,intb){intstaticm=0,i=2;p=fun(k,m);i=i+m+1;
随机试题
患儿,40天,因“反复呕吐34天,腹泻3天”就诊。患儿于出生后6天无明显诱因出现呕吐,吃奶后即吐,非喷射性,呕吐物为胃内容物,3天前出现腹泻,7~8次/d,为绿色稀水样便,精神萎靡,在当地医院治疗无明显好转。病程中无发热、咳嗽、抽搐等。患儿为G2P2,足月
何谓组织性缺氧?由哪些原因引起?
在选择传播途径时,要根据具体受者、具体情况进行选择,依据的是
好的核素图像应具备条件,错误的是
氟烷用于以下何种麻醉
女,55岁,近口角处颊粘膜白色斑块近1年,不能擦去。组织学见上皮增生,内有中性粒细胞浸润和散在微脓肿,角化层有垂直于上皮的PAS阳性菌丝,结缔组织内慢性炎细胞浸润。最可能的病理诊断是
非货币性资产交换同时换入多项资产的,在确定各项换入资产的成本时,下列说法中,正确的是()。
关于公文的用印,下列说法不正确的是()。
社学的教育对象是()
下列关于综合布线系统的描述中,错误的是()。
最新回复
(
0
)