#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,68},
{3,160,50},
{4,180,75},
{5,175,80},
};
int n=5;
for(int i=0;i<n-1;i++){
for(int j=0;j<n-i-1;j++){
if(data[j].height > data[j+1].height){
Body temp=data[j];
data[j]=data[j+1];
data[j+1]=temp;
}
}
}
for(int i=0;i<n;i++){
printf(" %d \ %d \ %d\n",data
[i
].
id,data
[i
].
height,data
[i
].
weight); }
double sum=0;
int count=3;
int start=n-count;
for(int i=start;i<n;i++){
sum += data[i].height;
}
double ave = sum/count;
double sumh=0;
for(int i=start;i<n;i++){
sumh += (data[i].height-ave)*(data[i].height-ave);
}
double std
= sqrt(sumh
/count
);
printf("上位3名の平均:%.1f cm\n",ave
); printf("上位3名の標準偏差:%.1f\n",std
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+Cgp0eXBlZGVmIHN0cnVjdHsKCWludCBpZDsKCWludCBoZWlnaHQ7CglpbnQgd2VpZ2h0Owp9Qm9keTsKCmludCBtYWluKHZvaWQpIHsKCQoJQm9keSBkYXRhWzVdPXsKCQl7MSwxNjUsNjB9LAoJCXsyLDE3MCw2OH0sCgkJezMsMTYwLDUwfSwKCQl7NCwxODAsNzV9LAoJCXs1LDE3NSw4MH0sCgl9OwoJCglpbnQgbj01OwoJCglmb3IoaW50IGk9MDtpPG4tMTtpKyspewoJCWZvcihpbnQgaj0wO2o8bi1pLTE7aisrKXsKCQkJaWYoZGF0YVtqXS5oZWlnaHQgPiBkYXRhW2orMV0uaGVpZ2h0KXsKCQkJCUJvZHkgdGVtcD1kYXRhW2pdOwoJCQkJZGF0YVtqXT1kYXRhW2orMV07CgkJCQlkYXRhW2orMV09dGVtcDsKCQkJfQoJCX0KCX0KCXByaW50Zigi6Lqr6ZW344Gu5L2O44GE6aCGXG4iKTsKCQoJZm9yKGludCBpPTA7aTxuO2krKyl7CgkJcHJpbnRmKCIgJWQgXCAlZCBcICVkXG4iLGRhdGFbaV0uaWQsZGF0YVtpXS5oZWlnaHQsZGF0YVtpXS53ZWlnaHQpOwoJfQoJcHJpbnRmKCJcbiIpOwoJCglkb3VibGUgc3VtPTA7CglpbnQgY291bnQ9MzsKCWludCBzdGFydD1uLWNvdW50OwoJCglmb3IoaW50IGk9c3RhcnQ7aTxuO2krKyl7CgkJc3VtICs9IGRhdGFbaV0uaGVpZ2h0OwoJfQoJZG91YmxlIGF2ZSA9IHN1bS9jb3VudDsKCQoJZG91YmxlIHN1bWg9MDsKCWZvcihpbnQgaT1zdGFydDtpPG47aSsrKXsKCQlzdW1oICs9IChkYXRhW2ldLmhlaWdodC1hdmUpKihkYXRhW2ldLmhlaWdodC1hdmUpOwoJfQoJZG91YmxlIHN0ZCA9IHNxcnQoc3VtaC9jb3VudCk7CgkKCXByaW50Zigi5LiK5L2NM+WQjeOBruW5s+Wdh++8miUuMWYgY21cbiIsYXZlKTsKCXByaW50Zigi5LiK5L2N77yT5ZCN44Gu5qiZ5rqW5YGP5beu77yaJS4xZlxuIixzdGQpOwoJcmV0dXJuIDA7Cn0KCgoKCg==