- ベストアンサー
c言語の勉強方について
punchan_jpの回答
- punchan_jp
- ベストアンサー率55% (155/280)
No.1の補足の例題に関してですが、慣れた人なら30分もあれば書けそうな内容 ですよね。エキスパートならもっと速いかも。もっとも、本筋ではないですが 「格納関係を表示すること」って何のことかあいまいですね。「どのノードの どっちに追加したか」を表示すればいいのかな?出題者に問い合わせる必要も ありそうです。 で、問題を見て何を考えればいいかですが、mickmick2さんは、この問題を見 て何を考えますか? データ構造のイメージはわきますか?配列があって、その各要素は名前と左の 番号と右の番号を保持する構造体であるというイメージです。配列の第0要素 が2分木のルートノードです。 また、プログラムの動作途中では、空のノードと使用中のノードが混在してい ることはイメージできますか? データを追加するには、空のノードを探してそこにデータを入れ、どこかのノー ドの左または右として接続するということはイメージできますか? どのように空のノードを探すかの戦略をいくつか思いつきますか? この問題では不要ですが、場合によっては削除することもイメージする必要が あります。空になったノードは次に必要なときに探せるようにしておく必要が あります。 次に、そのデータの操作手順です。 2分木によるソーティングはご存知だとして、新しいデータを追加するには、 まず適切な位置を探さなければいけません。既に途中まで作られた2分木に対 して、追加位置を求めて探索していく手順はイメージできますか? その手順を実現するには、再帰呼出しが素直な方法だと予想できますか? 完成した2分木から結果を出力するには、そのルートノードの左の部分2分木 を出力して、ルートノード自身を出力して、最後に右の部分2分木を出力すれ ばいいという手順は理解されていますか? このように、データがどのように蓄えられるか、それをどう操作していくかと いうイメージを持つことが大切です。紙にも書いてないし、画面にも現れてな いイメージですから、それを頭の中で想像しなければいけません。 例にあげられている程度まで細分化された問題の場合、この程度のことが一気 にイメージできてから、プログラムを書き始めるわけです。このイメージが全 部わいていれば、あとは各言語の文法に合わせていくだけです。 これより大規模な問題になってくると、問題の細分化が必要でしょう。また状 況によってデータ構造が与えられているか新たに設計するかによっても、やり 方は異なります。
関連するQ&A
- プログラミング(C言語)を勉強するに当たって・・・
何も知らない完全な初心者です。 現在、理学部の大学1年生です。(情報系ではありません) 目的としては、ゲーム作成。および、大学の研究などで自分が必要とするソフトを作ること。 プログラミングについて独学で勉強したいのですが、現在、C言語からはじめてC++を勉強しようと思っています。 そこで、いくつか質問をしたいのです。 (1)言語を学ぶ以前に学ぶべきことは? (2)目的に対する言語は適当であるか? (3)また、どのソフトがお勧めであるか?(学生なので2万以内で済ませたいと思います。) プログラミングをする際に読んでいたほうが良い本を 教えていただけるとありがたいですm(_ _)m
- ベストアンサー
- C・C++・C#
- C言語の勉強にあたって
今からC言語を勉強していく人から質問されたのですが、勉強にあたって、Cのアプリケーション(コンパイラ等)なしに実際のプログラムの動きを勉強する方法はないでしょうか? これでは漠然とした書き方ですが、例えば、インターネットのHP上でプログラミング→コンパイル→実行をシミュレーションできるようなHPはないでしょうか? こういうHPがあると、とりあえずインターネット環境とC言語の参考書があれば簡単に勉強できると思うんです。 そのようなHP、ありましたら教えてください。 何ヶ所かあるようでしたら、使い方が難しくない(初心者向け)ところが良いです。 よろしくお願いします。
- ベストアンサー
- C・C++・C#
- C言語を勉強したいです。
C言語どころか、プログラミングを触った程度でしか 勉強したことがないのですが、本格的に勉強したいと思っています。 でも、勉強をし始めたのはいいのですが、実際のC言語の ソフトを持ってないのですが、そのソフトは、どうやって手に入れれば いいんでしょうか。タダでダウンロードできる・・なんてことは できないんでしょうか?簡単な質問かもしれませんが、もしよければ 教えてください。よろしくお願いします。
- ベストアンサー
- C・C++・C#
- C言語を勉強する為に
全くのプログラミングの初心者です。C言語を勉強したいと思っています。 まず、何が必要なのでしょうか?参考書はもちろんですがプログラミングを勉強するにあたって最低限必要なものを教えて頂ければと思います。できればフリーソフトが望ましいのですが…。 それと、C言語とJAVAはどちらが入りやすいのでょうか。
- ベストアンサー
- C・C++・C#
- JavaとCのどっちがいい???
こんにちは。 プログラミングを始めようと思うのですが、 言語はどれがいいのかよく分からないし、プログラミングという言葉も抽象的でいまいちパッとしません。 今人気なのはJavaとCと聞きました。 独学でもできますか? 将来、パソコンをさわる仕事につきたいのですが、プログラミングの他に何かありますか。 お願いします。
- ベストアンサー
- Java
- C言語
今、C言語のプログラミングについて勉強してます。 それで、printf文の中にアスキーアートを入れようとしたのですがエラーが出てしまいます。 おそらくAAの中に:や()が使われているからだと思います
- ベストアンサー
- その他(学問・教育)
- Xcodeで0からC言語でプログラミング
今まで全くプログラミングをしたことがなくHTMLのタグ打ちくらいしかできないのですが、Xcodeで0からC言語などでプログラミングをしたいと考えています。 とりあえず本などで勉強しながら独学でマスターしたいのですが、こんな初心者でも理解できるかかなり不安です。 まず何からしていいかも分かりませんので是非アドバイス宜しくお願いします。
- ベストアンサー
- C・C++・C#
- C言語のコンパイラ、リンカ
はじめまして。 独学でC言語の勉強をしています。 そこで、実際に簡単なプログラミングをしてみたいのですが、フリーのコンパイラ、リンカはあるでしょうか? 知っている方がいました宜しくお願いします。
- ベストアンサー
- C・C++・C#