[1] 授業単元:C言語

[2] 問題文(含コード&リンク):
 1円硬貨, 5円硬貨, 10円硬貨, 50円硬貨, 100円硬貨, 500円硬貨の内から種類不問で何枚か取り出し、
 その重さの合計を小数点以下1桁まで入力させる。
 その値から、取り出した硬貨の合計金額を推定し表示するプログラムを作れ。
 ただし、推定される金額が複数存在する場合はその全てを表示する。
 また、1円硬貨, 5円硬貨, 10円硬貨, 50円硬貨, 100円硬貨, 500円硬貨の1枚あたりの重さは
 それぞれ1g, 3.7g, 4.5g, 4g, 4.8g, 7gであるとする。
 (入力例)
 8.0
 (出力例)
 8円
 54円
 100円
 501円

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 無期限
[5] その他の制限: 考えうる限り効率的なプログラムをお願いいたします