第十三周-从文件中读取数据

来源:互联网 发布:游轮上的网络 编辑:程序博客网 时间:2024/04/29 11:30
#include <stdio.h>#include <stdlib.h>int main(){    int num=0;          /* 班级人数计数 */    int sumScore=0;     /* 累计成绩*/    int curClass;       /* 当前班级 */    int curScore;       /* 当前成绩 */    int lastClass;      /* 上一个班级*/    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;//还是要先处理一次,不然无法保证lastClass=curClass    num=1;    while(fscanf(fin,"%d%s%d",&curClass, name, &curScore)!=EOF)    {        if(curClass!=lastClass)        {            printf("%d\t%d\n",lastClass,sumScore/num);            sumScore=0;            num=0;        }        if(curScore>0&&curScore<=100)        {            sumScore+=curScore;            ++num;            lastClass=curClass;        }        else        {            lastClass=curClass;            continue;        }    }    printf("%d\t%d\n",lastClass,sumScore/num);    //读取到EOF就结束循环了,所以还要在这里再加一句    fclose(fin);    /*****************/    return 0;}

0 0
原创粉丝点击