[1.1] 自分が今行いたい事は何か
<問題>
1次配列を使い、ある月の毎日の正午の気温を受け取って、その月の平均気温と最高気温、最低気温を報告して下さい。
<疑問点>
独習C、例5.1.1の最高気温、最低気温を求める方法なんですが、正答だと初期値の0と200のままになってしまします。この場合の初期値をなぜそのように設定するのかわかりません。また、この場合のもっと良いコードがあれば合わせてご教授お願い致します。
[1.2] どのように取り組んだか(プログラムコードがある場合記載)
<独習Cの例5.1.1の正答になります>
/* ch05-02.c */
#include <stdio.h>
int main(void)
{
int temp[31], i, min, max, avg;
int days;
printf("月の日数は? ");
scanf("%d", &days);
for (i = 0; i < days; i++) {
printf("%d 日の正午の気温を入力してください: ", i + 1);
scanf("%d", &temp[i]);
}
/* 平均を求める */
avg = 0;
for (i = 0; i < days; i++)
avg = avg + temp[i];
printf("平均気温: %d\n", avg / days);
/* 最高気温と最低気温を求める */
min = 0; /* minとmaxを初期化 */
max = 200;
for (i = 0; i < days; i++) {
if (min < temp[i])
min == temp[i];
if (max > temp[i])
max == temp[i];
}
printf("最低気温: %d\n", min);
printf("最高気温: %d\n", max);
return 0;
}
[2] 環境
[2.1] OS : Windows
[2.2] コンパイラ名 : VC++ 2010 Express