質問: sum + omosa; } printf("%d人の平均体重は%.1fkgです.\n",n ,sum/n); return 0; } ``` 【結果】 数字を入力して下さい(0で終了): 50.2 数字を入力して下さい(0で終了): 数字を入力して下さい(0で終了): 数字を入力して下さい(0で終了): 数字を入力して下さい(0で終 了): 5人の平均体重は0.0kgです. のようになってしまいます。しかし %d だとうまくいきます。 なぜですか? ちなみに %d をつかった場合のコードと結果はこちらです。 ``` コード ``` 【結果】 数字を入力して下さい(0で終了): 54 数字を入力して下さい(0で終了): 46 数字を入力して下さい(0で終了): 0 2人の平均体重は50kgです. よろしくお願いします。
回答: 問題は、 > > scanf("%.1f", &omosa); > > > ここにあります scanf("%f", &omosa); としてみよう