dポイントプレゼントキャンペーン実施中!

こんにちは。

プログラミングの講義の課題で、
1.100未満の整数20個からなる配列を作成する
2.for文を使って20個の整数の中で最大値を求める
3.その結果を出力する

というC言語の課題が出されました。完成はしたのですが、何度実行してもビルドエラーが発生して正常に作動しません。どうすれば正常に作動しますか?

#include <stdio.h>
int main(void){

int i;
int max=0;
int num[20] = {4,83,71,90,7,33,62,51,98,21,18,20,75,49,69,14,80,22,8,50};

for( i=0 ; i < 20 ; i++ )
{
if (num[i] > max) max = num[i];
}

printf("%d,",max);

return (0);
}

A 回答 (3件)

ちなみに


>int max=0;
配列中の最大値が負の場合は最初の仮の最大値の0になってしまいます。
※問題文が「自然数」ならよかったけど、「整数」なら負もあり

なので、「配列の先頭の値」を最初の最大値にした方が良いです。

max = num[0];
としておき、forループのiの初期値を1にしてください。
    • good
    • 0
この回答へのお礼

ありがとうございます!何とか解決できましたm(_ _)m

お礼日時:2014/11/04 17:45

手元のVisualStudioでは実行できました。




エラーメッセージやコンパイラを書くと回答しやすいかも。
    • good
    • 0
この回答へのお礼

ありがとうございます!何とか解決できましたm(_ _)m

お礼日時:2014/11/04 17:45

printf("%d,",max); の ”” の中のカンマをなくすか、



printf("%d¥,",max); のようにカンマの前にバックスラッシュ(円記号になることもあり)で、「関数の引数の区切りじゃないですよ!」と明示するか、

でしょうかね。
    • good
    • 0
この回答へのお礼

ありがとうございます!何とか解決できましたm(_ _)m

お礼日時:2014/11/04 17:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!