首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

看下哪出错了,小弟我找不出来

2012-04-08 
看下哪出错了,我找不出来啊#includestdio.h#includestring.h#includestdlib.hint main(){FILE *fpc

看下哪出错了,我找不出来啊
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
FILE *fp;
char ch,a[1000],b[1000];
int i=0,max=0;
fp=fopen("3.txt","r");
if(fp==NULL)
{
printf("cannot open this file\n");
exit(-1);
}
while((ch=fgetc(fp))!='\n')
{
a[i]=ch;
i++;
}
i=0;
while((ch=fgetc(fp))!=EOF)
{
if(ch!='\n')
{
b[i]=ch;
i++;
}
if(strlen(a)<strlen(b))
strcpy(a,b);
i=0;
}
puts(a);
fclose(fp);
return EXIT_SUCCESS;
}
目的是输出3.txt文档中最长的那个字符串,不知道哪出问题了,求真相啊!

[解决办法]
只是初步看了一下
ch=fgetc(fp))!=EOF 这里出了问题
[解决办法]

C/C++ code
while((ch=fgetc(fp))!=EOF){    if(ch!='\n'){        b[i]=ch;        i++;    }    if(strlen(a)<strlen(b))//{少了这个??        strcpy(a,b);    i=0;//这个i=0每次都会执行, 你的b[i]==b[0]    //}} 

热点排行