C 文件处理/扫描文件中的数据

  • 本文关键字:文件 数据 处理 扫描 c
  • 更新时间 :
  • 英文 :


我有一个文件,其中包含一行文本,其中包含 4 名学生的数据,我正在尝试一次扫描一定数量的字符,直到我到达文件末尾并将所有数据打印到一个新文件中并正确排列。 以下是文件中的文本:

BaruchComp078045MichalMech090060PinhasElek100090YaelitComp080100DorotiMech100100

函数如下:

void StudAverage(FILE *in, FILE *out)
{
char name[7], faculty[5], mark1[4], mark2[4], Avg[5];
float average;
while (fscanf(in, "%6s%4s%3s%3s", name, faculty, mark1, mark2) != EOF);
{
average = (atof(mark1) + atof(mark2)) / 2;
itoa(average, Avg, 10);
fprintf(out, "%s %sn", name, Avg);
}
}

问题是它只扫描最后一个学生的数据,并跳过它之前的所有学生。 有人可以告诉我我做错了什么吗?

而 (fscanf(in, "%6s%4s%3s%3s", name, faculty, mark1, mark2( != EOF(

最后删除;

最新更新