计算机等级二级C语言章节习题及答案13.docx

上传人:b****6 文档编号:4328014 上传时间:2022-11-29 格式:DOCX 页数:7 大小:18.08KB
下载 相关 举报
计算机等级二级C语言章节习题及答案13.docx_第1页
第1页 / 共7页
计算机等级二级C语言章节习题及答案13.docx_第2页
第2页 / 共7页
计算机等级二级C语言章节习题及答案13.docx_第3页
第3页 / 共7页
计算机等级二级C语言章节习题及答案13.docx_第4页
第4页 / 共7页
计算机等级二级C语言章节习题及答案13.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

计算机等级二级C语言章节习题及答案13.docx

《计算机等级二级C语言章节习题及答案13.docx》由会员分享,可在线阅读,更多相关《计算机等级二级C语言章节习题及答案13.docx(7页珍藏版)》请在冰豆网上搜索。

计算机等级二级C语言章节习题及答案13.docx

计算机等级二级C语言章节习题及答案13

2011年计算机等级二级C语言章节习题及答案(13)

第13章文件

一、选择题(在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项填涂在答题卡相应位置上。

13.1fseek函数的正确调用形式是

A)fseek(文件指针,起始点,位移量)

B)fseek(文件指针,位移量,起始点)

C)fseek(位移量,起始点,文件指针)

D)fseek(起始点,位移量,文件指针)

正确答案:

B

13.2若fp是指向某文件的指针,且已读到文件末尾,则函数feof(fp)的返回值是

A)EOF

B)-1

C)1

D)NULL

正确答案:

C

13.3fscanf函数的正确调用形式是

A)fscanf(fp,格式字符串,输出表列);

B)fscanf(格式字符串,输出表列,fp);

C)fscanf(格式字符串,文件指针,输出表列);

D)fscanf(文件指针,格式字符串,输入表列);

正确答案:

D

13.4下列关于C语言数据文件的叙述中正确的是

A)文件由ASCII码字符序列组成,C语言只能读写文本文件

B)文件由二进制数据序列组成,C语言只能读写二进制文件

C)文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件

D)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件

正确答案:

D

13.5函数fseek(pf,OL,SEEK_EN

D)中的SEEK_END代表的起始点是

A)文件开始

B)文件末尾

C)文件当前位置

D)以上都不对

正确答案:

B

13.6C语言中,能识别处理的文件为

A)文本文件和数据块文件

B)文本文件和二进制文件

C)流文件和文本文件

D)数据文件和二进制文件

正确答案:

B

13.7若调用fputc函数输出字符成功,则其返回值是

A)EOF

B)1

C)0

D)输出的字符

正确答案:

D

13.8已知函数的调用形式:

fread(buf,size,count,fp),参数buf的含义是

A)一个整型变量,代表要读入的数据项总数

B)一个文件指针,指向要读的文件

C)一个指针,指向要读入数据的存放地址

D)一个存储区,存放要读的数据项

正确答案:

C

13.9当顺利执行了文件关闭操作时,fclose函数的返回值是

A)-1

B)TRUE

C)0

D)1

正确答案:

C

13.10如果需要打开一个已经存在的非空文件“Demo”进行修改下面正确的选项是

A)fp=fopen("Demo","r");

B)fp=fopen("Demo","ab+");

C)fp=fopen("Demo","w+");

D)fp=fopen("Demo","r+");

正确答案:

D

13.11若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是

A)fopen("A:

\user\abc.txt","r")

B)fopen("A:

\\user\\abc.txt","rt+")

C)fopen("A:

\user\abc.txt","rb")

D)fopen("A:

\user\abc.txt","w")

正确答案:

B

13.12fwrite函数的一般调用形式是

A)fwrite(buffer,count,size,fp);

B)fwrite(fp,size,count,buffer);

C)fwrite(fp,count,size,buffer);

D)fwrite(buffer,size,count,fp);

正确答案:

D

13.13C语言中,文件组成的基本单位为

A)记录

B)数据行

C)数据块

D)字符序列

正确答案:

D

13.14C语言中,系统的标准输入文件是指

A)键盘

B)显示器

C)软盘

D)硬盘

正确答案:

A

13.15有以下程序

#include

main()

{FILE*fp;inti=20,j=30,k,n;

fp=fopen("d1.dat","w");

fprintf(fp,"%d\n",i);fprintf(fp,"%d\n",j);

fclose(fp);

fp=fopen("d1.dat","r");

fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);

fclose(fp);

}

程序运行后的输出结果是

A)2030

B)2050

C)3050

D)3020

正确答案:

A

13.16阅读以下程序及对程序功能的描述,其中正确的描述是

#include

main()

