- 1、本文档共78页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
9.3.4 格式读写函数 (1)格式化读函数fscanf( ) 函数fscanf( )的功能是从指定的文件中按照一定的格式读取数据到程序中,fscanf函数与前面使用的scanf函数的功能相似,两者的不同在于fscanf函数读取对象不是键盘,而是磁盘文件。函数调用的一般形式: fscanf(文件指针,格式字符串,输入表列); 其中,格式字符串和输入表列和scanf( )函数相似。 说明:函数的返回值若为EOF,表明格式化读错误;否则读数据成功。 9.3 文件的读写 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. (2)格式化写函数fprintf( ) 函数fprintf( )的功能是把格式化的数据写到指定文件中,其中,格式化的规定与printf( )函数相同,所不同的只是fprintf( )函数是向文件中写入,而printf( )是向屏幕输出。函数调用的一般形式: fprintf(文件指针,格式控制字符串,输出项列表); 其中,格式控制字符串和输出项列表和printf( )函数相似。 说明:函数的返回值为实际写入文件中的字符个数(字节数);若写错误,则返回一个负数。 9.3 文件的读写 9.3.4 格式读写函数 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. 例9-3 随机产生20个[10,99]之间的整数,以每行5个数据输出到文本文件c:\data.txt中,要求每个数据占5个宽度,并且数据之间用逗号分隔。然后将其读出按升序排序后,按同样格式追加写原文件在后,与原数据之间空出2行。 编程分析:采用模块化程序设计。将产生数据、将数据输出到文件、从文件中读取数据,排序和追加数据到文件分别写成GetData( )、PutDataToFile( )、GetDataFormFile( )和sort( )、AppendDataToFile( )函数。 9.3 文件的读写 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. #include stdio.h #include stdlib.h /*初始化随机种子数randomize()原型声明stdlib.h中*/ void GetData(int a[],int n); /*产生数据函数的原型声明*/ void PutDataToFile(int a[],int n); /*输出数据函数的原型声明*/ void GetDataFormFile(int a[],int n); /*将数据输入到文件函数的原型声明*/ void sort(int a[],int n); void AppendDataToFile(int a[],int n); /*追加数据到文件函数的原型声明*/ void OpenFile(char *file,char *pr); FILE *fp; 9.3 文件的读写 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0. Copyright 2004-2011 Aspose Pty Ltd. void main() { int a[20],i; GetData(a,20); PutDataToFile(a,20); /*调用scandata()函数将数据读入到数组a中*/ GetDataFormFile(a,20); sort(a,20); /*调用sort()函数将数组a的数据排序*/ AppendDataToFile(a,20); /*调用AppedDataToFile ()函数将排序后的数组a的数据写入到文件中*/ } void GetData(int a[],int n) { int i; randomize(); /* 初始化随机种子数 */ for(i=0;in;i++) a[i]=(rand()%90)+10; /* 产生[10,99]的随机整数 */ } 9.
文档评论(0)