第十五章单元测试
- 关于C语言中的文件系统,下面说法错误的是( )。
- 关于读写位置指针,下面四种说法中正确的是( )。
- 关于在缓冲文件系统中打开文件,下面说法正确的是( )。
- 关于打开文件,下面说法错误的是( )。
- 下列四种打开文件的方式中,能删除原文件(已有文件)内容的是( )。
- 缓冲文件系统中,使用下面哪类文件或设备不需要程序员打开和关闭?( )。
- 标准函数fgets(s, n, f )的功能是( )。
- 假设所有用到的函数都能正确执行,则下面说法正确的是( )。
- 以下关于文件操作的说法中,正确的是( )。
- windows中,用"w"方式打开文件,把短整型变量n=10的值以及字符变量c='\n'的值用fwrite()分两次写入文件,则文件的内容(二进制数)是( )。
- 文件的二进制内容是:00001101 00001010 00110010 00100000,windows中,用"r"方式打开文件,用fscanf(fp,"%c%hd",&c,&n)函数读取一个字符和一个短整数,则字符和短整数分别是( )。
- 曾经,用fwrite函数(该函数用二进制方式写数据)向文件中写了一个整数,今欲将其读取出来,关于用什么方式打开文件,下面说法正确的是( )。
- 文本文件中只存有一个字符‘A',要将它读出来,下面说法正确的是( )。
- 文件的二进制内容是:00110001 00100000,用fscanf(fp,"%d",&x)或fread(&x,2,1,fp)读取一个短整数,则用此两种函数读出来的结果分别是( )。
A:C语言的文件系统有两种:一种可以自动给文件分配缓冲区,另一种不自动分配
B:fread、fwrite、fscanf函数既可以用在缓冲文件系统中,又可以用在非缓冲文件系统中,而read、write、fpen函数则只能用于非缓冲文件系统中
C:C语言用于输入输出的函数有两种:一种只能用在缓冲文件系统中,另一种既可以用在缓冲文件系统中,也可以用在非缓冲文件系统中
D:在缓冲文件系统中,每用fopen成功打开一个文件,就会在内存中分配一个缓冲区
答案:fread、fwrite、fscanf函数既可以用在缓冲文件系统中,又可以用在非缓冲文件系统中,而read、write、fpen函数则只能用于非缓冲文件系统中
A:文件的读写位置指针,记录着已经读(写)了多少字节了
B:文件的读写位置指针,指向FILE型变量中的某字节
C:文件的读写位置指针,指向刚刚读写过的那一个字节
D:对文件进行一次读(写)操作时,文件的读写位置指针会自动移动,总是指向刚刚读(写)的那个字节的下一个字节
A:其他三种说法都不对
B:在缓冲文件系统中打开文件,其实就是把文件内容由磁盘装入缓冲区
C:在缓冲文件系统中打开文件,其实就是在内存中开辟一个FILE型变量
D:在缓冲文件系统中打开文件,其实就是为文件建立一个缓冲区
A:打开文件失败,有可能是文件没找到,也可能是缓冲区或FILE型变量分配失败
B:打开文件成功,则fopen()返回非0值
C:打开文件成功,则fopen()返回缓冲区首地址
D:打开文件失败,则fopen()返回NULL
A:a+
B:w
C:a
D:r+
A:当前盘上的文件
B:C盘根目录中的文件
C:当然目录中的文件
D:键盘和显示器
A:从文件中读取长度为n的字符串存入指针s所指的内存
B:从文件中读取长度不超过n-1个字符组成字符串存入指针s所指的内存
C:从文件中读取几个字符存入指针s所指的内在
D:从文件中读取长度为n-1的字符串存入指针s所指的内存
A:fread(&n,4,1,fp)和fread(&n,1,4,fp)两种用法的返回值相同
B:使用fread(&n,4,1,fp)读一个整数或使用fread(&n,1,4,fp)读一个整数,读取后n中的值相同
C:其他三种说法都不对
D:fread(&n,4,1,fp)和fread(&n,1,4,fp)完全等价
A:C语言中的文件是流式文件,因此只能顺序存取数据,不能随意读取任意位置上的数据
B:当对文件的写操作完成之后,程序结束前必须将它关闭,否则可能导致数据丢失
C:在一个程序中对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第一个数据
D:打开一个已存在的文件进行了写操作后,原有文件中的全部数据必定被覆盖
A:00110001 00110000 00001101 00001010
B:00001101 00001010 00000000 00001101 00001010
C:00001010 00000000 00001101 00001010
D:00000000 00001010 00001101 00001010
A:‘\r’和10
B:‘ \r’和2
C:‘\n’和50
D:‘ \n’和2
A:必须用文本方式打开
B:必须用二进制方式打开
C:用文本方式或二进制方式均可
D:不知道当初写数据时是用什么方式打开的文件,所以不能确定
A:必须用文本方式打开并用fread读取
B:必须用文本方式打开并用fgetc读取
C:可以用二进制方式打开然后用fread读取
D:必须用二进制方式打开并用fread读取
A:1 8241
B:10 12576
C:1 12576
D:10 8241
温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!