求高手指点,如何在读取文件的时候实现比对和退出循环?

qq1747479880 2012-05-31 08:57:05
作业要求的程序中有一个功能是读取文件中的内容,挑选出ID符合输入的ID的行进行输出,我写的这一段代码如下:

无关的部分就省略了。

char id[500],id2;
int m=0,m2=0,sc2,t2;
………………………………
case 2:
putin=fopen("record.txt","r");
if(putin==NULL)
{
printf("\nThere have no record in your computer.");
break;
}
for(i=0;i>=0;i++)
{
fscanf(putin,"%s %d %d",&id2,&sc2,&t2);
if(t2!=EOF)
{
fclose(putin);
break;
}
printf("%s %d %d\n",id2,sc2,t2);
}
m=m-1;
system("pause");
break;
……………………

文件的内容是是:
fe1555 0 22
fe1555 0 15
fe1555 40 16
aa1111 20 18
…………


现在这个代码选择读取后就不出结果,之前写的是读取完前面的就一直不停地输出最后一行。。我也不知道这个该咋读取了,求高手帮忙看一下吧,谢谢了。
还有就是在循环中我试图加入一个判断id2是否等于一开始输入的id该如何判断?我用if(id2==id)会报错,不知道为什么?我才学C,好多地方都不懂,谢谢高手指点啦。
...全文
35 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

15,440

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