第九章 文件《编程语言基础-C语言》(高教版第五版)章节过关卷

2025-03-04
| 2份
| 14页
| 201人阅读
| 3人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 C语言程序设计高教版(第五版)全一册
年级 高一
章节 第9章 文件
类型 作业-单元卷
知识点 文件
使用场景 同步教学-单元练习
学年 2025-2026
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 252 KB
发布时间 2025-03-04
更新时间 2025-03-04
作者 糖醋排骨009
品牌系列 学易金卷·阶段检测模拟卷
审核时间 2025-03-04
下载链接 https://m.zxxk.com/soft/50787450.html
价格 3.00储值(1储值=1元)
来源 学科网

内容正文:

《编程语言基础——C语言》高等教育出版社(第五版) 第九章 文件 章节过关卷 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共20小题,每题2分,共40分) 1. 在C语言中,文件的使用要遵循( )的顺序 A.读写文件,关闭文件 B.打开文件,读写文件 C.打开文件,关闭文件 D.打开文件,读写文件,关闭文件 2. 若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式应该选择( ) A.“wb+” B.“ab+” C.“rb+” D.“r” 3. 若fp已正确定义并指向某个文件,当未遇到该文件结束标志时,函数feof(fp)的值为( ) A.0 B.1 C.-1 D.一个非零值 4. 若要打开C盘上user子目录下名为a123.txt的文本文件进行读写操作,下列选项中符合要求的是( ) A.fopen(“C:\\user\\a123.txt”,“r”); B.fopen(“C:\\user\\a123.txt”,“w”); C.fopen(“C://user//a123.txt”,“r+”); D. fopen(“C:\user\a123.txt”,“rb”); 5. 当已经存在一个fab1.txt文件,执行函数:fopen(“fab1.txt”,“r+”)的功能是( ) A.打开fab1.txt文件,清除原有的内容 B. 打开fab1.txt文件,只能读入新的内容 C. 打开fab1.txt文件,只能读取原有内容 D. 打开fab1.txt文件,可以读取和写入新的内容 6. fgetc函数的功能是从指定文件读入一个字符,该文件的打开方式必须是( ) A.只写 B.读或读写 C.追加 D.以上选项均不正确 7. fputc函数的功能是向指针指向的文件中写入一个字符,该函数的第一个参数可以是( ) A.字符常量 B.字符变量 C.字符元素 D.以上选项均正确 8. 若执行 fopen函数时发生错误,则函数的返回值是( ) A.地址值 B.NULL C.1 D.EOF 9. 若以〃a+〃方式打开一个已存在的文件,则以下叙述正确的是( ) A. 文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作 B. 文件打开时,原有文件内容不被删除,位置指针移到文件开头,可作重写和读操作 C. 文件打开时,原有文件内容被删除,只可作写操作 D. 以上各种说法皆不正确 10. 已知函数的调用形式是:fread(buffer,size,counl,fp);其中 buffer代表的是( ) A. 一个整型变量,代表要读入的数据项总数 B. 一个文件指针,指向要读的文件 C. 一个指针,指向要读入数据的存放地址 D. 一个存储区,存放要读的数据项 11. 利用fseek 函数可实现的操作是( ) A. 改变文件的位置指针 B. 文件的顺序读写 C. 文件的随机读写 D. 以上答案均正确 12. fseek函数的正确调用形式是( ) A. fseek(文件类型指针,起始点,位移量); B. fseek(fp,位移量,起始点); C. fseek(位移量,起始点,fp); D. fseek(起始点,位移量,文件类型指针); 13. 函数rewind的作用是( ) A. 使位置指针重新返回文件的开头 B. 将位置指针指向文件中所要求的特定位置 C. 使位置指针指向文件的末尾 D. 使位置指针自动移至下一个字符位置 14. 函数 ftell(fp)的作用是( ) A. 得到流式文件中的当前位置 B. 初始化流式文件的位置指针 C. 移动流式文件的位置指针 D. 以上答案均正确 15. 下列选项中,与fseek(fp,0L,SEEK_SET)函数作用相同的是( ) A.rewind(fp) B.feof(fp) C.ftell(fp) D.fgetc(fp) 16. fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式不能是( ) A.只读 B.只写 C.读写 D.追加或读 17. 下列说法中正确的一项是( ) A.C语言中的文件是流式文件,所以只能顺序存取数据 B.当对文件的读/写操作完成后,必须将已打开的文件关闭,否则可能会导致数据丢失 C.打开一个已经存在的文件进行读写操作之后,原有文件中全部数据必将被覆盖 D.在一个程序中,不能同时对一个文件进行读写操作 18. 下列有关输入输出函数的说法中,不正确的一项是( ) A.gets()函数用于从终端读入字符串 B.getchar()函数可以从磁盘文件中读入字符 C.fputs()函数可以将字符串输出到文件中去 D.fwrite()函数用于以二进制形式输出数据到文件中 19. 下列语句中,可以用来判断二进制文件的结束方式的选项是( ) A.fgetc(fp)==EOF B.fgetc(fp)!=EOF C.feof(fp)==0 D.feof(fp)!=0 20. 假设fp已经正确定义或指向文件,下面语句中,不能将文件指针fp置于指向的文件头的语句是( ) A.fp=fopen(“abc.txt”,“w”); B.rewind(fp); C.fseek(fp,0L,0); D.feof(fp); 二、填空题(本题共10小题,每题2分,共20分) 21. C语言中文件的打开方式与文件类型有关,一般来说,若没有特别说明,则按照__________来打开。 22. C语言文件的打开语句中,用来分隔路径的标识符是__________。 23. C语言中文件按照数据的组织形式可以分为文本文件和__________。 24. 定义文件指针的格式为__________。 25. 若fp已正确定义,在E盘新建“班级表.txt”的文本文件,打开语句写法是:___________________________。 26. 若fp已正确定义,在E盘打开“班级表.dat”的二进制文件,打开语句写法是:_________________________。 27. fopen函数正常打开的返回值是_________________________。 28. 若fp已正确定义并指向某个文件,想知道一个文件是否读结束,可以使用feof函数,那么构建一个“文件未读完”的条件,正确的写法是____________________。 29. 文件指的是_________________________。 30. 若fp已正确定义并指向某个文件,现要求将打开文件关闭,关闭语句的写法是________。 三、程序运行结果题(本题共4小题,每题5分,共20分) 31. 以下程序的运行结果是【 】。 #include<stdio.h> #include<conio.h> int main() {FILE *fp; int i,a[4]={2,4,6,8},b; fp=fopen("data.dat","wb"); for(i=0;i<4;i++) fwrite(&a[i],sizeof(int),1,fp); fclose(fp); fp=fopen("data.dat","rb"); fseek(fp,-2L*sizeof(int),1); fread(&b,sizeof(int),2,fp); fclose(fp); printf("%d ",b); getch();} 32. 以下程序的运行结果是【 】。 #include<stdio.h> #include<conio.h> int main() {FILE *fp; int i; char ch[ ]="break",t; fp=fopen("d1.dat","wb+"); for(i=0;i<4;i++) fwrite(&ch[i],2,1,fp); fseek(fp,-2L,SEEK_END); fread(&t,2,1,fp); fclose(fp); printf("%c ",t); getch();} 33. 以下程序的运行结果是【 】。 #include<stdio.h> #include<conio.h> int main() {FILE *fp; int k,n,a[6]={7,2,23,4,41,7}; fp=fopen("d2.dat","w"); fprintf(fp,"%d,%d,%d ",a[0],a[1],a[2]); fprintf(fp,"%d%d%d ",a[2],a[3],a[4]); fclose(fp); fp=fopen("d2.dat","r"); fscanf(fp,"%d,%d",&k,&n); printf("%d,%d ",k,n); fclose(fp); getch();} 34. 已有文本文件test.txt,其中的内容为:Hello,everyone!以下程序的运行结果是【 】。#include <stdio.h> #include<conio.h> void main() {FILE *fp; char str[40]; fp=fopen("d:\\test.txt","r"); fgets(str,5,fp); printf("%s ",str); fclose(fp);getch();} 四、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空5分,共20分) 35. 以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束输入)存放到此文件中形成文本文件,并将字符的个数的个位数字写到文件尾部。 #include <stdio.h> void main() { FILE *fp; char ch,filename[30]; int count=0; printf("Input the filename : "); scanf("%s",【1】); if((fp=fopen( 【2】))==NULL) { printf("Can't open file:%s ",filename); exit(0); printf("Enter data: "); while ( 【3】) { fputc(ch,fp); count++;} 【4】 ; 【5】 ;} 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$ 《编程语言基础——C语言》高等教育出版社(第五版) 第九章 文件 章节过关卷 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共20小题,每题2分,共40分) 1. 在C语言中,文件的使用要遵循( )的顺序 A.读写文件,关闭文件 B.打开文件,读写文件 C.打开文件,关闭文件 D.打开文件,读写文件,关闭文件 答案:D 2. 若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式应该选择( ) A.“wb+” B.“ab+” C.“rb+” D.“r” 答案:A 3. 若fp已正确定义并指向某个文件,当未遇到该文件结束标志时,函数feof(fp)的值为( ) A.0 B.1 C.-1 D.一个非零值 答案:A 4. 若要打开C盘上user子目录下名为a123.txt的文本文件进行读写操作,下列选项中符合要求的是( ) A.fopen(“C:\\user\\a123.txt”,“r”); B.fopen(“C:\\user\\a123.txt”,“w”); C.fopen(“C://user//a123.txt”,“r+”); D. fopen(“C:\user\a123.txt”,“rb”); 答案:B 5. 当已经存在一个fab1.txt文件,执行函数:fopen(“fab1.txt”,“r+”)的功能是( ) A.打开fab1.txt文件,清除原有的内容 B. 打开fab1.txt文件,只能读入新的内容 C. 打开fab1.txt文件,只能读取原有内容 D. 打开fab1.txt文件,可以读取和写入新的内容 答案:D 6. fgetc函数的功能是从指定文件读入一个字符,该文件的打开方式必须是( ) A.只写 B.读或读写 C.追加 D.以上选项均不正确 答案:B 7. fputc函数的功能是向指针指向的文件中写入一个字符,该函数的第一个参数可以是( ) A.字符常量 B.字符变量 C.字符元素 D.以上选项均正确 答案:D 8. 若执行 fopen函数时发生错误,则函数的返回值是( ) A.地址值 B.NULL C.1 D.EOF 答案:B 9. 若以〃a+〃方式打开一个已存在的文件,则以下叙述正确的是( ) A. 文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作 B. 文件打开时,原有文件内容不被删除,位置指针移到文件开头,可作重写和读操作 C. 文件打开时,原有文件内容被删除,只可作写操作 D. 以上各种说法皆不正确 答案:A 10. 已知函数的调用形式是:fread(buffer,size,counl,fp);其中 buffer代表的是( ) A. 一个整型变量,代表要读入的数据项总数 B. 一个文件指针,指向要读的文件 C. 一个指针,指向要读入数据的存放地址 D. 一个存储区,存放要读的数据项 答案:C 11. 利用fseek 函数可实现的操作是( ) A. 改变文件的位置指针 B. 文件的顺序读写 C. 文件的随机读写 D. 以上答案均正确 答案:D 12. fseek函数的正确调用形式是( ) A. fseek(文件类型指针,起始点,位移量); B. fseek(fp,位移量,起始点); C. fseek(位移量,起始点,fp); D. fseek(起始点,位移量,文件类型指针); 答案:B 13. 函数rewind的作用是( ) A. 使位置指针重新返回文件的开头 B. 将位置指针指向文件中所要求的特定位置 C. 使位置指针指向文件的末尾 D. 使位置指针自动移至下一个字符位置 答案:A 14. 函数 ftell(fp)的作用是( ) A. 得到流式文件中的当前位置 B. 初始化流式文件的位置指针 C. 移动流式文件的位置指针 D. 以上答案均正确 答案:A 15. 下列选项中,与fseek(fp,0L,SEEK_SET)函数作用相同的是( ) A.rewind(fp) B.feof(fp) C.ftell(fp) D.fgetc(fp) 答案:A 16. fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式不能是( ) A.只读 B.只写 C.读写 D.追加或读 答案:B 17. 下列说法中正确的一项是( ) A.C语言中的文件是流式文件,所以只能顺序存取数据 B.当对文件的读/写操作完成后,必须将已打开的文件关闭,否则可能会导致数据丢失 C.打开一个已经存在的文件进行读写操作之后,原有文件中全部数据必将被覆盖 D.在一个程序中,不能同时对一个文件进行读写操作 答案:B 18. 下列有关输入输出函数的说法中,不正确的一项是( ) A.gets()函数用于从终端读入字符串 B.getchar()函数可以从磁盘文件中读入字符 C.fputs()函数可以将字符串输出到文件中去 D.fwrite()函数用于以二进制形式输出数据到文件中 答案:B 19. 下列语句中,可以用来判断二进制文件的结束方式的选项是( ) A.fgetc(fp)==EOF B.fgetc(fp)!=EOF C.feof(fp)==0 D.feof(fp)!=0 答案:D 20. 假设fp已经正确定义或指向文件,下面语句中,不能将文件指针fp置于指向的文件头的语句是( ) A.fp=fopen(“abc.txt”,“w”); B.rewind(fp); C.fseek(fp,0L,0); D.feof(fp); 答案:D 二、填空题(本题共10小题,每题2分,共20分) 21. C语言中文件的打开方式与文件类型有关,一般来说,若没有特别说明,则按照__________来打开。 答案:文本文件 22. C语言文件的打开语句中,用来分隔路径的标识符是__________。 答案:\\ 23. C语言中文件按照数据的组织形式可以分为文本文件和__________。 答案:二进制文件 24. 定义文件指针的格式为__________。 答案:FILE 25. 若fp已正确定义,在E盘新建“班级表.txt”的文本文件,打开语句写法是:___________________________。 答案:fp=fopen(“E:\\班级表.txt”,“w”); 26. 若fp已正确定义,在E盘打开“班级表.dat”的二进制文件,打开语句写法是:_________________________。 答案:fp=fopen(“E:\\班级表.dat”,“rb”); 27. fopen函数正常打开的返回值是_________________________。 答案:指向文件结构体的指针 28. 若fp已正确定义并指向某个文件,想知道一个文件是否读结束,可以使用feof函数,那么构建一个“文件未读完”的条件,正确的写法是____________________。 答案:!feof(fp) 29. 文件指的是_________________________。 答案:一组相关数据的有序集合 30. 若fp已正确定义并指向某个文件,现要求将打开文件关闭,关闭语句的写法是________。 答案:fclose(fp); 三、程序运行结果题(本题共4小题,每题5分,共20分) 31. 以下程序的运行结果是【 】。 #include<stdio.h> #include<conio.h> int main() {FILE *fp; int i,a[4]={2,4,6,8},b; fp=fopen("data.dat","wb"); for(i=0;i<4;i++) fwrite(&a[i],sizeof(int),1,fp); fclose(fp); fp=fopen("data.dat","rb"); fseek(fp,-2L*sizeof(int),1); fread(&b,sizeof(int),2,fp); fclose(fp); printf("%d ",b); getch();} 答案:2 32. 以下程序的运行结果是【 】。 #include<stdio.h> #include<conio.h> int main() {FILE *fp; int i; char ch[ ]="break",t; fp=fopen("d1.dat","wb+"); for(i=0;i<4;i++) fwrite(&ch[i],2,1,fp); fseek(fp,-2L,SEEK_END); fread(&t,2,1,fp); fclose(fp); printf("%c ",t); getch();} 答案:a 33. 以下程序的运行结果是【 】。 #include<stdio.h> #include<conio.h> int main() {FILE *fp; int k,n,a[6]={7,2,23,4,41,7}; fp=fopen("d2.dat","w"); fprintf(fp,"%d,%d,%d ",a[0],a[1],a[2]); fprintf(fp,"%d%d%d ",a[2],a[3],a[4]); fclose(fp); fp=fopen("d2.dat","r"); fscanf(fp,"%d,%d",&k,&n); printf("%d,%d ",k,n); fclose(fp); getch();} 答案:7,2 34. 已有文本文件test.txt,其中的内容为:Hello,everyone!以下程序的运行结果是【 】。#include <stdio.h> #include<conio.h> void main() {FILE *fp; char str[40]; fp=fopen("d:\\test.txt","r"); fgets(str,5,fp); printf("%s ",str); fclose(fp);getch();} 答案:Hello 四、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空5分,共20分) 35. 以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束输入)存放到此文件中形成文本文件,并将字符的个数的个位数字写到文件尾部。 #include <stdio.h> void main() { FILE *fp; char ch,filename[30]; int count=0; printf("Input the filename : "); scanf("%s",【1】); if((fp=fopen( 【2】))==NULL) { printf("Can't open file:%s ",filename); exit(0); printf("Enter data: "); while ( 【3】) { fputc(ch,fp); count++;} 【4】 ; 【5】 ;} 答案: 【1】filename 【2】filename,“w+” 【3】(ch=getchar())!=‘#’ 【4】fputc(count%10+48,fp) 【5】fclose(fp) 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$

资源预览图

第九章  文件《编程语言基础-C语言》(高教版第五版)章节过关卷
1
第九章  文件《编程语言基础-C语言》(高教版第五版)章节过关卷
2
第九章  文件《编程语言基础-C语言》(高教版第五版)章节过关卷
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。