C语言txt文件的读写
创建一个txt文本文件并写入数据:
void file_write(char *stuid,char *name,float score)
{
//写数据
int i;
FILE *outfile;
outfile = fopen("scores.txt","w");
if(outfile==NULL)
{
printf("Can't open the file!\n");
}
fprintf(outfile,"学号\t姓名\t入学成绩\n");
for(i=0;i<N;i++)
{
printf("Please input stuid name scores:");
scanf("%s%s%f",stuid,name,&score);
fprintf(outfile,"%s\t%s\t%f\n",stuid,name,score);
}
fclose(outfile);
}
接下来是从txt文件中读取数据
void file_read(char *stuid,char *name,float score)
{
// 读数据
int i;
FILE *fpRead=fopen("scores.txt","r");
if(fpRead==NULL) exit(0);
fscanf(fpRead,"%*[^\n]"); //跳过第一行文字
for(i=0;i<N;i++)
{
fscanf(fpRead,"%s\t%s\t%f",stuid,name,&score);
printf("%s\t%s\t%f\n",stuid,name,score);
}
}
主函数
int main()
{
char stuid[10],name[20];
float score;
file_write(stuid,name,score);
file_read(stuid,name,score);
return 0;
}
运行结果
fscanf(fpRead,"%*[^\n]"); //跳过第一行文字