全国计算机无纸化二级c语言程序设计题总结二

学生的记录由学号和成绩组成,N名学生的数据已放入主函数中结构体数组s中。

(1)把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。

例如:输入的分数是6069.则应当把分数在60~69的学生数据输出,包含60分和69分的学生数据,主函数中把60放在low中,把69放在heigh中,。

int  fun(strec *a,strec *b,int l, int h)

{

int i,j=0;

for(i=0;i<N;i++)

if(a[i].s>=l&&a[i].s<=h)

b[j++]=a[i];

return j;

}

(2)功能:把低于平均分的学生数据放入b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。

Double fun(STREC *a,ATREC *b,int  *n)

{

 int i,j=0;

 double av=0.0;

for(i=0;i<N;i++)

av=av+a[i].s;

av=av/N;

for(i=0;i<N;i++)

if(a[i].s<av)

b[j++]=a[i];

*n=j;

return av;

}

(3)功能:把高于平均分的学生数据放入b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。

double fun(strec *a,strec *b,int *n)

{

int  i;

double av=0.0;

*n=0;

for(i=0;i<N;i++)

if(av<=a[i].s)

{

 b[*n]=a[i];

*n=*n+1;

}

return av;

}

 

(4)某学生的记录友学号,8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出,功能:求出该学生的平均分,并放入记录的ave成员中,

Void fun(strec *a)

{

int i;

a->ave=0;

for(i=0;i<N;i++)

a->ave=a->ave+a->s[i];

a->ave=a->ave/N;

}

(5)N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h执向链表的头结点。功能:求出平均分,并由函数值返回。

Double fun(STREC *h)

{

 double av=0.0;

STREC *p=h->next;

While(p!=NUll)

{

av=av+p->s;

p=p->next;

}

return av/N;

}

(6)计算n门课程的平均分,结果作为函数值返回

Float fun(float *a,int n)

{

 float av=0.0;

 int i;

for(i=0;i<n;i++)

av=av+a[i];

Return(av/n);

}

 

 

 

 

 

 

 

 

 

 

计算平均分方法:

for(i=0;i<n;i++)

av=av+a[i];

return (av/n);

你可能感兴趣的:(全国计算机无纸化二级c语言程序设计题总结二)