fork download
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. typedef struct{
  5. int id;
  6. double height;
  7. double weight;
  8. }Body;
  9.  
  10. int main(void){
  11. int i=0;
  12. double ave=0, std=0,a,b,c;
  13.  
  14. Body data[]={
  15. {1,165,60},
  16. {2,170,68},
  17. {3,160,50},
  18. {4,180,75},
  19. {5,175,80},
  20. };
  21. Body temp;
  22. do{
  23. if(data[i+1].height-data[i].height>0){
  24. i=i+1;
  25. }
  26. else{
  27. temp=data[i];
  28. data[i]=data[i+1];
  29. data[i+1]=temp;
  30. i=0;
  31. }
  32. }while(i!=4);
  33.  
  34. for(i=0;i<5;i++){
  35. printf("id %d,height %.0f,weight %.0f \n", data[i].id, data[i].height, data[i].weight);
  36. }
  37.  
  38. ave=(data[4].height+data[3].height+data[2].height)/3;
  39. a=data[4].height-ave;
  40. b=data[3].height-ave;
  41. c=data[2].height-ave;
  42. std=(a*a+b*b+c*c)/3;
  43. std=sqrt(std);
  44.  
  45. printf("ave=%.1f\n", ave);
  46. printf("std=%.1f\n", std);
  47.  
  48. return 0;
  49. }
Success #stdin #stdout 0s 5316KB
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 
ave=175.0
std=4.1