资源描述:
《《c语言程序设计上机指导》(精品高职)项目十》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、项目十文件1>检查所用计算机是否已经安装VisualC++2012。2、进入VisualC++2012的工作坏境。3、编程示例,观察与验证。输入并运行下面的程序,分析运行结果。【任务实施】实验10-1简单的文件输入示例源程序10-1:#includevoidmain(){FILE*fp;inti=32767;charch='A‘;fp=fopen(“test.bin:'wb”);fwrite(&i,sizeof(int),1,fp);fwrite(&ch,sizeof(char),1,fp);fclose(fp);}编辑、编译、运行程序,可以
2、看到用户目录产生一个二进制文件test.bin,查看文件属性。且test.bin文件大小:1KB字节名称'.DebuglO.vcxproj韵lO.vcxproj.filters也10-l.c」test.bin图10-1运行结果图实验10-2字符方式文件读写函数应用示例源程序10-2:#include#includevoidmain(){FILE*fp;intch;if((fp=fopen(uresult.txt,,;,w,,))==NULL)printf(ufilecreatederror.,*);exit(O);}
3、do{ch=getchar();fputc(ch,fp);}while(ch!='#');fclose(fp);}编辑、编译、运行程序,输入:appletgrape/pear/#/可以看到用户目录产生一个文本文件result.txt,果如下图所示。51lO.vcxproj函lO.vcxproj.filters<^10-2.cresult.txt图10-2-1运行结果图(1)打开文本文件result.txt,我们可以看到result.txt的内容如下图所示。图10-2-1运行结果图(2)小提示:编写此类源程序时要注意:(1)本文文件,二进制文件操作前应当如何设置
4、文件打开的方式。如果要打开一个二进制文件使用“巾”,打开一个文本文件使用“rt”的打开方式。(2)使用fputc()函数与fgetc()函数对文件数据进行输入/输出的方法。fputc:数的功能是把一个字符写入指定的文件屮。fgetc:函数的功能是从指定的文件中读一个字符。(3)使用文本文件、二进制文件保存数据的差别文本文件是把数据以ASCII码存储到磁盘上,二进制文件是把内存中的数以内存中的原样存储到磁盘上。比如字符数据本身在内存中就经过了编码,所以无论是二进制还是文本形式都是一样的,而对于非字符数据来说,例如inti=15;如果用二进制来进行存储的话为111
5、1,但是如果需要用文本形式來进行存储的话就必须进行格式化编码(对1和5分别编码,即形式为'31'和'35')。大家观察下以下源程序和源程序10-2的区别:^#include#includeHvoid则&2力(){FILE*fp:charch;if((fp=/,c>pi?j7(iVresult・七*!:","rt"))=={””卫df/VCanncrtopenfilestrikeanykeyexitP):叱十(1);}ch=^fr(fp);while(ch!=EOF){printch)://putchar(ch):ch=;
6、}fclose(fp):}图10-2・2修改后的源程序(1)大家会发现,此程序可以实现:把result.txt文件中的内容读出到屏幕。运行结果如下图所示。图10-2-2修改后的源程序运行结果图(2)实验10-3字符串方式文件读写函数应用示例源程序10-3:#include#include#includevoidmain(){FILE*fp;chara[][80]={“apple”,”grape?pear”},strout[80]=”J,;inti;if((fp=fopen(uresult2.txt,,
7、;,w,,))==NULL)printf(uFileopenerror!M);exit(O);}for(i=0;iv3;i++)fputs(a[i],fp);fclose(fp);fclose(fp);if((fp=fopen(t8、源程序后得出运行结果如下图所示。C: