
名前(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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
(C言語)西暦年月日を入力して...
-
ブラックジャック
-
サイコロをふって、出た目のパ...
-
ホームページをC言語で作りたい...
-
なぜgccはstdio.hをインクルー...
-
error C2143: 構文エラー : ';'...
-
printfのコードは?
-
「Aに対するBの割合」と「Aに対...
-
Enterキーを押されたら次の処理...
-
Aの値からBの値を除するとは??
-
有効数字について 以前質問をし...
-
信頼区間の1.96や1.65ってどこ...
-
std::set<int> で、ある値が何...
-
20'(角度)の計算がわかりま...
-
数学で、定数aの値を求めよって...
-
do-while文が禁止される理由
-
正の数aは4の倍数で、7でわると...
-
3桁区切(コンマ)記号をつけ...
-
プログラムでの数字につく”f”の...
-
未解決の外部シンボル _printf...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
c言語でAからZまでを表示する...
-
(C言語)めちゃくちゃな値にな...
-
コマンドラインに出力した文字...
-
コンパイルエラーについて
-
コマンドプロンプトがすぐ消える
-
勝率をプログラムに
-
テキストカーソル位置の取得
-
三角形の判別
-
【C言語教えてください】sin波...
-
4の倍数を論理演算で表す。。
-
C言語で、「自然数nを入力し、n...
-
入力したお金の金額からお札の...
-
cshの文字列操作(0埋め)
-
switch分のケースを範囲数?に...
-
scanfに文字が入力されたときに...
-
プログラミングについての質問です
-
unsigned int型について
-
ダブルポインタで2次元配列を作成
-
円の面積を求めるプログラミン...
おすすめ情報