首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序的功能是:建立一个带头结点的单向链表,并用随机函数为各结点数据域赋值。函数fun的作用是求出单向链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回。 请改正函数fun中的错误,使它能得出正确的结果。 注意:部分源程序在
下列给定程序的功能是:建立一个带头结点的单向链表,并用随机函数为各结点数据域赋值。函数fun的作用是求出单向链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回。 请改正函数fun中的错误,使它能得出正确的结果。 注意:部分源程序在
admin
2019-04-04
36
问题
下列给定程序的功能是:建立一个带头结点的单向链表,并用随机函数为各结点数据域赋值。函数fun的作用是求出单向链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回。
请改正函数fun中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动mun函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdio.h >
#include < conio .h >
#include < stdlib.h >
typedef struct aa
{ int data;
struct aa * next;
} NODE;
fun (NODE *h)
{ int max =一1;
NODE *p;
/*********found*********/
p =h;
while (p)
{ if (p 一 > data > max)
max =p 一 > data;
/*********found*********/
p =h 一 > next;
}
return max;
}
outresult (int s, FILE*pf)
{ fprintf (pf, "\nThe max in link
:%d\n",s);
}
NODE * creatlink (int n. int m)
{ NODE *h,*p,*s;
int i;
h =p = (NODE * ) malloc (sizeof
(NODE));
h 一 > data =9999;
for (i=1;i < 一n;i++)
{ s = (NODE * ) malloc (sizeof
(NODE));
s 一 > data = rand () % m;
s 一 > next =p 一 > next;
p 一 > next = s; p =p 一 > next;
p 一 > next = NULL;
return h;
}
outlink (NODE *hf FILE *pf)
{ NODE *p;
p =h 一 > next;
fprintf (pf, "\n The LIST :\n\n
HEAD") ;
while (p)
{ fprintf (pf, " 一 > %d",p 一 > data) ;
p =p 一 > next; }
fprintf (pf, "\n") ;
}
main()
{NODE*head;int m;
system("CLS");
head=creatlink(12,100);
outiink(head,stdout);
m=fun(head);
printf("\nThe RESULT:\n");
outresult(m,stdout);
}
选项
答案
(1)p=h一 >next; (2)p=p一 >next;
解析
(1)因为链表的头结点没有数据域,所以对指针p进行初始化时,要将p指向头结点的下一个结点。
(2)通过指针p的移动遍历链表,因此此处应改为p=p一 > next;。
转载请注明原文地址:https://kaotiyun.com/show/nnRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有如下程序;intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(func(x,y),z);pr
设树T的度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1,则T中的叶子结点数为()。
数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及
数据处理的最小单位是
有下列程序:#include<stdio.h>main(){charc;while((c=getchar())!=’,’)putchar(++C);}程序运行时,如果从键盘输入:A,B,<CR>,则输出结
下列程序的输出结果是______。intm=10;intfun(inta,intB){intm=2;return(a*b-m);}main(){intx=7,y=5;
若有以下程序: main( ) { int k=2,i=2,m; m=(k+=i*=k);printf("%d,%d\n",m,i); } 执行后的输出结果是
以下4个程序中,完全正确的是
随机试题
某校通过创设良好的环境,如提供美观清洁的校园、朴实庄重的校舍、明亮整洁的教室,营造良好的学风班风来对学生进行道德教育。这种做法体现的德育方法的是()。
股票发行市场的参与者包括()
高能电子线等剂量线分布的显著特点是
男性,45岁,酗酒后2小时发生上腹部持续性剧痛,并向左肩、腰背部放射,伴恶心呕吐,吐后疼痛不缓解。8小时后就诊。患者体温38℃,血压120/80mmHg,脉率100/min,血白细胞15×109/L,最不恰当的处理是
根据货物采购合同管理中价格条款的规定,不需在价格条款中写明的是()。
某职员2008年6月月薪2400元,单位向社保基金管理中心为其扣缴基本养老保险192元、基本医疗保险48元、失业保险24元;并代扣其供暖费500元,则其当月个人所得税为( )元。
下列说法正确的是()。
学科活动
(1)JustwhenTransportforLondon(TfL)thoughtthebikehireschemeprovidedananswertoLondon’scarbonemissionsproblem,th
A、Theymayattendfewermeetings.B、Theycanhelpchoosetheproductsthatwillbesold.C、Theycanpaylowermembershipfee.D、
最新回复
(
0
)