首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0。在复制的过程中,把复制的内容输出到终端屏幕。主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。 请在程序
给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0。在复制的过程中,把复制的内容输出到终端屏幕。主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。 请在程序
admin
2017-11-27
50
问题
给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为1,失败时返回值为0。在复制的过程中,把复制的内容输出到终端屏幕。主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
int fun(char *source, char
*target)
{FILE *fs,*ft; char ch;
/********found* *********/
if ((fs=fopen(source,【1】))
==NULL)
return 0;
if ((ft=fopen(target,"w"))==NULL
)
return 0;
printf ("\nThe data in
file :\n");
ch=fgetc(fs);
/*********found**********/
while (! feof (【2】) )
{ putchar(ch);
/********** found* *********/
fputc (ch,【3】) ;
ch=fgetc(fs);
}
fclose(fs); fclose(ft);
printf("\n\n");
return 1;
}
main ()
{ char sfname[20] ="myfilel",
tfname[20]="myfile2";
FILE *myf; int i; char c;
myf=fopen(sfname,"w");
printf("\nThe original
data :\n");
for(i=l; i<30; i++)
{ c=’A’+rand() %25;
fprintf(myf, "%c",c);
printf ("%c",c);}
fclose (myf) ,-printf ("\n\n");
if(fun(sfname, tfname))
printf ("Succeed!");
else printf("Fail!");
}
选项
答案
(1)"r" (2)fs (3)ft
解析
第一空:将指定源文件中的内容复制到指定的目标文件中,源文件只需读,因此,以只读方式打开即可,故第一空处应该是“if((fs=fopen(source,"r"))=NULL)”。
第二空:“while(!feof(【2】))”循环的目的是不断读取源文件直至到达源文件的末尾,循环结束标志是己达到文件的末尾。用feof()函数来检查是否已经到了文件末尾,文件状态检测函数feof()的调用形式是:feof(fs),如果已经到达文件尾函数返回非零值,否则返回0,故第二空处应该是“while(!feof(fs))”。
第三空:考察fputc函数的使用方法,fputc函数的调用形式是:fputc(ch,ft),ch是要输出的字符,由“ch=fgetc(fs)”从源文件读到字符ch,然后将ch写到目标文件中,故第三空处应该是“fputc(ch,ft);”。
转载请注明原文地址:https://kaotiyun.com/show/Gnxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includevoidexch(intt[]){t[0]=t[5];}main(){intx[10]={1,2,3,4,5,6,7,8,9,10},i=0;while(i
(34)有以下程序#includevoidfun(int*S){smticintj=0;do{s[j]=s[j]+s[j+1];}while(++j
有以下程序#includemain(){inta,b,k,m,*p1,*p2;k=1,m=8;p1=&k,p2=&m;a=/*p1-m:b=*p1+*p2+6;printf(“%d”,
若有chars[3][3]={“AAA”,“BBB”,“CCC”};说明语句,则与它等价的语句是<)。
下列数组定义中错误的是()。
设X和Y都是int类型,且x=1,y=2,则printf(“%d%d”,x,y(x,y))的输出结果是()。
下列有关数据库的描述,正确的是()。
一名学生只能住一间宿舍,一间宿舍可住多名学生,则实体“宿舍”与实体“学生”的联系属于___________的联系。
下列程序的输出结果是()。#include<stdio.h>#include<string.h>main(){chara[]="\n123\\";printf("%d,%d\n",strlen(A),sizeof(A));}
用筛选法可得到2~n(n<10000)之间的所有素数,方法是:首先从素数2开始,将所有2的倍数的数从数表中删去(把数表中相应位置的值置成0);接着从数表中找下一个非0数,并从数表中删去该数的所有倍数;依此类推,直到所找的下一个数等于n为止。这样会得到一个序
随机试题
(华沙公约》规定,国际航空运输过程中出现的诉讼,其时效为自航空器到达或应该到达之日或自运输停止之日起()
心电图低电压可见于()
狼疮性肾炎感染性心内膜炎局灶性肾炎
一般不引起脾大的疾病是
纳税人的下列行为中,属于偷税行为的有()。
凭样品买卖的买受人不知道样品有隐蔽瑕疵,出卖人交付的标的物与样品相同,则根据《中华人民共和国民法典》规定,()。
纳税人销售应税消费品收取的下列款项中,应并入消费税计税依据的有()。
根据皮亚杰的认知发展阶段理论,儿童处于()阶段时,能够进行假设性思维,智力发展趋于成熟。
弗里德曼认为货币需求函数具有的特点是()
Theskyhadaneerieyellow-orangehue,withthesunglowingbehindapeculiarhaze.
最新回复
(
0
)