学生的记录由学号和成绩

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

#include

#define N 16

typedef struct

{charnum[10];

int s;

}STREC;

intfun(STREC *a,STREC *b)

{

}

main()

{

STREC s[N]={{"GA05",85},{"GA03",76},

{"GA02",69},{"GA04",85},

{"GA01",91},{"GA07",72},

{"GA08",64},{"GA06",87},

{"GA015",85},{"GA013",91},

{"GA012",64},{"GA014",91},

{"GA011",91},{"GA017",64},

{"GA018",64},{"GA016",72}};

STREC h[N];

int I,n;

FILE *out ;

n=fun(s,h);

printf("The %d lowest score :\n",n);

for(i=0;i
printf("%s %4d\n",h[i].num,h[i].s);

printf("\n");

out=fopen("out24.dat","w");

fprintf(out,"%d\n",n);

for(i=0;i
fprintf(out,"%4d\n",h[i].s);

fclose(out);

}【答案】

int fun(STREC *a,STREC *b)

{

int j,n=0; double min=100.0;

for(j=0;j
if(min>a[j].s)

min=a[j].s;

for(j=0;j
if(a[j].s==min)

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

return n;

}

相关文档
最新文档