C语言编程>第七周 ⑦ 学生的记录由学号和成绩组成,M名学生的数据已在主函数中放入结构体数组score中,请编写函数fun,它的功能是把分数最低的学生数据放在low所指的数组中。

例题:学生的记录由学号和成绩组成,M名学生的数据已在主函数中放入结构体数组score中,请编写函数fun,它的功能是把分数最低的学生数据放在low所指的数组中,注意:分数最低的学生可能不只一个,函数返回分数最低的学生的人数。

请勿改动主函数main与其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

代码如下:

#include
#define M 10
typedef struct
{
     
	char num[10];
	int s;
	}SCORE;
int fun(SCORE*a,SCORE*b)
{
     
	int i,j=0,n=0,min;
	min=a[0].s;
	for(i=0;i<M;i++)
	if(a[i].s<min)
	min=a[i].s;
	for(i=0;i<M;i++)
	if(a[i].s==min)
	{
     
	*(b+j)=a[i];
	j++;
	n++;
	}
	return n;
}
main()
{
     
	SCORE stu[M]={
     {
     "GA03",76},{
     "GA04",85},{
     "GA01",91},{
     "GA08",64},{
     "GA06",87},{
     "GA014",91},{
     "GA011",77},{
     "GA017",64},{
     "GA018",64},{
     "GA016",72}};
	SCORE low[M];
	int i,n;
	FILE*out;
	n=fun(stu,low);
	printf("The %d lowest score:\n",n);
	for(i=0;i<n;i++)
	printf("%s %4d\n",low[i].num,low[i].s);
	printf("\n");
	out=fopen("outfile.dat","w");
	fprintf(out,"%d\n",n);
	for(i=0;i<n;i++)
	fprintf(out,"%4d\n",low[i].s);
	fclose(out);
}

输出运行窗口如下:
C语言编程>第七周 ⑦ 学生的记录由学号和成绩组成,M名学生的数据已在主函数中放入结构体数组score中,请编写函数fun,它的功能是把分数最低的学生数据放在low所指的数组中。_第1张图片

越努力越幸运!
加油,奥力给!!!

你可能感兴趣的:(C语言程序设计,c语言,程序设计,编程语言,代码规范,计算机二级C语言考试上机题)