文件中查找数据问题
/*
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
char ch,ch1;
char in;
scanf("%c",&in);
fp=fopen("126.txt","r");
while((ch=fgetc(fp))!=EOF){
ch1=fgetc(fp);
if(ch1==in&&ch=='*'){
putchar(ch1);
while((ch=fgetc(fp))!='#'){
putchar(ch);
}
}
}
rewind(fp);
fclose(fp);
getch();
return 0;
}
126.txt内容如下
*1.aiogaopkgr0-=-#
*2.raghkortakhokatr#
*3.aphkrakohgkare132134#
*4.aprkhgoatkohkat#
*5.olrakhoakoperhke#
*6.o4io5#
*/
我就是想输入一个序号,然后输出文件中的相应信息····如果不这样做好有更好的方法吗??
我想问问,为什么我输入1或者2或者3都可以输出对应的信息,但是输入5 或者6时,竟然没有了,那fp到底是去哪里了??
[解决办法]
一次读取一个句子
- C/C++ code
#include<stdio.h>#include<conio.h>#include<stdlib.h>int main(){FILE *fp;char ch,ch1;char in;char str[128]={0};scanf("%c",&in);fp=fopen("126.txt","r");while(!feof(fp)){ fgets(str,127,fp); if(str[1]==in&&str[0]=='*') puts(str);}//rewind(fp);fclose(fp);system("pause");return 0;}