问题及代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num=0; /* 班级人数计数 */
int sumScore=0; /* 累计成绩*/
int curClass; /* 当前班级 */
int curScore; /* 当前成绩 */
int lastClass; /* 上一个班级*/
int readItems; /* 正确读入数据数目 */
FILE *fin; /* 输入文件 */
fin=fopen("score.dic","r"); /* 打开输入文件读 */
if(!fin) /* 文件打开失败 */
{
fprintf(stderr,"error open file!\n"); /* 输出错误信息到标准错误设备 */
exit(-1); /* 强制退出,并返回错误码 */
}char name[20];
fscanf(fin,"%d%s%d",&curClass, name, &curScore);
sumScore=curScore;
lastClass=curClass;
num=1;
while(fscanf(fin,"%d%s%d",&curClass, name, &curScore)!=EOF)
{
if(lastClass==curClass)
{
num++;
sumScore+=curScore;
}
else
{
printf("%d\t%d\n",lastClass,sumScore/num);
num=1;
sumScore=curScore;
lastClass=curClass;
}
}
printf("%d\t%d\n",lastClass,sumScore/num);
fclose(fin);
return 0;
}
运行结果
知识点总结
联系引用自定义函数,学会读取文件信息
学习心得
很难理解,借鉴了老师的代码,能力有待提高