#include <stdio.h>
#include <math.h>
typedef struct {
int id;
double height;
double weight;
} Body;
int main( ) {
Body data[ 5 ] = {
{ 1 , 165 , 60 } ,
{ 2 , 170 , 68 } ,
{ 3 , 160 , 50 } ,
{ 4 , 180 , 75 } ,
{ 5 , 175 , 80 }
} ;
for ( int i = 0 ; i < 4 ; i++ ) {
for ( int j = 0 ; j < 4 - i; 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 < 5 ; i++ ) {
printf ( "ID: %d, Height: %.1f cm, Weight: %.1f kg\n " , data
[ i
] .
id , data
[ i
] .
height , data
[ i
] .
weight ) ; }
double sum = 0.0 ;
for ( int i = 2 ; i < 5 ; i++ ) {
sum += data[ i] .height ;
}
double ave = sum / 3 ;
double variance = 0.0 ;
for ( int i = 2 ; i < 5 ; i++ ) {
variance
+= pow ( data
[ i
] .
height - ave
, 2 ) ; }
double std
= sqrt ( variance
/ 3 ) ;
printf ( "\n 上位3名の身長平均: %.1f cm\n " , ave
) ; printf ( "標準偏差: %.1f cm\n " , std
) ;
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+Cgp0eXBlZGVmIHN0cnVjdCB7CiAgICBpbnQgaWQ7CiAgICBkb3VibGUgaGVpZ2h0OwogICAgZG91YmxlIHdlaWdodDsKfSBCb2R5OwoKaW50IG1haW4oKSB7CiAgICBCb2R5IGRhdGFbNV0gPSB7CiAgICAgICAgezEsIDE2NSwgNjB9LAogICAgICAgIHsyLCAxNzAsIDY4fSwKICAgICAgICB7MywgMTYwLCA1MH0sCiAgICAgICAgezQsIDE4MCwgNzV9LAogICAgICAgIHs1LCAxNzUsIDgwfQogICAgfTsKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IDQ7IGkrKykgewogICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgNCAtIGk7IGorKykgewogICAgICAgICAgICBpZiAoZGF0YVtqXS5oZWlnaHQgPiBkYXRhW2ogKyAxXS5oZWlnaHQpIHsKICAgICAgICAgICAgICAgIEJvZHkgdGVtcCA9IGRhdGFbal07CiAgICAgICAgICAgICAgICBkYXRhW2pdID0gZGF0YVtqICsgMV07CiAgICAgICAgICAgICAgICBkYXRhW2ogKyAxXSA9IHRlbXA7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgcHJpbnRmKCLouqvplbfmmIfpoIY6XG4iKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgNTsgaSsrKSB7CiAgICAgICAgcHJpbnRmKCJJRDogJWQsIEhlaWdodDogJS4xZiBjbSwgV2VpZ2h0OiAlLjFmIGtnXG4iLCBkYXRhW2ldLmlkLCBkYXRhW2ldLmhlaWdodCwgZGF0YVtpXS53ZWlnaHQpOwogICAgfQoKICAgIGRvdWJsZSBzdW0gPSAwLjA7CiAgICBmb3IgKGludCBpID0gMjsgaSA8IDU7IGkrKykgewogICAgICAgIHN1bSArPSBkYXRhW2ldLmhlaWdodDsKICAgIH0KICAgIGRvdWJsZSBhdmUgPSBzdW0gLyAzOwoKICAgIGRvdWJsZSB2YXJpYW5jZSA9IDAuMDsKICAgIGZvciAoaW50IGkgPSAyOyBpIDwgNTsgaSsrKSB7CiAgICAgICAgdmFyaWFuY2UgKz0gcG93KGRhdGFbaV0uaGVpZ2h0IC0gYXZlLCAyKTsKICAgIH0KICAgIGRvdWJsZSBzdGQgPSBzcXJ0KHZhcmlhbmNlIC8gMyk7CgogICAgcHJpbnRmKCJcbuS4iuS9jTPlkI3jga7ouqvplbflubPlnYc6ICUuMWYgY21cbiIsIGF2ZSk7CiAgICBwcmludGYoIuaomea6luWBj+W3rjogJS4xZiBjbVxuIiwgc3RkKTsKCiAgICByZXR1cm4gMDsKfQ==
stdout
身長昇順:
ID: 3, Height: 160.0 cm, Weight: 50.0 kg
ID: 1, Height: 165.0 cm, Weight: 60.0 kg
ID: 2, Height: 170.0 cm, Weight: 68.0 kg
ID: 5, Height: 175.0 cm, Weight: 80.0 kg
ID: 4, Height: 180.0 cm, Weight: 75.0 kg
上位3名の身長平均: 175.0 cm
標準偏差: 4.1 cm