单选题
5.C语言中的文件的存储方式有()。
A
只能顺序存取
B
只能随机存取(或直接存取)
C
可以顺序存取,也可随机存取
D
只能从文件的开头进行存取
答案解析
正确答案:C
解析:
在 C 语言中,文件被视为一个字节流,其存取方式非常灵活,主要支持以下两种模式:
1. **顺序存取(Sequential Access)**:
这是最基本的文件操作方式。数据按照它们在文件中出现的先后顺序依次读取或写入。例如,使用 `fgetc()`、`fgets()`、`fprintf()` 等函数时,文件指针会自动向后移动,用户只能按顺序访问数据。
2. **随机存取(Random Access / Direct Access)**:
C 语言标准库提供了 `fseek()`、`ftell()` 和 `rewind()` 等函数,允许程序直接移动文件指针到文件中的任意位置。这意味着用户可以跳过中间的数据,直接读取或写入文件的特定部分,而不必从头开始遍历。这种能力使得 C 语言文件既可以进行顺序操作,也可以进行随机定位操作。
**选项分析:**
* **A 错误**:C 语言不仅支持顺序存取,还支持通过 `fseek` 实现随机存取。
* **B 错误**:虽然支持随机存取,但并不意味着“只能”随机存取,顺序存取也是常用且默认的方式。
* **C 正确**:C 语言的文件系统既允许按顺序读写,也允许通过移动文件指针实现随机读写。
* **D 错误**:通过 `fseek` 可以将文件指针移动到任意位置,并非只能从开头存取。
因此,正确答案是 **C**。
题目纠错
c语言选择判断题库
相关题目
单选题
1、执行下列语句后,a和b的值分别为()。 int a,b; a=1+'a'; b=2+7%-4-'A';
单选题
1、以下数据中,不正确的数值或字符常量是()。
单选题
1、以下能对二维数组a进行正确初始化的语句是()。
单选题
1、下列程序的输出为()。 main() 
单选题
1、假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};, 则数组x在内存中所占字节数是()。
单选题
1、下列字符序列中,不可用作C语言标识符的是()。
单选题
1、若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是()。
单选题
1、已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为()。char a='a'; a--; printf(”%d,%c\n”,a+'2'-'0',a+'3'-'0');
单选题
1、对以下说明语句 int a[10]={6,7,8,9,10}; 的正确理解是()。
单选题
1、若有说明:int a[10];则对a数组元素的正确引用是()。
