程序本身没有问题,但是每次读取都是只读取第一个文件,本来是要读完第一个文件之后读第二个,然后第三个,以此类推的。
文件名全部是数字,从0开始到11,没有扩展名,文件内部分为两行,第一行是英文单词加上\n,第二行是中文,没有第三行。
文件存储在一个名为Words的文件夹中,这个文件夹与程序放在一起(放在同一个目录下)
操作系统是Win10 64位,编译器是C89标准
在examin()函数前面的char way[21]是全局变量,再前面就是预处理
char way[21] = "Words\\";
void examin()
{
int cou;
for(cou=0;;cou++)
{
int ra,num;
char m[102],inp[51],se[101],count[11];
sprintf(count,"%d",cou);
strcat(way,count);
FILE *fp = fopen(way,"r+");
fgets(m,100,fp);
/*Examination*/
printf("\nE>>>%sC>>>",m);
scanf("%s",&inp);
fgets(se,100,fp);
if(strcmp(inp,se) == 0)
{
printf("Right!\n");
}
else
{
printf("It\'s wrong, the answer is\"%s\"",se);
}
fclose(fp);
}
return;
}