文件读操作,为什么进入死循环?有代码。上个帖子发错了。
代码是这样的
#include<stdio.h>typedef struct node{int id;char name[20];int age;char pwd[6];char tag[100];}USER;void main(){ FILE *fp; USER user; char ch,l[300]; char input; char *u[5]={"id","name","age","pwd","tag"}; int i=0,j=0; if((fp=fopen("USER.txt","w+"))==NULL) { printf("failed to open file!"); return; } fprintf(fp,"id\tname\tage\tpwd\ttag\n"); for(j=0;j<1;j++) { printf("please input your %s:\n",u[i]); scanf("%d",&user.id); fflush(stdin); fprintf(fp,"%d\t",user.id); printf("please input your %s:\n",u[++i]); scanf("%s",&user.name); fflush(stdin); fprintf(fp,"%s\t",user.name); printf("please input your %s:\n",u[++i]); scanf("%d",&user.age); fflush(stdin); fprintf(fp,"%d\t",user.age); printf("please input your %s:\n",u[++i]); scanf("%s",&user.pwd); fflush(stdin); fprintf(fp,"%s\t",user.pwd); printf("please input your %s:\n",u[++i]); scanf("%s",&user.tag); fflush(stdin); fprintf(fp,"%s\t\n",user.tag); } fclose(fp); if((fp=fopen("USER.txt","r"))==NULL) { printf("failed to open file!"); return; } printf("\t\t**********所有文件信息如下**********\t\t"); while(fscanf(fp,"user.id=%d user.name=%s\n",&user.id,&user.name)!=EOF) { i++; printf("user.id=%d\tuser.name=%s\n",user.id,user.name); } fclose(fp);}