• ベストアンサー

C言語を学ぶには・・・

 C言語を学びたいなと考えている中学3年生です。2週間前に自作パソコンが完成して、それにVistaとUbuntuをデュアルブートさせてと色々と夏休みなので最近はやっています。そこで、今度はプログラミングをやってみたいと考えています。  目指すは、C言語をマスターし情報オリンピックで金メダルをとることです。それには、努力を惜しまないつもりです。いま、とても勉強したい気持ちです。   そこで、C言語を学ぶのに最適なテキストを教えてください。本でもウェブページでもなんでも結構です。  よろしくお願いします。

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

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.8

★本を中心にいろいろ紹介します。  この後も参考になるように紹介していきます。→もし良かったらこのページを『お気に入り』へ。 >C言語を学ぶのに最適なテキストを教えてください。 >本でもウェブページでもなんでも結構です。  ↑  本としては   (1)C言語の解説書(文法重視)   (2)C言語の問題集(100~300門)   (3)C言語によるアルゴリズム本   (4)コンピュータ数学  に分けて用意した方が良いです。 ・最初は(1)、(2)を最低でも1冊ずつ用意します。→お金を掛けましょう。ここポイント。  C言語の解説書だけは Web よりも本の方がしっかりしていますので絶対に最低1冊は用意。  いろいろと紹介すると    ◆C言語の解説書  (1)http://www.amazon.co.jp/dp/4797325623/→『新・C言語入門 シニア編』  (2)http://www.amazon.co.jp/dp/4797327928/→『新版 明解C言語 入門編』  (3)http://www.amazon.co.jp/dp/4797329955/→『新版 明解C言語 実践編』  (4)http://www.amazon.co.jp/dp/4274063372/→『C言語によるプログラミング―スーパーリファレンス編』  ※私は(1)の本と出合いC言語を理解しました。   今は新しくC99に対応したタイプとしてリニューアルしたようです。   今の新しいタイプは持っていないがお勧め。    ◆C言語の問題集  (1)http://www.amazon.co.jp/dp/4797327901/→『解きながら学ぶC言語』  (2)http://www.amazon.co.jp/dp/4320026926/→『プログラミング言語C ANSI規格準拠』  (3)http://www.amazon.co.jp/dp/4320027485/→『プログラミング言語Cアンサー・ブック』  ※私は(3)の本と出合いよりC言語を理解しました。   なお(2)が問題集、(3)が(2)に対する解答集です。   もし買うなら(3)をお勧め。→理由:問題文+解答付きだから。    ◆C言語のアルゴリズム  (1)http://www.amazon.co.jp/dp/4797328290/→『C言語による実用アルゴリズム入門』  (2)http://www.amazon.co.jp/dp/4797331631/→『新版 C言語によるアルゴリズムとデータ構造』  (3)http://www.amazon.co.jp/dp/4874084141/→『C言語による最新アルゴリズム事典』  ※最初に買ったアルゴリズムの本が(3)です。   いろいろ載っています。さすが事典!今でも重宝しています。本当に良い本だ!    ◆コンピュータ数学  (1)http://www.amazon.co.jp/dp/4797329734/→『プログラマの数学』  (2)http://www.amazon.co.jp/dp/4797341378/→『数学ガール』  (3)http://www.amazon.co.jp/dp/487408544X/→『C言語 数学関数ハンドブック』  ※普通の数学は無理数、コンピュータで扱う数学は有限数となります。   (3)はお金が溜まったら買おうかとチェックしているものです。→63,000円(何?高い)    と上記のようになります。  今回は(1)か(2)を本屋でリサーチ(閲覧)してみて下さい。またはネットで。 結局: ・私のお勧めとしては  (1)C言語の解説書   (a)http://www.amazon.co.jp/dp/4797325623/→『新・C言語入門 シニア編』   (b)http://www.amazon.co.jp/dp/4797329955/→『新版 明解C言語 実践編』  (2)C言語の問題集   (a)http://www.amazon.co.jp/dp/4797327901/→『解きながら学ぶC言語』   (b)http://www.amazon.co.jp/dp/4320027485/→『プログラミング言語Cアンサー・ブック』  (3)C言語のアルゴリズム   (a)http://www.amazon.co.jp/dp/4797328290/→『C言語による実用アルゴリズム入門』   (b)http://www.amazon.co.jp/dp/4874084141/→『C言語による最新アルゴリズム事典』  (4)コンピュータ数学   (a)http://www.amazon.co.jp/dp/4797329734/→『プログラマの数学』  となります。  ※まずは(1)の(a)と(2)の(a)の2冊(2,835円+1,890円)=4,725円かけて用意するのはどうかな。  ※最低でも解説書の本は1冊買って用意すべきです。→これだけはお金を惜しまないようにね。 その他: ・まだいい本がありますので紹介します。  (1)http://www.amazon.co.jp/dp/4797331186/→『図解C言語 ポインタの極意』  (2)http://www.amazon.co.jp/dp/4893620703/→『CユーザのためのANSI C言語大辞典』  ↑  上記の(1)はC言語の特徴であるポインタを使いこなすための解説書です。 ・C言語の解説書で多少はポインタが載っていますが『図解C言語 ポインタの極意』の方が  より詳しく、またC言語のアルゴリズムにも繋がる話題が満喫です。  ポインタをより理解したい場合は絶対用意すべき本でしょうね。 ・以上。→下の『参考URL』3つのサイトも参考に。どうぞ。

