首页 > 试题广场 >

设fp已定义,执行语句fp=fopen("file","w"

[不定项选择题]
设fp已定义,执行语句fp=fopen("file","w");后,以下针对文本文件file操作叙述的选项错误的是:
  • 可以随意读和写
  • 只能写不能读
  • 可以在原有内容后追加写
  • 写操作结束后可以从头开始读
正确答案:ACD;本题考察C语言中的文件操作;
解析:
fopen(“file”,”w”)打开文件,并赋值为“w”权限,即写权限,则B正确,A错误,因为这里不具有读权限;对于C的解释:用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。所以C错误;对于D的解释:D所描述的权限应该是“w+”而非“w”,所以D错误;

发表于 2016-08-24 00:11:09 回复(3)
更多回答
推荐
对选项C的解释: 用“w”打开的文件只能向该文件写入。 若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件
编辑于 2015-12-18 11:29:58 回复(4)
发表于 2016-07-03 19:35:24 回复(0)
我想问一下:D说写后可以从头开始读,是指写后马上指针回开头,还是说关闭文件流后,下次打开啊?D应该是错误的,我看课本里描述:"w+"先建立文件并进行写操作后,"w+"可以从头开始读。但是"w"却没有此描述!
发表于 2015-11-12 16:38:49 回复(3)
对于C选项
w 打开只写文件,若文件存在则文件长度清为 0 ,即该文件内容会消失。若文件不存在则建立该文件。因此C选项如果文件有内容的话,会清空掉再进行写入,因此不可能再原有内容后进行写操作,
编辑于 2017-06-11 22:43:09 回复(0)
我靠,选项错误的是.........
发表于 2017-10-13 12:17:59 回复(0)
窝草!原来是选择错误的!
发表于 2017-08-12 09:31:22 回复(0)

fopen是一个C标准库函数,用于打开文件并返回一个指向该文件的文件指针。它的原型如下:

			
cCopy Code
FILE *fopen(const char *filename, const char *mode);

参数说明:

  • filename:要打开的文件的名称,可以包括文件路径。它可以是一个字符串常量或字符数组。
  • mode:以何种方式打开文件的字符串常量。它指定了文件的访问模式,有以下选项:
    • "r":以只读方式打开文件。文件必须存在,否则打开失败。
    • "w":以写方式打开文件。如果文件不存在,则创建一个新文件;如果文件已存在,则清空文件内容。
    • "a":以追加方式打开文件。如果文件不存在,则创建一个新文件;如果文件已存在,新数据将追加到文件末尾。
    • "r+":以读写方式打开文件。文件必须存在,否则打开失败。
    • "w+":以读写方式打开文件。如果文件不存在,则创建一个新文件;如果文件已存在,则清空文件内容。
    • "a+":以读写方式打开文件。如果文件不存在,则创建一个新文件;如果文件已存在,新数据将追加到文件末尾。
发表于 2023-10-30 15:50:36 回复(0)
D项描述的是以"w+"打开的情形,对于“w",是只写不能读的,答案有问题,个人觉得应该是ACD。
发表于 2015-11-13 18:55:27 回复(3)
完美错过
发表于 2020-10-15 10:56:49 回复(0)
append追加,缩写a
发表于 2020-08-23 10:47:56 回复(0)
“a”才是有追加的效果
发表于 2019-03-07 12:38:09 回复(0)
这个D……我close(fp),然后再open("file", "r")一次不行吗?他只是说写操作完后可以从头读,没有说不能使用write以外的操作吧。
发表于 2018-04-09 10:01:09 回复(0)
c:如果打开的是不存在的文件, 那么就会直接进行写操作。
然而, 如果是已经存在的文件,那么就会把原来的内容删除后,重新进行写操作呦。
发表于 2017-11-30 10:35:37 回复(0)
FILE * fopen(const char * path,const char * mode);
参数path字符串包含欲打开的文件路径及文件名,
参数mode字符串则代表着流形态。
  r  打开只读文件,该文件必须存在。 
  w  打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
发表于 2017-05-16 09:37:51 回复(0)
在写操作之前将偏移量移至文件尾部呢?
发表于 2016-09-25 07:49:24 回复(0)
用“w”打开的文件只能向该文件写入。 若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件
发表于 2016-09-18 08:53:12 回复(0)
看错题目了 选错的 QAQ
发表于 2016-09-06 11:54:42 回复(0)
基础知识,fp=fopen("file","w");指的是写操作之后只可以读
发表于 2016-08-06 16:04:38 回复(0)
发表于 2016-08-02 18:35:50 回复(0)
w只有写的功能 应该选AC吧
发表于 2016-03-18 23:44:48 回复(1)