{FILE*in,*out;

charch,infile[10],outfile[10];

printf("Entertheinfilename:

\n");

scanf("%s",infile);

printf("Entertheoutfilename:

\n");

scanf("%s",outfile);

if((in=fopen(infile,"r"))==NULL)

{printf("cannotopeninfile\n");

exit(0);

}

if((out=fopen(outfile,"w"))==NULL)

{printf("cannotopenoutfile\n");

exit(0);

}

while(!

feof(in))fputc(fgetc(in),out);

fclose(in);

fclose(out);

}

A)程序完成将磁盘文件的信息在屏幕上显示的功能

B)程序完成将两个磁盘文件合二为一的功能

C)程序完成将一个磁盘文件复制到另一个磁盘文件中

D)程序完成将两个磁盘文件合并并在屏幕上输出

正确答案:

C

13.17下面的程序执行后,文件test中的内容是

#include

voidfun(char*fname,char*st)

{FILE*myf;inti;

myf=fopen(fname,"w");

for(i=0;i

fclose(myf);}

main()

{fun("test","newworld");fun("test","hello,");}

A)hello,

B)newworldhello,

C)newworld

D)hello,rld

正确答案:

A

13.18假定当前盘符下有两个文本文件,如下

文件名a1.txta2.txt

内容123#321#

则下面程序段执行后的结果为

#include"stdio.h"

voidfc(FILE*p)

{charc;

while((c=fgetc(p))!

=′#′)putchar(

C);

}

main()

{FILE*fp;

fp=fopen("a1.txt","r");

fc(fp);

fclose(fp);

fp=fopen("a2.txt","r");

fc(fp);

fclose(fp);

putchar(′\n′);}

A)123321

B)123

C)321

D)以上答案都不正确

正确答案:

A

13.19阅读下面程序,程序实现的功能是(a123.txt在当前盘符下已经存在)

#include"stdio.h"

voidmain()

{FILE*fp;

inta[10],*p=a;

fp=fopen("a123.txt","w");

while(strlen(gets(p))>0)

{fputs(a,fp);

fputs("\n",fp);

}

fclose(fp);

}

A)从键盘输入若干行字符,按行号倒序写入文本文件a123.txt中

B)从键盘输入若干行字符,取前2行写入文本文件a123.txt中

C)从键盘输入若干行字符,第一行写入文本文件a123.txt中

D)从键盘输入若干行字符,依次写入文本文件a123.txt中

正确答案:

D

13.20阅读下面程序,此程序的功能为

#include"stdio.h"

main(intargc,char*argv[])

{FILE*p1,*p2;

intc;

p1=fopen(argv[1],"r");

p2=fopen(argv[2],"a");

c=fseek(p2,0L,2);

while((c=fgetc(p1))!

=EOF)fputc(c,p2);

fclose(p1);

fclose(p2);

}

A)实现将p1打开的文件中的内容复制到p2打开的文件

B)实现将p2打开的文件中的内容复制到p1打开的文件

C)实现将p1打开的文件中的内容追加到p2打开的文件内容之后

D)实现将p2打开的文件中的内容追加到p1打开的文件内容之后

正确答案:

C

二、填空题(请将每一个空的正确答案写在答题卡相应序号后。

13.21利用fseek函数可以实现的操作是【1】

正确答案:

从所改变的文件位置指针处开始读写

13.22下面程序把从终端读入的文本(用@作为文本结束标志)输出到一个名为bi.dat的新文件中,请填空。

#include"stdio.h"

FILE*fp;

{charch;

if((fp=fopen(【2】))==NULL)exit(0);

while((ch=getchar())!

='@')fputc(ch,fp);

fclose(fp);}

正确答案:

"bi.dat","w"或"bi.dat","w+"

13.23在对文件操作的过程中,若要求文件的位置指针回到文件的开始处,应当调用的函数是【3】。

正确答案:

rewind()或fseek()

13.24以下程序将数组a的4个元素和数组b的6个元素写到名为lett.dat的二进制文件中,请填空。

#include

main()

{FILE*fp;

chara[4]="1234",b[6]="abcedf";

if((fp=fopen("【4】","wb"))=NULL)exit(0);

fwrite(a,sizeof(char),4,fp);

fwrite(b,【5】,1,fp);

fclose(fp);

}

正确答案:

lett.dat6*sizeof(char)

13.25用以下语句调用库函数malloc,使字符指针st指向具有11个字节的动态存储空间,请填空。

st=(char*)【6】;

正确答案:

malloc(11)或malloc(sizeof(char)*11)

13.26以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。

FILE*myf;longf1;

myf=【7】("test.t","rb");

fseek(myf,0,SEEK_EN

D);

f1=ftell(myf);

fclose(myf);

printf("%d\n",f1);

正确答案:

fopen

13.27“FILE*p”的作用是定义一个文件指针变量,其中的“FILE”是在【8】头文件中定义的。

正确答案:

stdio.h

13.28当调函数frend从磁盘文件中读取数据时,若函数数的返回时为5,则表明【9】;若函数的返回值为0,则表明【10】。

正确答案:

读取的数据项做为5文件结束或出错

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 天文地理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1