- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c程序设计第13章
文件;★文件处理函数;教学任务;文件的概述; 4、文件的分类 ;二、文件的操作;三、 文件的输入输出方式;文件的指针;二、 定义FILE类型指针变量;文件的打开与关闭;文件的打开与关闭;+ 辅助说明,可同时进行读和写文件。 ;二、文件的关闭函数(fclose函数);一、 单个字符操作的读写函数 ;2. fgetc函数;例: 阅读程序。
#include stdio.h
#define NULL 0
main()
{ FILE *fp;
int count=0; char c;
if((fp=fopen(“file.txt”,“r”))==NULL)
{ printf(“Can’t Open File \n”); exit(0); }
c=fgetc(fp);
while(c!=EOF) { count++; c=fgetc(fp); }
printf(“count=%d\n”,count);
fclose(fp);
};二、 字符串的读写函数;三、 数据块的读写函数;例1 把数组a写入文件fa;再从fa读入数组b。
#include stdio.h
main()
{ FILE* fp;
int a[100]={1,5,6,78,21,34,67,87,23},b[100], i ;
fp=fopen(tmp,wb);
fwrite(a,sizeof(a),1,fp);
/* fwrite(a,sizeof(int),100,fp);*/
fclose(fp);
fp=fopen(tmp,rb);
fread(b,sizeof(a),1,fp);
for(puts(),i=0;i10;i++)printf(%6d,b[i]);
fclose(fp);
};四、 格式化读写函数;1. rewind函数;功能:把文件的读写位置指针移到指定的位置。 ; 4. ferror( )函数
ferror( )函数用来确定文件操作系统中是否出错。其函数原型为:
int ferror(FILE *fp);
如果ferror()函数返回值为0,则表示此前的文件操作成功;否则,若返回一个非0值,则表示最近一次文件操作出错。由于对文件的每次I/O操作都会形成新的出错码,所以在每次文件操作后应立即调用ferror()函数查看此次操作是否成功,否则会丢失信息。
表示上述功能常用的语句的是:
;5. clearer( )函数
clearer( )函数的函数原型为:
void clearer(FILE *fp);
功能是清除文件结束标志和文件出错标志(设置为0)。本函数没有返回值。
;;#includestdio.h
void main()
{FILE *fp,*fp2;
char c;
if((fp=fopen(data.dat,r))==NULL)
{printf(不能打开文件\n);
return;}
if((fp1=fopen(data1.dat),w)==NULL)
{printf(不能建立文件\n);
return;}
while(!feof(fp)){
c=fgetc(fp);
c=(c+1)%256;
fputc(c,fp1);}
fclose(fp);
fclose(fp);} ; 编写程序,创建数据文件goods.dat用于存储商品信息。已知每一个商品 包括:名称,单价,进货量,和库存4项数据。按指定的格式读写.;#includestdio.h
main()
{ int count ,amount,stock;
float price;
char name[20];
FILE *fp;
if((fp=fopen(“goods.dat”,”wb”))= =NULL)
{
printf(“can not open file.\n”);
exit(0);};for(count=0; ;count++)
{
fprintf(“%d”,count+1);
scanf(“%s%d%d”,name,price,amount,stock);
if(price==0)
break;
printf(fp,”%s\n%.2f,%d,%d”,name,price,amount,stock);
};fclose
文档评论(0)