復習チャレンジ #2
CoddyのCジャーニー「基礎」セクションの一部。レッスン 36/63。
チャレンジ
簡単人の体重(kg)と身長(メートル)を読み取るプログラムを作成し、次の処理を行います。
- 各入力が数値であることを確認する(
scanfが1を返す)
体重または身長が数値でない場合は、次を出力します:Invalid input type! - 体重が30〜300 kgの範囲内であることを検証する
体重が範囲外の場合は、次を出力します:Weight out of range! - 身長が1.0〜2.5メートルの範囲内であることを検証する
身長が範囲外の場合は、次を出力します:Height out of range! - すべての検証に合格した場合、BMI(ボディマス指数)を計算し、小数第1位まで出力する
- BMIの計算式:weight / (height * height)
- BMIに基づいて、その人の体重カテゴリを出力する
- 18.5未満:
Underweight - 18.5〜24.9:
Normal weight - 25.0〜29.9:
Overweight - 30.0以上:
Obese
- 18.5未満:
有効な入力の場合の出力例:
BMI: 24.8
Category: Normal weight自分で試してみよう
#include <stdio.h>
int main() {
float weight, height, bmi;
int weight_result, height_result;
weight_result = scanf("%f", &weight);
height_result = scanf("%f", &height);
// 入力を検証する
// BMIを計算する
// 体重の区分を判定する
// 結果を表示する
return 0;
}基礎のすべてのレッスン
自分で練習してみよう: Cオンラインコンパイラ