http://www.educity.cn 作者:不详 来源:希赛教育
 求一个链表的所有元素的平均值

  typedef struct { int num;

  float ave;

  }Back;

  typedef struct node{ float data;

  struct node *next;

  } Node;

  Back *aveage(Node *head)

  { Back *p,*q;

  p=(Back *)malloc(sizeof(Back));

  if (head==NULL)

  { p->num=0;

  p->ave=0; }

  else

  { (1) ;

  p->num=q->num+1;

  (2) ; }

  retuen p;

  }

  main()

  { Node *h; Back *p;

  h=create(); /*建立以h为头指针的链表*/

  if (h==NULL) printf("没有元素");

  else { p=aveage(h);

  printf("链表元素的均值为:%6f",p->ave);

  }

  }

  参考答案:(1)q=aveage(head->next)

  (2)p->ave=(head->data+q->ave*q->num)/p->num