在C語言中,可以使用文件操作函數(shù)來從文件中讀取數(shù)據(jù)到數(shù)組中。具體步驟如下:
fopen()
函數(shù)打開文件,并將返回的文件指針保存在一個(gè)變量中。例如,可以使用以下代碼打開一個(gè)名為data.txt
的文本文件:FILE *file = fopen("data.txt", "r");
if (file == NULL) {
printf("File open error\n");
return;
}
for
循環(huán)或while
循環(huán),以及fscanf()
函數(shù)逐行讀取文件中的數(shù)據(jù),并將數(shù)據(jù)存儲(chǔ)到數(shù)組中。例如,以下代碼將文件中的每一行數(shù)據(jù)讀取到一個(gè)大小為n
的整型數(shù)組中:int n = 10; // 數(shù)組大小
int arr[n]; // 聲明數(shù)組
int i;
for (i = 0; i < n; i++) {
fscanf(file, "%d", &arr[i]); // 讀取文件中的整數(shù),并存儲(chǔ)到數(shù)組中
}
fclose()
函數(shù)關(guān)閉文件,以釋放文件資源。例如,以下代碼關(guān)閉文件:fclose(file);
完整示例代碼如下所示:
#include <stdio.h>
int main() {
FILE *file = fopen("data.txt", "r");
if (file == NULL) {
printf("File open error\n");
return 1;
}
int n = 10; // 數(shù)組大小
int arr[n]; // 聲明數(shù)組
int i;
for (i = 0; i < n; i++) {
fscanf(file, "%d", &arr[i]); // 讀取文件中的整數(shù),并存儲(chǔ)到數(shù)組中
}
fclose(file);
for (i = 0; i < n; i++) {
printf("%d ", arr[i]); // 打印數(shù)組中的數(shù)據(jù)
}
return 0;
}
上述代碼將從名為data.txt
的文件中讀取10個(gè)整數(shù),并將它們存儲(chǔ)到一個(gè)數(shù)組中,并將數(shù)組中的數(shù)據(jù)打印出來。請(qǐng)確保文件中的數(shù)據(jù)與數(shù)組大小相匹配,否則可能會(huì)導(dǎo)致錯(cuò)誤。