前提・実現したいこと
配列の学習をしていたのですが、演習問題で最高、最低、平均点を求め、画面に表示するというプログラムを作ったのですが、平均点を表示させるとこのプログラムが平均点ではなく、22.0点が表示されてしまいます。
なぜ、そのような結果になるのかが理解できないので、その解説をお願いします。
発生している問題
最高得点は93点です 最低得点は61点です 平均点は22.0点です
該当のソースコード
lang
1#include <stdio.h> 2 3 4int main(void) 5{ 6 int result[] = {88, 61, 90, 75, 93}; 7 8 9 int max = 0; 10 int min = 100; 11 double avg = 0; 12 13 for (int i = 0; i < 5; i++) 14 { 15 if (max < result[i]) 16 { 17 max = result[i]; 18 } 19 } 20 21 printf("最高得点は%d点です\n", max); 22 23 for (int i = 0; i < 5; i++) 24 { 25 if (min > result[i]) 26 { 27 min = result[i]; 28 } 29 } 30 31 printf("最低得点は%d点です\n", min); 32 33 for (int i = 0; i < 5; i++) 34 { 35 avg += result[i]; 36 37 if(i = 4) 38 39 { 40 avg / i; 41 } 42 } 43 44 printf("平均点は%.1f点です\n", avg); 45 46}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/04 07:32