Menu
CoddyTech

復習チャレンジ #2

CoddyのCジャーニー「基礎」セクションの一部。レッスン 36/63。

challenge icon

チャレンジ

簡単

人の体重(kg)と身長(メートル)を読み取るプログラムを作成し、次の処理を行います。

  1. 各入力が数値であることを確認する(scanf が 1 を返す)
    体重または身長が数値でない場合は、次を出力します:Invalid input type!
  2. 体重が30〜300 kgの範囲内であることを検証する
    体重が範囲外の場合は、次を出力します:Weight out of range!
  3. 身長が1.0〜2.5メートルの範囲内であることを検証する
    身長が範囲外の場合は、次を出力します:Height out of range!
  4. すべての検証に合格した場合、BMI(ボディマス指数)を計算し、小数第1位まで出力する
    • BMIの計算式:weight / (height * height)
  5. BMIに基づいて、その人の体重カテゴリを出力する
    • 18.5未満:Underweight
    • 18.5〜24.9:Normal weight
    • 25.0〜29.9:Overweight
    • 30.0以上:Obese

有効な入力の場合の出力例:

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オンラインコンパイラ