编程序完成下列要求:从键盘上输入某个姓名(字符串,长度≤20),在上一题(第6题)中建立的名为"sname.txt"的文本文件中查找,找到则输出“yes!”,找不到则输出"no!"。
编程序完成下列要求:从键盘上输入某个姓名(字符串,长度≤20),在上一题(第6题)中建立的名为"sname.txt"的文本文件中查找,找到则输出“yes!”,找不到则输出"no!"。
【正确答案】:在比较字符串时注意,写入文件中的字符串以'\n'结束。 #include #include main() {FILE*f0; char name[22],s[22]; int flag,i; if((fp=fopen("sname.txt","r"))==NULL)exit(0); scanf("%s",name); for(i=0;name[i]!='\0';i++); name[i]='\n'; name[i+1]='\0'; flag=0; while(!feof(fp)) {fgets(s,21,fp); if(strcmp(s,name)==0) {flag==1; break; } } if(flag==1) prinff("yes!\n"); else prinff("no!\n"); fclose(fp); }