22.txt
2016 AAAA 20160001 11111111111 25 88.0 99.5 99.0 77.0 63.5
2016 BBB 20160002 11111111111 25 88.0 99.5 99.0 77.0 63.5
2016 CCC 20160003 11111111111 25 88.0 99.5 99.0 77.0 63.5
2016 DDDD 20160004 11111111111 25 88.0 99.5 99.0 77.0 63.5
2016 EEEEE 20160005 11111111111 25 88.0 99.5 99.0 77.0 63.5
建立的一个简单的结构体,以方便演示操作。。
struct Student
{
int nYear;
char czName[20];
char czNumber[10];
char czTel[12];
int nAge;
float fScore[5];
}Student[10];
int main()
{
int nCount = 0;
FILE *fp = fopen("22.txt","rb");
if(fp == NULL)
{
printf("can not open file!\n");
exit(0);
}
for(int i = 0;i < 100;i ++)
{
int nRes = fscanf(fp,"%d %s %s %s %d %f %f %f %f %f",&Student[i].nYear,Student[i].czName,Student[i].czNumber,Student[i].czTel,
&Student[i].nAge,&Student[i].fScore[0],&Student[i].fScore[1],&Student[i].fScore[2],&Student[i].fScore[3],&Student[i].fScore[4]);
if (nRes == -1)
{
nCount = i;
fclose(fp);
break;
}
}
for (int i = 0;i < nCount;i ++)
{
printf("%d %s %s %s %d %.2f %.2f %.2f %.2f %.2f\n",Student[i].nYear,Student[i].czName,Student[i].czNumber,Student[i].czTel,
Student[i].nAge,Student[i].fScore[0],Student[i].fScore[1],Student[i].fScore[2],Student[i].fScore[3],Student[i].fScore[4]);
}
fclose(fp);
return 0;
}
主要的使用函数:
int fscanf( FILE* stream, const char* format [, argument ]... );
int fwscanf( FILE* stream, const wchar_t* format [, argument ]... );