第8章文件-新思维C语言程序设计
第8章 文件 ;1.文件的概念“文件”是指存储在外部介质上的数据集合。如用Word写出的文章用Excel设计的统计表用C语言编写的程序在磁盘中存放的文件叫做磁盘文件。 ;2.文件的存储 根据文件的组织形式,C语言中将文件分为文本文件和二进制文件,它们是常用的两种文件。 ;123按文本文件存放形式;8.1 了解文件的处理过程;8.1 了解文件的处理过程;8.1 了解文件的处理过程;8.1 了解文件的处理过程;8.1 了解文件的处理过程;8.1 了解文件的处理过程;8.1 了解文件的处理过程;8.2.1 创建文本文件8.2.2 读取文本文件中的数据8.2.3 创建二进制文件8.2.4 读取二进制文件中的数据;8.2.1 创建文本文件;#include main(){ char nam[10]="\0";int n=0,i=0;float pc=0.0;FILE *fp=NULL;fp=fopen("d:\\f8_1.txt","w");if(fp==NULL){printf("Open error!!!\n");getch();exit(0); }; printf("Input name_number_price:\n");for(i=1; i<=3; i++) { scanf("%s %d %f",nam,&n,&pc); fprintf(fp,"%s %d %f\n",nam,n,pc);}fclose(fp); };8.2.2 读取文本文件中的数据;#include main(){ char nam[10]="\0";int n=0;float pc=0.0,s=0.0,sum=0.0;FILE *fp=NULL;fp=fopen("d:\\f8_1.txt","r");if(fp==NULL){printf("Open error!!!\n");getch();exit(0); }; fscanf(fp,"%s %d %f",nam,&n,&pc); while(feof(fp)==0) {printf("%17s%5d%9.2f",nam,n,pc); s=pc*n; sum=sum+s; printf("%9.2f\n",s); fscanf(fp,"%s %d %f",nam,&n,&pc); } fclose(fp); printf("Total:%8.2f\n",sum);};8.2.3 创建二进制文件;#include typedef struct goods{ char nam[10];int n;float pc;}GOODS;;main(){ GOODS g={0};int i=0;float temp=0.0;FILE *fp=NULL;fp=fopen("d:\\f8_3.dat","wb");if(fp==NULL){printf("Open error!!!\n");getch();exit(0); }; printf("Input name_number_price:\n"); for(i=0; i<3; i++) {scanf("%s %d %f", g.nam,&g.n,&temp); g.pc=temp; fwrite(&g,sizeof(GOODS),1,fp); } fclose(fp); };8.2.4 读取二进制文件中的数据;#include typedef struct goods{ char nam[10];int n;float pc;}GOODS;;main(){ GOODS g={0}; float s=0.0,sum=0.0;FILE *fp=NULL;fp=fopen("d:\\f8_3.dat","rb");if(fp==NULL){printf("Open error!!!\n");getch();exit(0); }; fread(&g,sizeof(GOODS),1,fp);