• 締切済み

プログラミング言語C

名前(char name[20]),年齢(intage),身長(double height),体重(double weight)の4つのメンバを持つ構造体であるperson型を宣言し,以下のようなプログラムを作成せよ. 1.1つの構造体変数を宣言し,それぞれのメンバの値を入力させ表示する. 2.構造体person型の配列を作成し,3人分のデータを入力して表示する. 3.BMIを求める関数double bmi(person *p) を作成し,入力した3人分のデータからそれぞれのBMIを求め表示する. BMIとはBody Mass Indexのことで肥満度を表す指数 体重をw(kg),身長をt(m)とすると,BMI = w/t2 解答お願いします。

みんなの回答

回答No.2

宿題の丸投げですかね。 C言語には入出力の概念がありませんから1、2,3ともに作成不能ですね。

回答No.1

#include <stdio.h> struct psrson { char name[10]; int age; double height; double waight; }; struct prson getData() { struct person wk; printf("データを入力してください\n"); printf("名前:"); scanf("%s", wk.name); printf("年齢:"); scanf("%d", &wk.age); printf("身長:"); scanf("%lf", &wk.height); printf("体重:"); scanf("%lf", &wk.waight); return wk; } void print(struct person value) { printf("--------------------------\n"); printf("名前:%s\n", value.name); printf("年齢:%d\n", value.age); printf("身長:%f\n", value.height); printf("体重:%f\n", value.waight); } double bmi(struct person *p) { return (p->waight / p->height / p->height); } /* 問1 */ int main() { struct person aPerson = getData(); print(aPerson); return 0; } /* 問2 */ int main() { struct person three_person[3]; int i; for(i = 0; i < 3; three_person[i++] = getData()); for(i = 0; i < 3; print(three_person[i++])); return 0; } /* 問3 */ int main() { struct person three_person[3]; int i; for(i = 0; i < 3; three_person[i++] = getData()); for(i = 0; i < 3; i++) { printf("------------------------------------\n"); printf("名前: %s\n", three_person[i].name); printf("BMI: %f\n", bmi(&three_person[i]); } return 0; } 何となく書いてみたかったので。 でも、未確認です。

関連するQ&A

専門家に質問してみよう