#include <stdio.h>
#include<math.h>
typedef struct {
int id;
int height;
int weight;
}Body;
int main(void) {
Body data[5]={
{1,165,60},
{2,170,60},
{3,160,50},
{4,180,75},
{5,175,80}
};
int n=sizeof(data)/sizeof(data[0]);
for(int i=0;i<n-1;i++){
for(int j=0;j<n-1-i;j++){
if(data[j].height>data[j+1].height){
Body tmp=data[j];
data[j]=data[j+1];
data[j+1]=tmp;
}
}
}
printf("ID height(cm) weight(kg)\n"); for(int i=0; i<n;i++){
printf("%2d %11d %13d\n",data
[i
].
id,data
[i
].
height,data
[i
].
weight); }
double sum=0.0;
for(int i=n-3;i<n;i++){
sum+=data[i].height;
}
double ave=sum/3.0;
double sum_sq=0.0;
for(int i=n-3;i<n;i++){
double diff=data[i].height-ave;
sum_sq+=diff*diff;
}
double std
=sqrt(sum_sq
/3.0);
printf("\n上位3名の身長平均:%.1f cm\n",ave
); printf("上位3名の身長標準偏差:%.1f cm\n",std
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlPG1hdGguaD4KCnR5cGVkZWYgc3RydWN0IHsKCWludCBpZDsKCWludCBoZWlnaHQ7CglpbnQgd2VpZ2h0OwoJCn1Cb2R5OwoKaW50IG1haW4odm9pZCkgewoJCkJvZHkgZGF0YVs1XT17CgkJezEsMTY1LDYwfSwKCQl7MiwxNzAsNjB9LAoJCXszLDE2MCw1MH0sCgkJezQsMTgwLDc1fSwKCQl7NSwxNzUsODB9Cgl9OwppbnQgbj1zaXplb2YoZGF0YSkvc2l6ZW9mKGRhdGFbMF0pOwoKZm9yKGludCBpPTA7aTxuLTE7aSsrKXsKCWZvcihpbnQgaj0wO2o8bi0xLWk7aisrKXsKCQlpZihkYXRhW2pdLmhlaWdodD5kYXRhW2orMV0uaGVpZ2h0KXsKCQkJQm9keSB0bXA9ZGF0YVtqXTsKCQkJZGF0YVtqXT1kYXRhW2orMV07CgkJCWRhdGFbaisxXT10bXA7CgkJfQoJfQp9CnByaW50ZigiSUQgICBoZWlnaHQoY20pICAgd2VpZ2h0KGtnKVxuIik7CmZvcihpbnQgaT0wOyBpPG47aSsrKXsKCXByaW50ZigiJTJkICUxMWQgJTEzZFxuIixkYXRhW2ldLmlkLGRhdGFbaV0uaGVpZ2h0LGRhdGFbaV0ud2VpZ2h0KTsKfQpkb3VibGUgc3VtPTAuMDsKZm9yKGludCBpPW4tMztpPG47aSsrKXsKCXN1bSs9ZGF0YVtpXS5oZWlnaHQ7Cn0KZG91YmxlIGF2ZT1zdW0vMy4wOwoKZG91YmxlIHN1bV9zcT0wLjA7CmZvcihpbnQgaT1uLTM7aTxuO2krKyl7Cglkb3VibGUgZGlmZj1kYXRhW2ldLmhlaWdodC1hdmU7CglzdW1fc3ErPWRpZmYqZGlmZjsKfQpkb3VibGUgc3RkPXNxcnQoc3VtX3NxLzMuMCk7CgpwcmludGYoIlxu5LiK5L2NM+WQjeOBrui6q+mVt+W5s+WdhzolLjFmIGNtXG4iLGF2ZSk7CnByaW50Zigi5LiK5L2NM+WQjeOBrui6q+mVt+aomea6luWBj+W3rjolLjFmIGNtXG4iLHN0ZCk7CgoJcmV0dXJuIDA7Cn0KCg==