第9章--文件练习题答案-华中社《C语言程序设计上机指导与练习》.doc
《第9章--文件练习题答案-华中社《C语言程序设计上机指导与练习》.doc》由会员分享,可在线阅读,更多相关《第9章--文件练习题答案-华中社《C语言程序设计上机指导与练习》.doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第9章 文件一、选择题1. C2. B3. A二、填空题1. 二进制文件2. 顺序 随机 流 流式3. hello,4. picursound三、简答题1. 什么是文件?文件分为哪些类型?答:文件一般是指存储在计算机外部介质上的数据的集合。文件分为两种类型:ASCII文件和二进制文件。2. 什么是缓冲文件系统?什么是非缓冲文件系统?答:缓冲文件系统是指系统自动地在内存区为每个正在使用的文件开辟一个缓冲区。从内存向磁盘输出数据时,先将数据送入输出文件缓冲区中,当输出文件缓冲区写满时,再一起写到磁盘上。如果从磁盘向内存读入数据,则一次从磁盘文件将一批数据读取到输入缓冲区,然后再从缓冲区逐个地将数据
2、送到程序数据区。非缓冲文件系统是指系统不自动开辟确定大小的缓冲区,而由程序为每个文件设定缓冲区。3. 如何理解文件的打开和关闭?为什么要打开和关闭文件?答:打开文件,是指建立文件与对应缓冲区之间的联系,即建立与文件对应的信息表。关闭文件,是指撤销与操作文件相关的流。即通过关闭操作,通知系统释放相应的文件信息区。这样,原来的文件指针变量不再指向该文件,此后,也就不可能通过此指针来访问该文件。要对文件操作必须打开文件,即建立与文件对应的信息表。而如果不关闭文件将会丢失数据。4. 简述文件指针的概念。如何通过文件指针访问一个文件?答:文件指针指的是指向文件结构体的指针变量。要通过文件指针访问一个文件
3、,必须先定义这个文件指针,然后打开文件即可。例如:FILE *fp;fp=fopen(d:exam1.txt,r)就可以通过文件指针访问d:exam1.txt文件。四、编程题1. 参考程序如下。#include #includevoid main(void)float data;int i,num=0;char ch;FILE *fp;if(fp=fopen(8_5.txt,w+)=NULL)printf(cannot open filen);exit(1); printf(请输入10个浮点数:n);for(i=1;i=10;i+)scanf(%f,&data);fprintf(fp,%f,d
4、ata);printf(请输入若干个浮点数,以#结束:n);while(ch=getchar()!=#)scanf(%f,&data);fprintf(fp,%f,data); printf(文件中的数据为:n);rewind(fp);while(!feof(fp)fscanf(fp,%f,&data);printf(%f ,data);num+;num-;printf(文件中数据的个数为%dn,num);fclose(fp);2. 参考程序如下。#include #include int main ()FILE *in1,*in2,*out;if(in1=fopen(data1,r)=NUL
5、L)printf(cannot open data1n);exit(0);if(out=fopen(data3,w)=NULL)printf(cannot open data3n);exit(0);while(!feof(in1)fputc(fgetc(in1),out);if(in2=fopen(data2,r)=NULL)printf(cannot open data2n);exit(0);while(!feof(in2)fputc(fgetc(in2),out);fclose(in1);fclose(in2);fclose(out); return 0;3. 参考程序如下。#includ
6、e#includevoid main()FILE *fp;char ch;if(fp=fopen(file3.txt,w)=NULL)printf(cannot open file n);exit(0);printf(请输入一个字符串,以#结束n);ch=getchar();while(ch!=#)fputc(ch,fp);ch=getchar();fclose(fp);4. 参考程序如下。#include #include void main()FILE *in,*out;char ch,infile10,outfile10;printf(请输入原文件名:n);scanf(%s,infile
7、);printf(请输入转换后文件名:n);scanf(%s,outfile);if (in=fopen(infile,r)=NULL)printf(cannot open infilen);exit(0);if (out=fopen(outfile,w)=NULL)printf(cannot open outfilen);exit(0);while(!feof(in)ch=fgetc(in);if(ch=a&ch=z) ch=ch-32;fputc(ch,out);fclose(in);fclose(out);5. 参考程序如下。#include#include#includevoid ma
8、in()FILE *in;char ch,infile10,array100;int i=0;printf(请输入文件名:n);scanf(%s,infile);if (in=fopen(infile,r)=NULL)printf(cannot open outfilen);exit(0);while(!feof(in)arrayi=fgetc(in);i+;arrayi=0; printf(倒序打印为:n);for(i=strlen(array)-1;i=0;i-)printf(%c,arrayi);fclose(in);6. 参考程序如下。#include#include#define N
9、 10struct student char name9; int num; int age; char sex;stuN;void main() int i; char s10; FILE *fp; if(fp=fopen(stu,rb)=NULL) printf(Can not open file!n); exit(0); gets(s); for(i=0;iN;i+) fseek(fp,i*sizeof(struct student),0); fread(&stui,sizeof(struct student),1,fp); while(s=stui.name) printf(%s,%d
10、,%d,%dn,stui.name,stui.num,stui.age,stui.sex); fclose(fp);7. 参考程序如下。#include stdio.hmain() FILE *fp; int i,j,n; char c160,t,ch; if(fp=fopen(A,r)=NULL) printf(file A cannot be openedn); exit(0); printf(n A contents are :n); for(i=0;(ch=fgetc(fp)!=EOF;i+) ci=ch;putchar(ci); fclose(fp); if(fp=fopen(B,r
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计上机指导与练习 文件 练习题 答案 华中 语言程序设计 上机 指导 练习
限制150内