请高手帮忙看看这个程序哪里出问题了 就是可以编译运行出错 代码贴出来了~

#include<stdio.h>
main()
{FILE *fp,*fp1;
int i=199;
int j;
typedef struct
{char word[20];
int x;
float y;
} WORD;
WORD s[199];
WORD t;
fp=fopen("d:\\result2.txt","r");
fp1=fopen("d\\jieguo.txt","w");
if((fp)&&(fp1)==NULL)
{printf("can't open the file");

}for(i=0;i<199;i++)

fscanf(fp,"%s\t%d\t %f\n",&s[i].word,&s[i].x,&s[i].y);
for(i=0;i<199;i++)
for(j=0;j<199-i-1;j++)
if(s[j].x>s[j+1].x)
{t=s[j];
s[j]=s[j+1];
s[j+1]=t;
}

fprintf(fp1,"%s %d %f\n",s[i].word,s[i].x,s[i].y);

fclose(fp);
fclose(fp1);
}

第1个回答  2012-06-15
我认为,你这里应该有错误
if((fp)&&(fp1)==NULL)
是想判断两文件都不为空吧,
应该if((fp == NULL) && ( fp1 == NULL))
相似回答