首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

高手过来看看哦~解决思路

2012-02-03 
高手过来看看哦~高手看看哪错了?#includestdio.h#includestring.h#includestdlib.h#defineNUM45void

高手过来看看哦~
高手看看哪错了?

#include   <stdio.h>
#include   <string.h>
#include   <stdlib.h>
#define   NUM   45

void   main(void)
{
    struct   stu
    {
        long   iNum;
        char   chpName[10];
        float   fScore;
    }clas[NUM],max;
    FILE   *stream;
    int   i;
    float   fMax;
    char   stu[20];
    stream=fopen( "socu,dat ", "w ");
    for(i=0;i <NUM;i++)
    {
        printf( "\n输入第%d个人的姓名: ",i);
        gets(clas[i].chpName);
        printf( "\n输入第%d个人的学号: ",i);
        gets(str);
        clas[i].iNum=atol(str);           /*atol   是什么意思呀?书上没有介绍呀?*/                
        printf( "\n输入第%d个人的成绩: ",i);
        gets(str);
        clas[i].fScore=atof(str);
    }
    fwrite(clas,sizeof(struct   stu),NUM,stream);
    fclose(stream);

    stream=fopen( "docu.dat ", "r ");
    fread(&max,sizeof(struct   stu),1,stream);
    fMax=max.fScore;
    for(i=1;i <NUM;i++)
    {
        fread(&max,sizeof(struct   stu),1,stream);
        if(max.fScore> fMax)
            fMax=max.fScore;
    }
printf( "%f\n ",fMax);
fclose(stream);
}

[解决办法]
atol():将字符串转换成一个长整数

热点排行