【C言語】ファイルの数値を読み込んで合計する

この記事では、C言語を使用してファイルから数値を読み込み、その数値の合計を計算する方法について解説します。

ファイルの読み込み方法や数値の合計計算の手順を具体的に説明するので、プログラミング初心者の方でも簡単に理解することができます。

目次から探す

ファイルから数値を読み込んで合計する

プログラミングにおいて、ファイルから数値を読み込んで合計することはよく行われる処理です。

この記事では、C言語を使用してファイルから数値を読み込み、その数値の合計を計算する方法について解説します。

ファイルの読み込み方法

まず、ファイルから数値を読み込むためには、ファイルを開いてその内容を読み込む必要があります。

C言語では、ファイルを操作するためにfopen関数を使用します。

#include <stdio.h>
int main() {
    FILE *file;
    file = fopen("data.txt", "r");
    if (file == NULL) {
        printf("ファイルを開けませんでした。\n");
        return 1;
    }
    // ファイルの読み込み処理
    fclose(file);
    return 0;
}

上記のコードでは、fopen関数を使用してdata.txtというファイルを読み込みモード(r)で開いています。

ファイルが正しく開けなかった場合は、fopen関数NULLを返します。

そのため、fileNULLであるかどうかをチェックし、ファイルが開けなかった場合にはエラーメッセージを表示してプログラムを終了します。

ファイルを正しく開けた場合は、その後にファイルの内容を読み込む処理を記述します。

具体的な読み込み処理については次のセクションで解説します。

ファイルの読み込みが終わったら、fclose関数を使用してファイルを閉じます。

ファイルを閉じることは、メモリの解放や他のプログラムがファイルにアクセスできるようにするために重要です。

数値の合計を計算する

ファイルから数値を読み込んだら、それらの数値の合計を計算することができます。

以下のコードは、ファイルから数値を読み込んで合計を計算する例です。

#include <stdio.h>
int main() {
    FILE *file;
    file = fopen("data.txt", "r");
    if (file == NULL) {
        printf("ファイルを開けませんでした。\n");
        return 1;
    }
    int sum = 0;
    int num;
    while (fscanf(file, "%d", &num) != EOF) {
        sum += num;
    }
    printf("合計: %d\n", sum);
    fclose(file);
    return 0;
}

上記のコードでは、fscanf関数を使用してファイルから数値を読み込んでいます。

fscanf関数は、指定したフォーマットに従ってファイルからデータを読み込みます。

この例では、%dというフォーマットを使用して整数を読み込んでいます。

fscanf関数は成功した場合には読み込んだデータの数を返し、ファイルの終端に達した場合にはEOFを返します。

そのため、fscanf関数の戻り値がEOFでない限り、数値を読み込んで合計を計算します。

最後に、計算した合計を表示してからファイルを閉じます。

以上で、ファイルから数値を読み込んで合計を計算する方法についての解説を終わります。

ファイルの読み込みや数値の合計計算は、プログラミングの基礎的な処理ですので、ぜひ理解しておきましょう。

目次から探す