実行結果がおかしい・・
Posted: 2007年11月11日(日) 12:51
1 月の平均気温は 5.8 度です。
2 月の平均気温は 6.1 度です。
3 月の平均気温は 9.3 度です。
4 月の平均気温は 14.4 度です。
5 月の平均気温は 18.4 度です。
6 月の平均気温は 21.8 度です。
7 月の平均気温は 25.3 度です。
8 月の平均気温は 26.7 度です。
9 月の平均気温は 23.7 度です。
10 月の平均気温は 18.5 度です。
11 月の平均気温は 13.4 度です。
12 月の平均気温は 8.3 度です。
ここから最も暑い月とその最高気温を求めたいんですけど・・・。
やり方としては
最大値を格納する変数(ここではmaxとする)を定義する
暫定的に、1月の気温をmaxに代入する(=1月が最高気温だと仮定する)
2月から12月までの各月について、以下の処理を行う{
もし、いま着目している月の気温が max よりも高ければ、
その月の気温をmaxに代入する(=その月が最高気温だと仮定する)
}
このように書いてありました。
なのでそれに従ったつもりで私はif(maxkion < kion[month]){
maxkion = kion[month];
maxmonth == month;
printf("最も暑い月は%d月でその時の気温は%.1f℃です。\n", maxmonth, maxkion);
と書きましたが そうすると
最も暑い月は0月で最高気温は8.3℃です。とでてしまいます。
ちなみに私が書いたプログラムは
#include<stdio.h>
int main(void)
{
float kion[13];
int month;
int maxkion=kion[1];
int maxmonth;
kion[1] = 5.8;
kion[2] = 6.1;
kion[3] = 9.3;
kion[4] = 14.4;
kion[5] = 18.4;
kion[6] = 21.8;
kion[7] = 25.3;
kion[8] = 26.7;
kion[9] = 23.7;
kion[10] = 18.5;
kion[11] = 13.4;
kion[12] = 8.3;
for(month = 1 ; month<13 ; month++){
printf("%d 月の平均気温は%.1f℃です。\n", month, kion[month] );
}
if(maxkion < kion[month]){
maxkion = kion[month];
maxmonth == month;
printf("最も暑い月は%d月でその時の気温は%.1f℃です。\n", maxmonth, maxkion);
}
return 0;
}
それで予定としては最も暑い月は8月でその時の気温は26.7℃です。
と出力されるようにしたいのですが・・・。
ちなみに使用ソフトはMeadow、OSはWindowsです。
お願いします。
2 月の平均気温は 6.1 度です。
3 月の平均気温は 9.3 度です。
4 月の平均気温は 14.4 度です。
5 月の平均気温は 18.4 度です。
6 月の平均気温は 21.8 度です。
7 月の平均気温は 25.3 度です。
8 月の平均気温は 26.7 度です。
9 月の平均気温は 23.7 度です。
10 月の平均気温は 18.5 度です。
11 月の平均気温は 13.4 度です。
12 月の平均気温は 8.3 度です。
ここから最も暑い月とその最高気温を求めたいんですけど・・・。
やり方としては
最大値を格納する変数(ここではmaxとする)を定義する
暫定的に、1月の気温をmaxに代入する(=1月が最高気温だと仮定する)
2月から12月までの各月について、以下の処理を行う{
もし、いま着目している月の気温が max よりも高ければ、
その月の気温をmaxに代入する(=その月が最高気温だと仮定する)
}
このように書いてありました。
なのでそれに従ったつもりで私はif(maxkion < kion[month]){
maxkion = kion[month];
maxmonth == month;
printf("最も暑い月は%d月でその時の気温は%.1f℃です。\n", maxmonth, maxkion);
と書きましたが そうすると
最も暑い月は0月で最高気温は8.3℃です。とでてしまいます。
ちなみに私が書いたプログラムは
#include<stdio.h>
int main(void)
{
float kion[13];
int month;
int maxkion=kion[1];
int maxmonth;
kion[1] = 5.8;
kion[2] = 6.1;
kion[3] = 9.3;
kion[4] = 14.4;
kion[5] = 18.4;
kion[6] = 21.8;
kion[7] = 25.3;
kion[8] = 26.7;
kion[9] = 23.7;
kion[10] = 18.5;
kion[11] = 13.4;
kion[12] = 8.3;
for(month = 1 ; month<13 ; month++){
printf("%d 月の平均気温は%.1f℃です。\n", month, kion[month] );
}
if(maxkion < kion[month]){
maxkion = kion[month];
maxmonth == month;
printf("最も暑い月は%d月でその時の気温は%.1f℃です。\n", maxmonth, maxkion);
}
return 0;
}
それで予定としては最も暑い月は8月でその時の気温は26.7℃です。
と出力されるようにしたいのですが・・・。
ちなみに使用ソフトはMeadow、OSはWindowsです。
お願いします。