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