首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。此程序的功能是:建立一个带头节点的单向链表,并用随机函数为各节点数据域赋值。函数fun的作用是求出单向链表节点(不包括头节点)数据域中的最大值,
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。此程序的功能是:建立一个带头节点的单向链表,并用随机函数为各节点数据域赋值。函数fun的作用是求出单向链表节点(不包括头节点)数据域中的最大值,
admin
2018-10-21
50
问题
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。此程序的功能是:建立一个带头节点的单向链表,并用随机函数为各节点数据域赋值。函数fun的作用是求出单向链表节点(不包括头节点)数据域中的最大值,并且作为函数值返回。
请改正函数fun中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:
#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﹣>nexL;
}
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*h,FILE*pf)
{NODE*p;
p=h﹣>next;
fprintf(pf,"\n The LIST:\n\nHEAD");
while(p)
{fprintf(pf,"﹣>%d",p﹣>data);
p=p﹣>next;}
fprintf(pf,"\n"),
}
main()
{NODE*head;int m,
system("CLS");
head=creatlink(12,100);
outlink(head,stclout);
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://www.kaotiyun.com/show/N0xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是______。
设函数fun的定义形式为:voidfun(charch,floatx){}则以下对函数fun的调用语句中,正确的是______。
下列程序的运行结果是()。#include<stdio.h>main(){inta=0,b=4,c=0,d=10,x;if(a)d=d-10;else
设“intx=2,y=1;”,则表达式(!x‖y--)的值是()。
下列程序的功能是:求出ss所指字符串中指定字符的个数,并返回此值。例如,若输入字符串123412132,输入字符1,则输出3,请填空。#include<conio.h>#include<stdio.h>#defineM81
设有如下变量定义:doublea=3.500000;floatb=2.5;intm=2,n=3;则表达式“(float)(m+n)/2+(int)a%(int)b”的值是()。
设有如下程序#include<stdio.h>main(){int**k,*j,i=100;j=&i;k=&j;printf("%d\n"”,**k);}上述程序的输
以下程序执行后x的值是main(){intx,y=252,i=386,*m=&y,*z=&i;x=(z==y);printf("%d",x);}
数据的存储结构是指()。
填空补充以下程序。 #define【】30 {【】; total=numPRICE; printf("total=%d,num=%d\n",【】); }
随机试题
糖皮质激素能抑制炎症细胞的迁移和活化、控制哮喘发作;可是临床应该慎用的品种是
直接固位体的作用是
会计凭证保管的内容包括( )。
基金销售机构应当通过()来保障基金销售适用性在基金销售各个业务环节的实施。
下列属于无形市场的是()。
短期融资券筹资的缺点不包括()。
消费者的()是指消费者在自主选择商品或服务时,有权进行比较、鉴别和挑选。
“爱屋及乌”这个成语中涉及的迁移类型是
关于文件的说法,正确的是(32)。
下面属于白盒测试方法的是
最新回复
(
0
)