• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:プログラミング(C言語)についての質問です)

C言語で最大値と最小値を求めるプログラムがうまく動作しない

このQ&Aのポイント
  • 3つの整数の入力を受け付け、最大と最小を求める関数を作成し得られた結果を表示するプログラミングを作成したつもりなのですが、うまく作動しません。
  • ポインタと配列の受け渡しについて初めて学んだため、理解が不十分です。
  • 課題文ではポインタを使用して最大値と最小値を同時に求めるように指定されています。

質問者が選んだベストアンサー

  • ベストアンサー
  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

*min=*max=data[0]; これは何がどうなるのですか? 考えてみましょう。

UFOtbnb1642
質問者

お礼

ありがとうございます! 正直こんなに早く回答が得られるなんて思っていなかったのでびっくりしています。 こんなところを間違っていたのですね… プログラミングの基本を再確認しないといけないです。

その他の回答 (3)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.4

ど~でもいいところにつっこむけど 2st 3st はなんかかなしい.

UFOtbnb1642
質問者

お礼

ありがとうございます! ほんとですね・・・。 課題を提出する前に直しておきます(笑)

  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.3

>*min=*max=data[0]; 先頭要素を仮の最大値・最小値にするという考え方 そのものは正しいです。が、それを書く場所が正しくありません。 data[0]を「実際に読み取った後」に書かないと。

UFOtbnb1642
質問者

お礼

ありがとうございます! おかげさまでコンパイルすることができました~ 間違っていた方のコンパイル結果もどういう構造になっているのか理解することができました!

  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.2

>*min=*max=data[0]; 配列の先頭要素を仮の最小値、仮の最大値にしているのだと思いますが。 この時点では先頭要素はscanfより前なのでデータには何も入っていません。 これを実行するタイミングを考えてみましょう。

UFOtbnb1642
質問者

お礼

ありがとうございます! scanfの後に書いたらうまいことコンパイルされました! こんなところを間違えるなんて少し恥ずかしいです。。。

関連するQ&A