试题五(共 15 分)
  阅读以下说明和 C 函数,将应填入 (n)处的字句写在答题纸的对应栏内。
[说明]
  某班级有 N 名学生,他们可根据自己的情况选修名称和数量不尽相同的课程。设 N等于 6,学生信息、所选课程及成绩用链表结构存储,如图 5-1 所示。 
    
  程序中相应的类型定义如下:
  #define N 6
  struct node{
   char cname[5]; /*课程名*/
   int grade; /*成绩*/
   struct node *next; /*指针,指示某学生选修的下一门课程及成绩*/
  };
  struct student{
   char xh[5]; /*学号*/
   char name[20]; /*姓名*/
   struct node *link; /*指针,指示出选修的课程及成绩链表*/
  }stud_info[N];
  stud_info[]为一个全局数组。
  函数 func (char kc[],int *num)的功能是统计选修了课程名为 kc 的学生的人数, 并返回该课程的平均成绩(若无人选修该课程,则平均成绩为 0),参数 num 带回选修课程 kc 的学生人数。
[C 函数]
  double func (char kc[],int *num)
  {
   int i,count = 0,sum = 0; /*count 用于记录选修课程名为 kc 的学生的人数*/
   double avg = 0.0;
   struct node *p;
   for(i = 0; i < N; i++){
    p = (1) ; /*取第 i 个学生所修课程链表的头指针*/
    while (p) {
     if ( (2) ) {
      sum = (3) ;
      count++;
      break;
     } /*if*/
     p = p->next;
    } /*while*/
   }
    (4) ;
   if ( (5) )
    avg = (double)sum / count;  /* 计算平均成绩 */
   return avg;
  } /*func*/

发布于 2022-05-10 21:57:03

登录后免费查看答案
关注者
0
被浏览
34
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看