首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。请在程序的下划线处填入正
给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。请在程序的下划线处填入正
admin
2019-03-06
38
问题
给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include
#include
#include
void WriteText(FILE *) ;
void ReadText(FILE *);
main ()
{FILE *fp;
if( (fp=fopen("myfile4.txt","w"))
==NULL)
{ printf(" open fail!!\n");
exit(0);}
WriteText(fp);
fclose (fp);
if( (fp=fopen("myfile4.txt",
"r"))==NULL)
{printf(" open fail!!\n");exit(0);}
ReadText(fp);
fclose(fp);
}
/**********found**********/
void WriteText(FILE 【1】)
{ char str[81];
printf("\nEnter string with -1
to end :\n");
gets(str);
while(strcmp(str,"-1")!=0) {
/********** found* *********/
fputs (【2】, fw) ;
fputs("\n",fw);
gets (str);
}
}
void ReadText(FILE *fr)
{ char str[81];
printf("\nRead file and output
to screen :\n");
fgets(str, 81,fr) ;
while(!feof(fr)) {
/********* found**********/
printf ("%s",【3】) ;
fgets(str,81,fr);
}
}
选项
答案
(1)*fw (2)str (3)str
解析
第一空:此处是补充函数参数名,参数类型已知是FILE文件指针,“fputs("\n",fw)”是将字符“\n”写入文件,可知fw是文件指针名,因此,第一空处应该是“void WriteText(FILE*fw)”。
第二空:“while(strcmp(str,"-1")!=0)”循环的结束标志是str字符串等于“-1”时循环退出,如果str不等于“-1”,执行循环体内容:用fputs函数将str字符串写入文件。fputs函数的调用形式是:“fputs(s,fp)”,其中,s是指向字符串的指针或字符串数组名,fp是指向将要被写入的文件的文件指针,因此,第二处应该是“fputs(str,fw)”。
第三空:“while(!feof(fr))”循环的作用是不断读取文件直到到达文件尾,每次最多读81个,将读到的数据放在str字符串里,并用printf输出到屏幕,因此,第三处应该是“printf("%s",str)”。
转载请注明原文地址:https://kaotiyun.com/show/lIRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有如下程序main(){inti,sum;for(i=1;i<=3;sum++)sum+=i;printf("%d\n",sum);}该程序的执行结果是_____。
阅读下述程序段:y=-1;if(x!=0)if(x>0)y=1;elsey=0;该程序段所描述的数学关系是()
下面的程序可对指定字符串中的字符串进行从大到小排序,请将程序填完整。(注:程序采用了冒泡排序算法)#include<stdio.h>#include<string.h>main(){char*str="ABCDabcd
下面程序的运行结果是()。#include<stdio.h>#defineSIZE12main(){chars[SIZE];inti;for(i=0;i<SIZE;i++)s[i]=’A’+i+32;
若要说明x是整型变量,p为指向x的整型指针变量,则正确的说明是______。
有下列程序:main(){inti,j;for(i=1;i<4;i++){for(j=i;j<4;j++)printf("%d*%d=%d",i,j,i*j);printf("\n");}}
若有下列定义(设int类型变量占2个字节):inti=8;则下列语句:printf("i=%08d",i);输出的结果是()。
Jackson方法是一种面向______的结构化方法。
下列数据结构中,能用二分法进行查找的是()。
数据处理的最小单位是
随机试题
对于“百日维新”的表述正确的有()
超声探头压电材料的作用是
用户可以通过文件扩展名识别出文件的格式类型。()
A公司出纳员在审核该公司办公室主任李某购买办公用品的发票时,发现出具发票的商场误将“A公司”写成“AB公司”,该出纳员正确的处理方法是()。
地球东西半球的实际分界线是()。
下列关于现代通信发展的说法,正确的是()。
A.条件(1)充分,但条件(2)不充分.B.条件(2)充分,但条件(1)不充分.C.条件(1)和(2)单独都不充分,但条件(1)和条件(2)联合起来充分.D.条件(1)充分,条件(2)也充分.E.条件(1)和(2)单独都不充分,条件(1)和条件(2
关于CMIP协议的描述中,正确的是()。
在操作系统中,为保护临界资源不被破坏,程序进入临界区应遵循以下哪些准则?()
Careeristsarepeoplewhoseself-imageisdeterminedalmostexclusivelybytheirjobs.【B1】______everythingtheydoisdesignedt
最新回复
(
0
)