参考URL:
http://www9.plala.or.jp/sgwr-t/index.html,http://www.bohyoh.com/CandCPP/C/index.html,http://seclan.dll.jp/c99d/

その他の回答 (7)

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.7

情報オリンピックの過去問がネット上で参照できますけど見たことありますか? Cをマスターすることがこのオリンピックの金メダルを取ることに 直結するとは思えませんがどうなんでしょう。 Cを学びたい(マスターというのはどういう状態になればそうと言えるの?) という心情を否定はしませんし、情報オリンピックで上を目指すのも結構なことだと思います。 が、ちょっとやる気があさっての方向向いてませんかねえ。

参考URL:
http://www.ioi-jp.org/ioi/2006/problem/day2/blackbox-prob-e.pdf
  • maku_x
  • ベストアンサー率44% (164/371)
回答No.6

暫くは必要にならないと思いますが、プログラミングの作法を覚えて、GUIを使ったプログラムが組みたいレベルになれば、Linux では X Window System の知識が必要になるでしょう(統合デスクトップ環境 KDE とか GNOME を使われるのかも)。その時のために、リンク集を貼っておきます。 http://www.sepia.dti.ne.jp/inoue/link/x_win.html

回答No.5

新訂 新C言語入門 ビギナー編 著 林晴比古 ソフトバンククリエイティブ この本は例文つきで文法を解説してくれているので始めての方には理解しやすいと思います。 また、ビギナー編を理解した後にシニア編に移ればより理解を深めることができます。

参考URL:
http://www.amazon.co.jp/gp/product/4797325615
  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.4

最終的に達人レベルに達するのが目的ならば、ちゃんと基礎から勉強しないといけません。 ・ヘネシー&パターソン  コンピュータの構成と設計 これを読んだ上で、 ・カーニハン&リッチー プログラミング言語C あとは ・ソフトウェア作法 ・プログラム書法 ・プログラミング作法 ・ISO-C の規格書

noname#98978
noname#98978
回答No.2

>お勧めのコンパイラとかテキストエディタ >教えてください。 コンパイラ:gcc テキストエディタ:vi Linux(Ubuntu)使っているなら、インストールされているでしょう?

回答No.1

頑張ってますね。 VistaとUbuntuのどっちでC言語を学ぶのでしょうか?

Rhinocer
質問者

補足

失礼しました、できればUbuntuです。お勧めのコンパイラとかテキストエディタがあったら教えてください。

