大一刚刚学习C语言,这是一个简易字典单词查询问题,下面是输入输出的一些要求,我想要实现重复查词的功能,
我发现我的精准查词功能只能实现一次,第二次时输入yes时就会结束程序,而输入no后不会结束程序,程序可以正常进行
for(;;)
{
char word[50]={"\0"};
printf("请输入单词:");
scanf("%s",word);
AccurateFind(fp,word);
rewind(fp);
if(state==-1)
{
char choose1[5];
printf("是否进行智能查词(yes/no):");
scanf("%s",choose1);
if(strcmp(choose1,"yes")==0)
{
IntelligentSearch(fp,word);
printf("成功运行智能查词\n");
}
}
state=-1;
printf("若退出程序请输入exit:");
char choose2[10]={"\0"};
scanf("%s",choose2);
if(strcmp(choose2,"exit")==0) break;
}
第二次输入yes
我不知道是不是缓冲区之类的问题,尝试过添加getchar,也不行
想要实现多次智能查词这个功能
看看IntelligentSearch函数
第16行后插入一行:rewind(fp);