fork download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. typedef struct Grades {
  5. int English; //英語
  6. int Japanese;//国語
  7. int Math;//数学
  8. float human_average;//各人の平均
  9. } Grades;
  10. Grades score[5];
  11. int i;
  12. int English_sum = 0, Japanese_sum = 0, Math_sum = 0;//科目ごとの合計
  13. float English_average, Japanese_average, Math_average;//科目ごとの平均
  14.  
  15. // 英語と国語と数学の点数を5人読み込み、各人の平均を計算する-------------------
  16. for (i = 0; i < 5; i++) {
  17. scanf("%d", &(score[i].English));
  18. scanf("%d", &(score[i].Japanese));
  19. scanf("%d", &(score[i].Math));
  20. score[i].human_average = (score[i].English + score[i].Japanese + score[i].Math)/3;
  21. }
  22.  
  23. // 科目ごとの合計を計算し、平均を計算する------------------------------------------
  24. for (i = 0; i < 5; i++) {
  25. English_sum += score[i].English;
  26. Japanese_sum += score[i].Japanese;
  27. Math_sum += score[i].Math;
  28. }
  29.  
  30. English_average = English_sum / 5.0;
  31. Japanese_average = Japanese_sum / 5.0;
  32. Math_average = Math_sum / 5.0;
  33.  
  34. //各人の平均と、科目毎の平均を表示させる-----------------------------------------
  35. for (i = 0; i < 5; i++) {
  36. printf("%d 人目の3科目平均は %3.1f です。\n", i + 1, score[i].human_average);
  37. }
  38. printf("英語の平均点は %3.1f です。\n", English_average);
  39. printf("国語の平均点は %3.1f です。\n", Japanese_average);
  40. printf("数学の平均点は %3.1f です。\n", Math_average);
  41.  
  42. return 0;
  43. }
Success #stdin #stdout 0s 5320KB
stdin
80
70
60
90
90
90
70
50
60
40
50
30
20
50
90
stdout
1 人目の3科目平均は 70.0 です。
2 人目の3科目平均は 90.0 です。
3 人目の3科目平均は 60.0 です。
4 人目の3科目平均は 40.0 です。
5 人目の3科目平均は 53.0 です。
英語の平均点は 60.0 です。
国語の平均点は 62.0 です。
数学の平均点は 66.0 です。