fork download
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. typedef struct {
  5. int id;
  6. int math;
  7. int english;
  8. int physics;
  9. double ave;
  10. double std;
  11. } Grades;
  12.  
  13. int main() {
  14. Grades data[5] = {
  15. {1, 65, 80, 95, 0.0, 0.0},
  16. {2, 70, 68, 75, 0.0, 0.0},
  17. {3, 60, 100, 83, 0.0, 0.0},
  18. {4, 100, 55, 74, 0.0, 0.0},
  19. {5, 90, 85, 100, 0.0, 0.0}
  20. };
  21.  
  22.  
  23.  
  24. for (int i = 0; i < 5; i++) {
  25.  
  26. data[i].ave = (data[i].math + data[i].english + data[i].physics) / 3.0;
  27.  
  28.  
  29. double var = (pow(data[i].math - data[i].ave, 2) +
  30. pow(data[i].english - data[i].ave, 2) +
  31. pow(data[i].physics - data[i].ave, 2)) / 3.0;
  32. data[i].std = sqrt(var);
  33.  
  34.  
  35. printf("%d %3d %3d %3d %.1f %.1f\n",
  36. data[i].id, data[i].math, data[i].english, data[i].physics,
  37. data[i].ave, data[i].std);
  38. }
  39.  
  40. return 0;
  41. }
Success #stdin #stdout 0.01s 5324KB
stdin
Standard input is empty
stdout
1     65      80       95    80.0    12.2
2     70      68       75    71.0    2.9
3     60     100       83    81.0    16.4
4    100      55       74    76.3    18.4
5     90      85      100    91.7    6.2