構造体の組み合わせについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
大学5年生

構造体の組み合わせについて

#1

投稿記事 by 大学5年生 » 10年前

これは大学の宿題です。明後日が試験なのですがさっぱり理解出来ていません。
この教科が原因で留年しています。今度こそ根本から理解したいので、皆さんのお力をお貸し下さい。
宜しくお願いします。

------------------------------------------------------------------------------

次の処理を行うプログラムを、#####を埋めて完成させなさい。

(1)下記のデータの枠組みBMIを定義する
名前(name)
身長(height)
体重(weight)
BMI値(bmi)
結果(grade)

(2)上記のデータ構造を持つdataに、各学生の名前、身長、体重を代入し初期化する。

(3)関数BMIで、BMI値(体重[kg] /(身長[m] * 身長[m]))を計算しdataの合計点に格納する。
また、BMI値が18.5以上25.0未満の場合は標準、18.5点未満の場合は低体重、それ以外は肥満として、
dataの結果に格納する。

(4)各学生の合否判定結果を出力する。



コード:


#include <stdio.h>
#include <string.h>

#######
#######
#######
#######
#######
#######
#######

struct BMI hantei(#######, int no);

void main(void)
{
	struct BMI data[] = {
		{"吉田", 1.75, 70.6, 0, "未判定"},
		{"山崎", 1.70, 76.9, 0, "未判定"},
		{"上田", 1.83, 79.1, 0, "未判定"},
		{"小田", 1.68, 50.3, 0, "未判定"},
		{"近藤", 1.73, 84.0, 0, "未判定"}
	};

	int i;

	*data = hantei(######,######);

	printf("名前 身長  体重    BMI   結果¥n");
	printf("------------------------------------------------¥n");
	for(i=0; i<5; i++){
		printf("%s  %.2f  %.1f   %.2f   %6s¥n", ################################);
	}
}

struct BMI hantei(########, int no)
{
	int i;
	for(i=0; i<no; i++){
		#############

		if(#############){
			#############
		}else if(#############){
			#############
		}else{
			#############
		}
	}

	return #############;

}

/* 実行結果

名前 身長  体重    BMI   結果
----------------------------------
吉田  1.75  70.6   23.05   標 準
山崎  1.70  76.9   26.61   肥 満
上田  1.83  79.1   23.62   標 準
小田  1.68  50.3   17.82   低体重
近藤  1.73  84.0   28.07   肥 満

*/

アバター
へにっくす
記事: 634
登録日時: 11年前
住所: 東京都

Re: 構造体の組み合わせについて

#2

投稿記事 by へにっくす » 10年前

大学5年生 さんが書きました:これは大学の宿題です。明後日が試験なのですがさっぱり理解出来ていません。
この教科が原因で留年しています。今度こそ根本から理解したいので、皆さんのお力をお貸し下さい。
ここは課題の丸投げは禁止です。
そもそも根本から理解するには時間が必要です。今まで分からないのに数日で分かるわけないでしょ。
ここで聞くより、対面で誰か分かる人に聞く方がよっぽど早いですよ。
written by へにっくす

アバター
usao
記事: 1887
登録日時: 11年前

Re: 構造体の組み合わせについて

#3

投稿記事 by usao » 10年前

うーん,なんかやたらめったら連投されてますが
いずれかの穴埋めの一か所でもわかる箇所はないのでしょうか?

単に 【「これらの問題を解くこと」の助けをこの場で得たい】 ということであれば
フォーラムルールに則った質問をされればよいかと思いますが,
掲示板のやりとりではどうしても一つ一つの問題が解決するのに数日とかかかる可能性が大きいです.

>明後日が試験なので
とのことですから
そんな悠長なことをやっている暇はなく,根本的な理解を早急にしなければならない状況に見受けます.
(私なら教科書なりなんなりを一から読んで基礎を理解することにとにかく努め,
 今日の夜あたりにはこれらの問題のうちの半分くらいは何とか自前で解ける状態を目指す…と思います.
 仮に,これらの問題の答えをこの場で得られたとしても,自分でやれなければ結局試験がパスできませんしね.) 

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: 構造体の組み合わせについて

#4

投稿記事 by beatle » 10年前

マルチポストっぽいです
http://detail.chiebukuro.yahoo.co.jp/qa ... 4119481849

しかしプログラムの構造が謎ですね。パッと見てなぜ*dataに代入してるのだろうか。hantei関数が内部でBMI計算と、その結果に基づく判定を行っているとすれば、戻り値はvoidで良いですよね。引数としてdataを渡し、それを直接変更してもらう設計が適していると思います。
きっともう手遅れだけど、書きたくなったので書きました。

閉鎖

“C言語何でも質問掲示板” へ戻る