auの日記

プログラミング初心者の日記。(auはハンドルネームです)

C言語で999を超えると合計、平均、最大、最小を出すプログラム

auです。
今回は任意の数を入力して、999を超えるとそれぞれの「」を出すプログラムを組みました。

#include <stdio.h>

int main(void) {
    int number, total, max, min, count, ave;
    number = 0;
    total = 0;
    count = 1;
    // 1回目を基準にするためループの外で入力
    printf("%d回目の点数: ", count);
    scanf("%d", &number);
    max = number;
    min = number;
    total = number;
    printf("現在の合計: %d\n", total);
   
    // 合計点数が999以上になるまで繰り返す
    while (total <= 999) {
        count++; // 何回目の入力か
        printf("%d回目数を入力してください: ", count);
        scanf("%d", &number);
        total += number;
        // n回目より大きい場合
        if (number > max) {
            max = number;
        // n回目より小さい場合    
        }
        if (number < min) {
            min = number;
        }
        printf("現在の合計: %d\n", total);
    }
    // 平均
    ave = total / count;
    printf("合計: %d\n平均: %d\n最大: %d\n最小: %d\n", total, ave, max, min);
    return 0;
}

// 実行結果
1回目の点数: 100
現在の合計: 100
2回目数を入力してください: 200
現在の合計: 300
3回目数を入力してください: 300
現在の合計: 600
4回目数を入力してください: 500
現在の合計: 1100
合計: 1100
平均: 275
最大: 500
最小: 100

最初に基準を作ることで、2回目にどの数字をいれても、最大最小が更新されるようにしました。
ifと違ってwhileの場合、平均を出す際に-1しなくても大丈夫でした。