解题思路:
本题是利用循环计算出记录结构中学生成绩的平均值,再把低于平均值的记录存放到b所指的数组中。具体操作请看答案程序中的说明。
参考答案:
#include
#define N 8
typedef struct
{ char num[10];
double s;
} STREC;
double fun( STREC *a, STREC *b, int *n )
{
int i ;
double ave = 0.0 ;
*n = 0 ;
for(i = 0 ; i < N ; i++) ave = ave + a[i].s ;
ave /= N ; /* 计算平均值 */
for(i = 0 ; i < N ; i++)
if(a[i].s < ave) { /* 把低于平均值的记录存放到b所指的数组中 */
b[*n]=a[i] ;
(*n)++; /* 人数加1 */
}
return ave ; /* 返回平均值 */
}
※※※※※※※※※※※※※※※※※※※※※※※※※