首页
/
每日頭條
/
健康
/
c語言計算一個人的身高體重
c語言計算一個人的身高體重
更新时间:2025-02-20 22:16:23

BMI指數(英文為Body Mass Index,簡稱BMI),是用體重千克數除以身高米數的平方得出的數字,是國際上常用的衡量人體胖瘦程度以及是否健康的一個标準。當我們需要比較及分析一個人的體重對于不同高度的人所帶來的健康影響時,BMI值是一個中立而可靠的指标。---選自《快懂百科》

中國參考标準BMI的數值一共分為6個級别,在代碼中我們使用以下6個宏定義常量來表示,數值範圍從-1至4,0表示正常範圍。

c語言計算一個人的身高體重(.說出你的身高和體重)1

圖1

主函數main使用一個while循環支持用戶連續輸入身高和體重值進行多次計算,身高值采用米為單位,體重值采用千克為單位。用戶按照提示輸入身高和體重之後,使用下面的公式進行BMI的值。

BMI = 身高 / (體重的平方值)

c語言計算一個人的身高體重(.說出你的身高和體重)2

圖2

圖2代碼第24行和第28行分别定義了表示身高和體重的浮點型變量,代碼使用scanf依次讀取用戶輸入的數值,并将對應的值賦給height和weight變量。代碼第32行計算得到bmi的數值。第32行代碼調用getWeightGroup函數獲取BMI分類常量值,第35行代碼則使用這個BMI分類常量顯示BMI對應的分類名稱。

函數getWeithGroup根據BMI中國參考标準對傳入的參數bmi值進行分類,從而轉換為圖1代碼中對應的常量數值。顯示健康信息函數displayHealthInfo根據對應的BMI分類打印對應的描述信息。

c語言計算一個人的身高體重(.說出你的身高和體重)3

圖3

圖3代碼使用了一個if…else…語句,一共含有6個分支語句分别判斷bmi的數值是否位于對應的BMI分類的數值區間中,所有的數值通過6個分支完成向圖1中BMI分類數值的轉換。

c語言計算一個人的身高體重(.說出你的身高和體重)4

圖4

圖4代碼使用了另一個分支語句switch語句,這個分支語句同樣是判斷6種不同的BMI分類值,這些數值都是整型常量,可以作為case的判定表達式(代碼第65、68、71、74、77、80行),如果所傳入的參數值weightGroup變量與case分支中的某一項匹配,則執行case分支語句,将info變量進行賦值相應的字符串,第87行代碼執行輸出info變量,完成健康信息的顯示功能。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
乳腺癌預後看分期還是分型
乳腺癌預後看分期還是分型
各位粉絲大家好,很久沒有更新文章了,感謝大家沒有取關我,留我繼續在關注欄。這段時間比較忙,本周收了很多初診病人其中有5位阿姨不幸确診乳腺癌(3人罹患浸潤性導管癌、2位阿姨罹患導管原位癌)。阿姨們十分焦慮,她們咨詢我的問題主要是治療費用、乳腺...
2025-02-20
減肥期間如何吃才能瘦下來
減肥期間如何吃才能瘦下來
原創内容,擅自搬運者必究!減肥這件事有多難?對于很多胖子來說,發胖是很容易的,想要瘦下來卻很難。因為減肥需要控制食欲,遠離美食,還需要邁開腿動起來,提升身體的熱量輸出,這樣才能促進體脂率的下降。而在這個過程中,很多人會中途放棄,無法堅持下來...
2025-02-20
得了灰指甲怎麼自己處理
得了灰指甲怎麼自己處理
灰指甲是甲癬的俗稱,是由皮癬菌、酵母菌及非皮癬菌等真菌引起的甲感染。甲真菌病是皮膚科的常見病、多發病,也是一種治療相對麻煩的的疾病。中老年人、糖尿病患者、免疫功能比較低,或指甲有外傷、容易出汗、長時間穿着緊密鞋襪的人,都是甲真菌病的潛在易發...
2025-02-20
洗牙需要注意哪些事項
洗牙需要注意哪些事項
洗牙需要注意哪些事項?現在很多地方都在提倡人們每年至少1-2次洗牙,認為洗牙可以預防和治療多種口腔疾病和問題但是有一部分人由于對洗牙不甚了解,産生了諸多誤會,覺得洗牙沒有必要那麼洗牙究竟有沒有必要?洗牙可以解決哪些問題呢?,我來為大家講解一...
2025-02-20
b型血和什麼血型能生出a型和o型血
b型血和什麼血型能生出a型和o型血
你屬于A型、B型、O型裡的哪種血型?我們都知道若輸入與自身不匹配的血型,身體會出現排異反應,但是多數人不知道不同的血型,患上的疾病也會不同。A型血易患疾病如下腦梗死:A型血的人擁有較強的忍耐力,因此從側面可以反映出在面對困難時的抗壓能力更高...
2025-02-20
Copyright 2023-2025 - www.tftnews.com All Rights Reserved