関連するQ&A

  • プログラミング言語

    現在文系私立大学の一年生です。 パソコンを扱うのが好きなので、在学中にプログラミング言語を覚えたいと考えています。 が、今はC、C+、C++、Javaなどの言語の名前だけを知っている状態です。 どのプログラミング言語を学ぶと役に立つのでしょうか? また、どのプログラミング言語が簡単でどのプログラミング言語が難しいなども教えていただけるとありがたいです。 また、私は数学がかなり苦手で文系に進んだのですが、プログラミングは数学が出来ない人間にも可能なのでしょうか? あとOSですが、プログラミングをするにはWindowsよりもLinuxの方が良いのですか? UbuntuとWin7のデュアルブートの経験はあります。今度はDebianというものでやってみようかなと思っています。

  • C言語 お勧めの学習用Linux系OS

    現在わたしは大学でプログラミング(C言語)の勉強をしているのですが、使っている自分のPCはWindowsです。 デュアルブートをするのは、難しそうなので、1CD Linuxを使用したいと思っております。 1CD LINUXでC言語学習にちょうど良いOSを教えてください。

  • C++言語を学びたい

    C++言語を学びたいと思っています。プログラミングはいままで一度もしたことなく全くの初心者です。C++言語のテキストは購入したのですが、実際に行うにあたり、何かソフトなどが必要なのでしょうか?具体的に教えて頂ければ幸いです。

  • C言語習得のネックは・・・

    プログラミングの独習を始めます。まずC言語です。あす、テキストが届くのですが、C言語学習の難しい部分はどういうところでしょうか。海外生活が長いので英語は大丈夫だと思っていますが。

  • windowsでもC言語を始めたいのですが…

    某大学の数学科1回生です。 今までC言語を学んだことが無かったので、最近ASCIIの「C言語入門」 を購入しました。(4月から学校で講義が始まります。) この入門書を読み進めていくにはUNIX系のOSがあるとスムーズに進行出来るようです。 しかし、僕が使用しているパソコンはwindows7で、 非UNIX系のOSなのでC言語でプログラミングをする環境が整っていません。 そこで、次のサイトhttp://www.ooyashima.net/db/prog.htmでコンパイラと IDEとテキストエディタを手に入れる必要があります。 windowsのOSでも、UNIX系のOSを用いた時と同様にC言語プログラミングを 可能にするためには、先ほどのサイトで、コンパイラからテキストエディタまで 何を手に入れるのがベストでしょうか? 出来れば無料のソフトが良いです。 C言語やプログラミングに関しては全くの初心者なので、稚拙な文章となり 非常に読み辛かったかと思いますが、回答よろしくお願いいたします。

  • ubuntu の言語

    ubuntu の言語 ubuntu をデュアルブートでいれました。バージョンは9.10です。普通にWUBIを使ってインストールしました。インストール後によく覚えていないのですが、なにか言語がおかしいみたいな表示がでてきて、再起動してしたあと見てみるとubuntuの言語がめちゃくちゃになっていました。大半が英語なのですが、時々日本語が混じっていました。しかも日本語の文字が打てません。language supportでは日本語となっていました。 純正の日本語にしたいのですが、どうすればいいでしょうか?

  • Xcodeで0からC言語でプログラミング

    今まで全くプログラミングをしたことがなくHTMLのタグ打ちくらいしかできないのですが、Xcodeで0からC言語などでプログラミングをしたいと考えています。  とりあえず本などで勉強しながら独学でマスターしたいのですが、こんな初心者でも理解できるかかなり不安です。  まず何からしていいかも分かりませんので是非アドバイス宜しくお願いします。

  • c言語を独学

    目標:パソコン上で自分が作ったプログラムで簡単なゲームなど    それなりに成果が見えるくらいになりたい ●これくらいの知識をつけるのに独学でできますか? ●できるならどのようにすればできると思いますか? ●Windows vistaでc言語をつかってプログラミングするには  どのようなソフトウェアが必要ですか? 初心者並みなのでやさしいところからできるように お願いします。

  • HDDリカバリのデュアルブート

    デュアルブートについて質問させてもらいます 1:DELL製のE521(Vista)というPCを買おうと思っているのですが、まだXPの方が多く使いそうなのでデュアルブートにしたいと思うんですがそのPCがHDDリカバリなのでできるかわかりません。 2:160GBのHDDを注文し、パーティションを60と100に区切ってもらうことにして、60(Cドライブ)の方にVista、100(Dドライブ)のほうにXPを入れようと思います。このようなことは出来ますか? 3:VistaのリカバリはCドライブにしかできなさそうなので やり方はまずCDから起動してDドライブにXPを入れ、マスターブートレコードがどうとかこうとかなのでHDDリカバリでCにVistaをもう一回リカバリしてデュアルブート完成、この方法でできるのでしょうか? 時間がある方は、もしできない場合何かいい方法を教えてください 4:また、この場合ライセンス違反になりませんか?(ここで検索していたらそんなのがあったので) 何個も質問失礼いたしました

  • DELLのパソコンでC言語

    学生で、現在C言語を使ってプログラミングをしています。 大学ではLinux、家庭ではDOSでプログラミングをしていますがDOSでのプログラミングに不便さを感じていることと、大学と同じ環境で勉強したいということで、デルのデスクトップPCを買おうと思っています。 しかしカタログを見ていてもデルのパソコンの違いがあまりわからず、デュアルコアなども必要なのかどうかがわかりません。 スペックとしては確実に欲しいのはこれぐらいを考えています。 HDD:80GB メモリ:256×2 ドライブ:CD&DVDRWドライブ officeはなくてかまいません。使用目的は100~1000行程度のプログラミングとインターネット、後は市販のPCゲームをやるぐらいです。 この場合メモリは512もいらないでしょうか?それとデュアルコアは必要でしょうか? 予算は8~9万程度で見ています。 それとは別の質問になるのですが、大学では今red hatを使っているのですが、red hatはいくらぐらいで入手できるのでしょうか?それとデュアルブートは簡単にできるのでしょうか? 質問が多くなってしまいましたがよろしくおねがいします。

専門家に質問してみよう