無題
無題
問題文
社会、理科、英語の得点から平均点と評価を与えるプログラムである。
各個人のデータは①「出席番号」②「文系・理系の区分」③「社会」④「理科」
⑤「英語」⑥「3教科の平均」⑦「評価」からなる。ただし、具体的にデータとして
入れるのは①②③④⑤のみ。(残りはプログラムに処理させる)データは構造体で宣言する。「3教科平均」では、各人の社会・理科・英語の平均点を代入しておく。
「評価」には「文系であれば社会と英語の平均、理系であれば理科と英語の平均」に
応じて80以上はA、70~79はB、60~69はC、59以下はDといれる。出力はこれらを全て
埋めたものを表形式で出力する。さらに、「3教科の平均」で昇順にソートしておく。
(値の入れ替えはswap関数をつくる)
●検証用データ(変数の宣言時に代入しておく)
出席番号 文系・理系 社会 理科 英語
0001 文系 85 32 74
0002 理系 33 68 52
0003 理系 69 97 83
0004 文系 72 60 65
0005 文系 46 72 88
0006 文系 85 41 79
0007 理系 77 85 52
「評価」のとこですが,3教科の平均をもとに出ているのですが、
これを「文系は国語と英語の平均」「理系は数学と英語の平均」で出すにはどうすればいいのでしょうか。
アドバイスお願いします。
プログラムは添付してあります。
社会、理科、英語の得点から平均点と評価を与えるプログラムである。
各個人のデータは①「出席番号」②「文系・理系の区分」③「社会」④「理科」
⑤「英語」⑥「3教科の平均」⑦「評価」からなる。ただし、具体的にデータとして
入れるのは①②③④⑤のみ。(残りはプログラムに処理させる)データは構造体で宣言する。「3教科平均」では、各人の社会・理科・英語の平均点を代入しておく。
「評価」には「文系であれば社会と英語の平均、理系であれば理科と英語の平均」に
応じて80以上はA、70~79はB、60~69はC、59以下はDといれる。出力はこれらを全て
埋めたものを表形式で出力する。さらに、「3教科の平均」で昇順にソートしておく。
(値の入れ替えはswap関数をつくる)
●検証用データ(変数の宣言時に代入しておく)
出席番号 文系・理系 社会 理科 英語
0001 文系 85 32 74
0002 理系 33 68 52
0003 理系 69 97 83
0004 文系 72 60 65
0005 文系 46 72 88
0006 文系 85 41 79
0007 理系 77 85 52
「評価」のとこですが,3教科の平均をもとに出ているのですが、
これを「文系は国語と英語の平均」「理系は数学と英語の平均」で出すにはどうすればいいのでしょうか。
アドバイスお願いします。
プログラムは添付してあります。
Re:無題
そうですね
平均の関数は double calc_average(struct person *p) { double sum; sum = p->score_sha + p->score_eng + p->score_rika; return sum / 3.0; } メインでは for (i = 0; i < NUM; i++) { date.score_average = calc_average(&date); if (date.cls == 0) { date.rank = calc_rank(date.score_sha, date.score_eng); } else { date.rank = calc_rank1(date.score_rika, date.score_eng); } }