《2021-2022学年高二下学期C语言程序设计案例教程章节练习题+答案5.docx》由会员分享,可在线阅读,更多相关《2021-2022学年高二下学期C语言程序设计案例教程章节练习题+答案5.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、(中职)C语言程序设计案例教程章节练习题+答案(八)一、填空题。1 . 文件指存储在外部介质(如磁盘等)上有序的数据集合。2 .根据数据的组织形式不同,文件可分为ASCH 文件和 二进制 文件。3 . C系统把文件都是被看作一个字节序列,称为“流(stream)”,以 字节 为 单位进行访问,没有记录的界限。将数据从磁盘文件流向内存的过程称为 输入 ,反之, 将数据从内存流向磁盘文件的过程称为输出_。4 .除了标准的输入、输出文件外,其他所有的文件都必须先翻开 再使用,而且使用后也必须 关闭该文件。5 .声明FILE结构体类型的信息包含在头文件“ stdlib. h ”中,定义指向FILE 类
2、型变量的指针变量fp的语句为FILE东fp。6 .以只读方式翻开“myfile”文件并将返回值赋给指针变量fp的语句为 fp=fopen(myfile, r ) ;。7 .用只写方式“w”翻开文件时,如指定的文件不存在 ,那么以指定的文件名新建文 件。假设翻开的文件已经存在,那么原文件内容消失,重新写入内容且只能进行与操作。8 . fputc()函数的功能是将一个字符输出到文件中。将字符C写入指针fp指向文件 的语句可写为fputcC C, fp) ; o9 .所谓 文件位置指针是系统设置的用来指向文件当前读写位置的指针,不需用户定义,但会随着文件的读写操作而移动。二、选择题。1.C语言程序中
3、对文件操作都要执行的步骤是(B )A.读文件、写文件、关闭文件B.翻开文件、读/写文件、关闭文件C.翻开文件、翻开文件是否成功的判断、关闭文件D.以上说法都不对2.以只读的方式翻开文件myfile。如果文件翻开失败,那么fopen返回(B )。A.错误 errorB.空指针NULLC.空指针NONED.以上说法都错误3 .翻开或建立一个文本文件,只允许写数据的文件翻开方式是(B )oA. “rB. w”C. “aD. “rb”4 .用只读方式“r”翻开文件时,以下说法正确的选项是(A )。A.该文件必须已经存在,否那么出错,且只能进行读取操作8 .该文件不必要存在C.重新创立文件D.以上都不对
4、9 .如有:if (fp=fopen(myfile,r)=NULL)printf(cannot open this filen); exit (0);以下说法正确的选项是(A ) oA.翻开文件的同时判断是否翻开成功B.退出程序执行C.输出字符串cannot open this file”D.以上都不对10 以下说法不正确的选项是(D ) oA. “r+”、“w+”、“a+”方式翻开的文件都是既可读亦可写B. “r+”与“r”方式翻开的文件必须已经存在C. “a+”方式是翻开文件后可以在文件末尾增加新数据亦可以读取文件D.以上都不对11 关闭指针fp指向文件的操作为(B ) oA. close
5、 (fp);B. fclose(fp);C. exit(fp);D.以上都不对12 以下程序执行的结果是(B )#include#includevoid main()(FILE *fp;int i,j=9,k=9;if (fp=fopen (d: test. txt,w)=NULL)(printf (z,cannot open this filen,z);exit (0);)for(i=l;i5;i+)fprintf (fp, z,%dz,, i);fclose(fp);if(fp=fopen(d:test. txt,r)=NULL) (printf (cannot open this fil
6、en,z);exit (0);)fscanf(fp, %d%d,&j, &k);fclose (fp);printf (z/j=%d, k=%dn,z, j, k);)A. j=l, k=2B. j=1234, k=9C. j=9, k=9D. j=12,k=3413 fputs函数的功能是(A )oA.向文件中写入一个字符串,其中字符串可以是字符串常量,亦可以是有赋值的字符 数组B.向文件中写入一个字符,其中字符可以是字符常量C.向文件中写入一个整型数组D.以上都不是14 .关于fprintf函数与printf函数以下说法正确的选项是(C )。A.功能相同B. fprintf函数用于输出文件
7、,printf函数用于输出基本数据C.功能类似,区别在于printf函数输出到显示器上,而fprintf函数那么是输出到文件 中。D.以上都不对11 .可以一次读入和定入一组数据的文件处理函数是(C )。A. fscanf函数和fprintf函数B. fgetchar 函数和 fputchar 函数C. fread函数和fwrite函数D.以上都不是12 .语句 “fread(str,3,5,fp); ” 的作用是(C )A.在fp所指文件中从第3个字节开始,读5次,送至数组str中。B.在fp所指文件中从第5个字节开始,读3次,送至数组str中。C.从fp所指文件中每次读3个字节,读5次,送
8、至数组str中。D,以上都不对13 .关于rewind函数以下说法正确的选项是(B )。A.功能是将文件位置指针移至文件尾B.功能是将文件位置指针移至文件起始处C.功能是查找文件位置指针当前位置D.以上都错误14 .语句 “fsee句fp,50L,0); ” 的作用是(A )A.以文件开头为基准,文件位置指针向文件尾方向移动50字节B.以文件尾为基准,文件位置指针向文件开头方向移动50字节C.以文件中间为基准,文件位置指针向文件开头方向移动50字节D.以上都错误三、程序填空题。1 .如文件“test.txt”不存在,以下程序的执行结果是Cannot open file!。#include#in
9、cludevoid main ()(FILE *fp;if (fp=fopen (z,test. txt,r)二二NULL) printf(,zCannot open file!”);exit (0);fclose (fp);2 .如有文件“file, txt”中的数据“98 97 95 90 85”,以下程序的执行后,“file. txt” 中的内容是平均值为:93。#include#include#define N 6void read_data(int n, int n) (int i;FILE *fp;if (fp=fopen (,zfile. txt,r)二二NULL) (print
10、f (,zcannot open this file n); exit (0);)for(i=0;in;i+)fscanf(fp, 3d, &ni); fclose (fp);) float Ave(int a) ( int i;float ave=0. 0;for (i=0; iN;i+) (ave+=ai;) return ave/6; )void write_data(int a, float ave) (FILE *fp;if (fp = fopen(,zfile. txtz,, a)二二 NULL) (printf (z,cannot open this file n ); exit
11、 (0);)fprintf (fp, nn 平均值为:);fprintf (fp, %4. 2f,ave); fclose (fp);void main()int aN;float ave;read_data (a, N);ave=Ave(a);write data(a, ave);四、编程题。1 .编写程序,翻开文件“file.txt”的,读取文件内容并将其输出到显示器。 #include#include void main() (FILE *fp;char ch;if(fp=fopen(file.txt ,r,)=NULL) (printf(cannot open this filen);
12、 exit(O);) ch=fgetc(fp); while(ch!=EOF) (putchar(ch); ch=fgetc(fp); fclose(fp); printfCXn);).编写程序,从键盘输入假设干字符,将字符写入到E盘下的file.txt文件中。 #include#include void main() (FILE *fp;char ch50,*p=ch;if(fp=fopen(,E:file.txt,;,w)=NULL) (printf(cannot open this filen); exit(O);)printf(“请输入字符门;gets(p);while(*p!=,0,)( fputc(*pzfp); P+;)fclose(fp);