![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
名前(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
解答お願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
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が見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語初心者 構造体 課題について 1 2023/03/10 19:30
- C言語・C++・C# C言語(構造体) 3 2022/07/05 20:08
- Visual Basic(VBA) vbaの計算 if elseと範囲について 6 2022/11/26 01:49
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- ダイエット・食事制限 BMIだけじゃないのかもしれません 3 2023/05/29 05:42
- Excel(エクセル) Excelのテーブルについて 6 2023/07/07 08:37
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c言語でAからZまでを表示する...
-
hit&bolwのプログラミングがで...
-
【C言語教えてください】sin波...
-
10個出力で改行したいのですが...
-
printf で二進表示を行いたい。
-
コンパイルエラーについて
-
error C2143: 構文エラー : ';'...
-
C言語に関する質問です
-
C言語 プログラミング
-
if文がコンパイルエラーを起こ...
-
C言語で入力した変数の値から三...
-
wsprintfの書式制御文字列につ...
-
ホームページをC言語で作りたい...
-
strcmp
-
分数を表示するプログラム(長...
-
4の倍数を論理演算で表す。。
-
英語小文字または大文字を入力...
-
unsigned int型について
-
コマンドラインに出力した文字...
-
C言語のヘッダーファイルの作成...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
【C言語教えてください】sin波...
-
printf で二進表示を行いたい。
-
c言語でAからZまでを表示する...
-
コマンドラインに出力した文字...
-
strcmp
-
4の倍数を論理演算で表す。。
-
C言語での、年複利の計算方法...
-
C言語 プログラミング
-
scanfに文字が入力されたときに...
-
hit&bolwのプログラミングがで...
-
%P と %X の違い
-
unsigned int型について
-
printf( " %2d", p * q );
-
cshの文字列操作(0埋め)
-
改行について 1行に何個かづ...
-
8人分のテストの点数を入力し、...
-
入力したお金の金額からお札の...
-
三角形の判別
-
テキストカーソル位置の取得
おすすめ情報