fork download
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. typedef struct{
  5. int id;
  6. int height;
  7. int weight;
  8. }Body;
  9.  
  10. int main()
  11. {
  12. int i, j;
  13. float ave, std;
  14.  
  15. int temp[1][3] = {0,0,0};
  16.  
  17. Body data[] = {
  18. {1,165,60},
  19. {2,170,68},
  20. {3,160,50},
  21. {4,180,75},
  22. {5,175,80},
  23. };
  24.  
  25. for(i=0;i<5;i++){
  26. for(j=i+1;j<5;j++){
  27. if(data[i].height > data[j].height){
  28. temp[0][0] = data[i].id;
  29. data[i].id = data[j].id;
  30. data[j].id = temp[0][0];
  31. temp[0][1] = data[i].height;
  32. data[i].height = data[j].height;
  33. data[j].height = temp[0][1];
  34. temp[0][2] = data[i].weight;
  35. data[i].weight = data[j].weight;
  36. data[j].weight = temp[0][2];
  37. }
  38. }
  39. }
  40.  
  41. for(i=0;i<5;i++){
  42. printf("id=%d,",data[i].id);
  43. printf("height=%d,",data[i].height);
  44. printf("weight=%d\n",data[i].weight);
  45. }
  46.  
  47. ave = (data[2].height + data[3].height + data[4].height) / 3;
  48. std = sqrt(((ave - data[2].height)*(ave - data[2].height)+(ave - data[3].height)*(ave - data[3].height)+(ave - data[4].height)*(ave - data[4].height))/3);
  49.  
  50. printf("上位三人の平均=%.1lf,標準偏差=%.1lf",ave,std);
  51. return 0;
  52. }
Success #stdin #stdout 0.01s 5288KB
stdin
Standard input is empty
stdout
id=3,height=160,weight=50
id=1,height=165,weight=60
id=2,height=170,weight=68
id=5,height=175,weight=80
id=4,height=180,weight=75
上位三人の平均=175.0,標準偏差=4.1