N名学生的成绩已在主函数中放入一个带有头结点的链表结构中,h指向链表的头结点。请编写函数fun,其功能是:找出学生的最高分,并由函数值返回。
注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#include<stdlib.h>
#define N 8
struet slist
double s;
struct slist*next;
;
typedef struct slist STREC;
double fun(STREC*h)
STREC*creat(double*s)
STREC*h,*p,*q;
int i=0;
h=p=(STREC*)malloc(sizeof(STREC));
p->s=0;
while(i<N)
/*产生8个结点的链表,各分数存入链表中*/
q=(STREC*)malloc(sizeof(STREC));
p->s=s[i];i++;p->next=q;
p=q;
p->next=NULL;
return h;/*返回链表的首地址*/
void outlist(STREC*h)
STREC *p;
p=h;
printf("head");
do
printf("->%2.0f",p->s);
p=p->next;
/*输出各分数*/
while(p->next!=NULL);
printf("\n\n");
void main()
double s[N]=85,100,99,85,91,72,64,87,max;
STREC*h;
h=creat(s);
outlist(h);
max=fun(h);
printf("max=%6.1f\n",max);