首页 > 试题广场 >

下列说法正确的是()

[不定项选择题]
下列说法正确的是()
  • 函数fscanf不能从标准输入流读取数据
  • 程序员必须明确地用函数fopen打开标准输入流、标准输出流和标准错误流
  • 程序必须明确地调用函数fclose关闭文件
  • 如果文件位置指针没有指向顺序存取文件的起始位置,要从文件起始位置读取数据必须关闭文件然后再打开它。
  • 函数fprintf能够把数据写入标准输出流
  • 函数fseek只能定位相对于文件起始点的位置
  • 查找随机存取文件中的指定记录不必从头逐条查找
为什么做java会碰到这个。。一脸懵逼
发表于 2019-08-04 10:01:06 回复(0)
太难了
发表于 2019-07-18 18:09:20 回复(0)
A选项中,fscanf的原型是
int fscanf(FILE *stream, const char *format, ...)
其中 stream 指向 FILE 对象的指针,该 FILE 对象标识了流,标准输入流是STDIN,因此fscanf可以从标准输入流中读取数据,A错误
B选项中,fopen的原型是
FILE *fopen(const char *filename, const char *mode)
它返回一个FILE结构指针,其中包含了对所打开流进行操作的全部信息,包括文件描述符。当执行程序时,STDIN STDOUT STDERR会自动打来,无需调用fopen打开,B错误
C选项中,如果没有明确地调用函数fclose,则操作系统通常在程序执行结束的稍后关闭文件。但是,这样可能会带来一些难以预料的问题,所以一定要注意在使用结束之后关闭文件。所以感觉C应该是对的,可能答案认为不是那么必须吧
D选项中,可以通过fseek函数定位流stream的文件位置,以whence为起点,偏移offset,因此无需关闭文件再打开,D错误
int fseek(FILE *stream, long int offset, int whence)
E选项中,fprintf原型为
int fprintf(FILE *stream, const char *format, ...)
将stream写为STDOUT即可将数据写入标准输出流,E正确
F选项中,fseek的whence参数能够设置为SEEK_SET(文件的开头)SEEK_CUR(文件指针的当前位置)SEEK_END(文件的末尾),F错误
G选项中,随机存取文件是将记录散列在存取介质上的,可以自己定位想要读的文件内容的指针位置,不必从头查找,G正确
发表于 2019-07-21 20:48:19 回复(2)
建议移除C++的题
发表于 2019-07-18 19:57:51 回复(3)
发表于 2019-07-18 15:47:42 回复(1)
带顺丰标签的题就没绿过😂😂😂😂
发表于 2019-08-18 18:36:15 回复(0)
我想起来了,妈的当初学C的时候,期末了前面课没讲完,然后老师说这个知识点不咋考,然后让我们自己下去学,然后就没有学
发表于 2022-01-07 14:57:20 回复(1)
顺丰应该以为学Java的都会c
发表于 2019-08-21 16:15:55 回复(0)
  1. 函数fscanf不能从标准输入流读取数据。这个说法不正确,实际上fscanf可以从标准输入流读取数据。

  2. 程序员必须明确地用函数fopen打开标准输入流、标准输出流和标准错误流。这个说法也不正确,标准输入流、标准输出流和标准错误流无需通过fopen打开,它们会在程序运行时自动打开。

  3. 程序必须明确地调用函数fclose关闭文件。这个说法是正确的,程序员在打开文件后需要负责关闭文件,以释放资源并确保数据完整性。

  4. 如果文件位置指针没有指向顺序存取文件的起始位置,要从文件起始位置读取数据必须关闭文件然后再打开它。这个说法不正确,可以使用fseek函数将文件位置指针移动到文件的起始位置,而无需关闭文件再打开。

  5. 函数fprintf能够把数据写入标准输出流。这个说法是正确的,fprintf可以将数据写入到指定的输出流,包括标准输出流。

  6. 函数fseek只能定位相对于文件起始点的位置。这个说法不正确,fseek可以用来定位文件中任意位置的指针。

  7. 查找随机存取文件中的指定记录不必从头逐条查找。这个说法是正确的,可以使用fseek来直接定位到指定位置进行读取,而无需从头逐条查找。

发表于 2023-11-09 19:23:13 回复(0)
A选项中,fscanf的原型是
int fscanf(FILE *stream, const char *format, ...)
其中 stream 指向 FILE 对象的指针,该 FILE 对象标识了流,标准输入流是STDIN,因此fscanf可以从标准输入流中读取数据,A错误
B选项中,fopen的原型是
FILE *fopen(const char *filename, const char *mode)
它返回一个FILE结构指针,其中包含了对所打开流进行操作的全部信息,包括文件描述符。当执行程序时,STDIN STDOUT STDERR会自动打来,无需调用fopen打开,B错误
C选项中,如果没有明确地调用函数fclose,则操作系统通常在程序执行结束的稍后关闭文件。但是,这样可能会带来一些难以预料的问题,所以一定要注意在使用结束之后关闭文件。所以感觉C应该是对的,可能答案认为不是那么必须吧
D选项中,可以通过fseek函数定位流stream的文件位置,以whence为起点,偏移offset,因此无需关闭文件再打开,D错误
int fseek(FILE *stream, long int offset, int whence)
E选项中,fprintf原型为
int fprintf(FILE *stream, const char *format, ...)
将stream写为STDOUT即可将数据写入标准输出流,E正确
F选项中,fseek的whence参数能够设置为SEEK_SET(文件的开头)SEEK_CUR(文件指针的当前位置)SEEK_END(文件的末尾),F错误
G选项中,随机存取文件是将记录散列在存取介质上的,可以自己定位想要读的文件内容的指针位置,不必从头查找,G正确
发表于 2022-05-15 14:33:56 回复(1)
表示一脸懵逼
发表于 2019-12-15 11:19:14 回复(0)
我猜这是顺丰的题,猜对了
发表于 2019-08-22 22:49:30 回复(0)
发表于 2022-10-25 16:50:24 回复(0)
C选项:fclose关闭文件, 编程中,程序员是需要处理的。当然,留给操作系统,可能造成不可预知问题。所以,C选项,原则上来件也是正确的,编码中确实需要flose文件
发表于 2020-07-22 09:12:18 回复(1)
万恶的顺丰科技
发表于 2019-08-09 20:04:02 回复(0)
在 C 或 C++ 编程中,不需要程序员使用 fopen 函数显式打开标准输入流(stdin)、标准输出流(stdout)、和标准错误流(stderr)。这三个流是由运行时环境自动打开并可用的,因为它们是在程序启动时由操作系统自动提供给程序的。

这三个标准流分别关联到操作系统的控制台或终端,分别用于程序的输入、输出和错误输出:

stdin(标准输入流):通常与键盘输入或从其他程序或文件的重定向输入关联。
stdout(标准输出流):用于输出数据到终端或向其他程序或文件输出数据。
stderr(标准错误流):专用于输出错误消息或诊断信息,即使在 stdout 被重定向时,也常保持输出到终端,以便可以分离常规输出和错误消息。
编辑于 2024-04-26 15:39:33 回复(0)
文字游戏,有何意义
编辑于 2024-04-21 21:21:16 回复(0)
文件io的题目怎么放到c的
发表于 2023-06-29 15:39:17 回复(0)
想考文件就好好考,什么乱七八糟的题,读着都有歧义
发表于 2023-02-10 11:31:11 回复(0)
顺顺丰丰

发表于 2019-08-23 14:34:11 回复(0)