【C言語課題解説】身長を5人分入力すると、平均身長、最高身長、最低身長を表示するプログラム

はじめに

どうも! 高杉 皆為(@MinatameT)です。

この記事で紹介するプログラムは、次の記事のプログラムを少しだけ変化させたものになります。よろしければ参考にしてみてください。

問題文

キーボードから5人分の身長を入力すると、平均身長、最も高い身長、最も低い身長を (小数第2位まで) 表示するプログラムを作成しましょう。

ただし、身長は実数値で、単位は (cm) とします。

また、「自作関数」と「配列」を使わないソースコードにしてください。

この問題について解説します。

解答例

ソースコード

#include<stdio.h>

int main(void)
{
  double h1,h2,h3,h4,h5; //5人分の身長
  double ave; //平均身長
  double max; //最高身長
  double min; //最低身長

  printf("1人めの身長 (cm) >");
  scanf("%lf",&h1); //h1(1人めの身長)の入力

  max = h1; //今のところ、h1を最高身長とする。
  min = h1; //今のところ、h1を最低身長とする。
	
  printf("2人めの身長 (cm) >");
  scanf("%lf",&h2); //h2(2人めの身長)の入力

  if(h2>max) //最高身長よりh2が大きければ
  {
    max = h2; //最高身長をh2にする。
  }
  if(h2<min) //最低身長よりh2が小さければ
  {
    min = h2; //最低身長をh2にする。
  }
	
  printf("3人めの身長 (cm) >");
  scanf("%lf",&h3); //h3(3人めの身長)の入力

  if(h3>max) //最高身長よりh3が大きければ
  {
    max = h3; //最高身長をh3にする。
  }
  if(h3<min) //最低身長よりh3が小さければ
  {
    min = h3; //最低身長をh3にする。
  }
	
  printf("4人めの身長 (cm) >");
  scanf("%lf",&h4); //h4(4人めの身長)の入力

  if(h4>max) //最高身長よりh4が大きければ
  {
    max = h4; //最高身長をh4にする。
  }
  if(h4<min) //最低身長よりh4が小さければ
  {
    min = h4; //最低身長をh4にする。
  }
	
  printf("5人めの身長 (cm) >");
  scanf("%lf",&h5); //h5(5人めの身長)の入力

  if(h5>max) //最高身長よりh5が大きければ
  {
    max = h5; //最高身長をh5にする。
  }
  if(h5<min) //最低身長よりh5が小さければ
  {
    min = h5; //最低身長をh5にする。
  }

  ave = (h1+h2+h3+h4+h5)/((double)5); //平均身長の計算

  printf("平均身長 = %0.2f (cm) \n",ave); //%0.2fで小数点第2位まで表示する。
  printf("最高身長 = %0.2f (cm) \n",max); //%0.2fで小数点第2位まで表示する。
  printf("最低身長 = %0.2f (cm) \n",min); //%0.2fで小数点第2位まで表示する。

  return(0);
}

「//」より右はコメント文なので、入力しなくても構いません。

はじめは、最高身長と最低身長をh1(1人めの身長)にしておき、後から入力されるh2、h3、h4、h5の値と比較していきます。こうすることで、最終的な最高身長と最低身長を求めることができます。

平均身長は、h1、h2、h3、h4、h5をすべて入力し終えた後に、まとめて計算しています。やっていることは、身長の和を実数の5で割って、aveに代入しているだけです。

それでは、実行結果の例を確認していきます。

実行結果

1人めの身長 (cm) >158.5
2人めの身長 (cm) >177.2
3人めの身長 (cm) >160.8
4人めの身長 (cm) >155.0
5人めの身長 (cm) >170.1
平均身長 = 164.32 (cm)
最高身長 = 177.20 (cm)
最低身長 = 155.00 (cm)

このように、5人分の平均身長、最高身長、最低身長が正しく表示することができました!

課題の解説はここまでです。お疲れさまでした。


みなためじゃんけん

このコーナーは、私と擬似的にじゃんけんできるコーナーです。

みなためじゃんけん、じゃんけんぽん!

私が出したのは……





パーでした! チョキの勝利です!



この記事をSNSでシェアする

プログラミングカテゴリーの最新記事(5件)

最新記事(10件)

管理人のTwitter

内部リンク集