首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WfiteText实现。请在程序的下划线处填入正
给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WfiteText实现。请在程序的下划线处填入正
admin
2018-09-27
52
问题
给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WfiteText实现。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
1 #include<stdio.h>
2 #include<string.h>
3 #include<stdlib.h>
4 void WriteText(FILE *);
5 void ReadText(FILE *);
6 main()
7 {FILE *fp;
8 if((fp=fopen(’’myfile4.txt’’,’’w’’))==NULL)
9 { printf(’’open fail!!\n’’);exit(0);}
10 writeText(fp);
11 fclose(fp);
12 if((fp=fopen(’’myfile4.txt’’,’’r’’))==NULL)
13 {printf(’’open fail!!\n’’);exit(0);}
14 ReadText(fp);
15 fclose(fp);
16 }
17 /**********found**********/
18 void WriteText(FILE ___1___ )
19 { char str[81];
20 printf(’’\nEnter string with -1 to end:\n’’),
21 gets(str);
22 while(strcmp(str,’’-1’’)!=0) {
23 /**********found**********/
24 fputs(___2___,fw); fputs(’’\n’’,fw);
256 gets(sir);
26 }
27 }
28 void ReadText(FILE *fr)
29 { char str[81];
30 printf (’’\nRead file and output to screen:\n’’);
31 fgets(sir,81,fr);
32 while(!leof(fr)) {
33 /**********found**********/
34 printf(’’%s’’,___3____);
35 fgets(sir,81,fr);
36 }
37 }
选项
答案
(1)*fw (2)str (3)str
解析
本题要求是把一段文本写到文件myfile4.txt中,用-1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。主要考查文件操作以及fputs和fgets函数的使用。
第一空:此处是补充函数参数名,参数类型已知是FILE文件指针,“fputs(’’\a",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://jikaoti.com/ti/yAa0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下面程序main(){intx=32;printf("%d\n",x=x<<1);}的输出是______。
程序中若有如下说明和定义语句Charfun(char*);main(){char*s="one",a[5]={0}.(*f1)()=fun,ch;…}以下选项中对函数fun
下列程序的运行结果是()。#include<stdio.h>main(){stmctdate{intyear,month,day;}today;primf("%d\n",sizeof(struct
若变量a,b 已定义为int类型并赋值21和55,要求用printf函数以a=21,b=55的形式输出,请写出完整的输出语句[]。
若输入3、4、5,程序的输出结果为【】。#include"math.h"main(){floata,b,c,s,area;scanf("%f,%f,%f",&a,&b,&c)
若输入000051,下列程序的运行结果为______。main(){unsignedinta;scanf("%o",&a);printf("%o\n",getbits(a));}getbits(value)unsignedint
下列程序的运行结果是()。main(){intx=1,y=3,a=0;while(x++!=(y-=1)){a+=1;if(y<x)break;}printf("%d,%d
以下关于C语言数据类型的叙述中正确的是()。
下列关键字中,不属于C语言变量存储类别的是______。
要求使下列程序输出5个整数,请填空。for(i=0;i<=______;printf("%d\n",i+=2));
随机试题
高血压病人适宜的运动方式有()。
简述静脉注射失败的常见原因。
在刑事诉讼中询问证人时,可以召集相关证人集体进行询问。()
女,40岁。向心性肥胖伴乏力3年。查体:BP180/110mmHg,满月脸、多血质,皮肤可见宽大紫纹,血糖12.8mmol/L,血钾3.8mmol/L,尿皮质醇增高,小剂量地塞米松试验不能抑制,但大剂量地塞米松试验能抑制。未明确病因,除肾上腺CT检查外,最
川芎含柴胡含
根据外商投资企业和外国企业所得税法有关规定,下列说法正确的是()。
光隔离器的工作原理是()。
露布(华东师大2018年研;厦门大学2016年研;电子科大2011年研)
通信线路的带宽是描述通信线路的______。
Atreesucksupwaterthroughits______.Duringitsgrowth,howmuchofthewaterfromthesoildoesthetreegiveoffintoth
最新回复
(
0
)