首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列给定程序的功能是:建立一个带头结点的单向链表,并用随机函数为各结点数据域赋值。函数fun的作用是求出单向链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回。 请改正函数fun中的错误,使它能得出正确的结果。 注意:部分源程序在
下列给定程序的功能是:建立一个带头结点的单向链表,并用随机函数为各结点数据域赋值。函数fun的作用是求出单向链表结点(不包括头结点)数据域中的最大值,并且作为函数值返回。 请改正函数fun中的错误,使它能得出正确的结果。 注意:部分源程序在
admin
2019-04-04
41
问题
下列给定程序的功能是:建立一个带头结点的单向链表,并用随机函数为各结点数据域赋值。函数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全国计算机二级
相关试题推荐
以下程序运行后的输出结果是[]。main(){intx,a=1,b=2,c=3,d=4;x=(a<b)?a:b;x=(x<c)?x:c;x=(d>x)?x:d;pri
若按功能划分,软件测试的方法通常分为白盒测试方法和【】测试方法。
分析下列程序:#include<stdio.h>main(){int*p1,*p2,*p;inta=6,b=9;p1=&a;p2=&b;if(a<b){p=p1;p1=p2;p2=p
变量p为指针变量,若p=&a,下列说法不正确的有______。
利用fseek函数可实现的操作是()。
以下4个程序中,完全正确的是
有下列二叉树,对此二叉树前序遍历的结果为()。
下列程序的运行结果是:【】。#include<stringh>char*ss(char*s){returns+strlen(s)/2;}main(){char*p,*str="abcdefgh";p=
函数sub的功能是根据下面近似分式求π的值。(π*π)/6=1+1/(2*2)+1/(3*3)+…+1/(n*n)现在请在下面的函数中填空,完成求π值的功能。#include"math.h"doublesub(longm
下列程序的输出结果是()。#include<stdio.h>main(){structst{inty,x,z;};union{longi;intj;char
随机试题
A.40岁患者超声发现“子宫肌瘤”,如孕2个多月大小B.黏膜下子宫肌瘤脱出阴道内C.子宫肌瘤如孕2个月大小,血红蛋白67.0g/LD.48岁患者,发现肌瘤3年,如孕50天左右大小E.28岁患者,孕1产0,发现肌壁间肌瘤5cm3大小经阴道
用紫外线灯管消毒物品,下列哪项是错误的
听诊时为清楚的听到急性心包炎患者的心包摩擦音,患者应采取的体位是
设计单位推荐材料时应遵循()的原则。
施工企业发生以下情形,建设单位请求解除施工合同,人民法院应予支持的是()。
工业增加值等于工业总产值减去工业中间投入加上本期应交增值税,若工业企业本期应交增值税为负数,则综合部门汇总时按零处理。()
委托加工应税消费品均由受托方代收代缴消费税。()
下列关于我国古代文字常识的表述,不正确的是:
根据以下资料,回答下列问题。2012年1~4季度该市人均消费支出八大类中,同比增长的大类占人均消费总支出的比重比同比下降的大类()个百分点。
Now,aboutFranceinWorldWarn.Inthisperiodoftime,ominous【T1】______beganinGermanyandItaly.TheGermansreclaimedAl
最新回复
(
0
)