meideru blog

家電メーカーで働いているmeideruのブログです。主に技術系・ガジェット系の話を書いています。

宇宙で一番最適なC言語の入門書を紹介します

      2018/10/31

C言語

C言語は素晴らしいプログラミング言語です。
その歴史は古く、1972年に生まれましたにも関わらず、40年以上経った今でも使われています。

この言語が他のプログラミング言語に及ぼした影響は計り知れません
C++、C#、Java、JavaScript、PHP、Swiftなど今使われている主要な言語は、間違いなくC言語の影響を受けています。

したがって、C言語を学ぶことこそ、プログラマへの第一歩なのです。

今日は、C言語の入門にオススメの本を紹介しようと思います。

今日紹介する本以上に最適なC言語の入門書はないと思います。

タイトル通り、この本が宇宙で一番最適なC言語の入門書です。

オススメするのは「明解 C言語 入門編」という本です

この本は柴田望洋さんという大学教授が書きました。

大学の教授が書いた本の多くは、言い回しが冗長でわかりにくいことが多いのですが、明解C言語に関しては全くそんなことはありません。

私の大学で配布されたC言語の本はいかにも大学の参考書らしい本で、わかりにくいので1度も使っていません(^_^;)

「明解 C言語 入門編」をオススメする理由

IT

この本をオススメする理由はいくつかあります。

わかりやすい言い回しで説明されている

とてもわかりやすい言い回しで説明されています。

上にも書いた通り、大学教授が書いた本にも関わらず、冗長な表現が一切ありません。

明解C言語は、全体的にフランクな文章で絵を交えて解説していて、とてもわかりやすいです。

サンプルコードがとても多い

サンプルコードというのは、プログラミング言語を学ぶということにおいて非常に大切です。

文法を理解したら、実践的なコードを読んで確認する必要があります。その確認は、サンプルコードを読んで行います。

明解C言語には、文法ごとにサンプルコードが載っています。

C言語の基本事項をほぼ全て網羅している

「変数」からC言語最大の障壁と言われる「ポインタ」まで詳しく載っています。

どの項目も詳しく書いてあり抜けがありません。

明解C言語では、C言語の基本が全て学べます。

アルゴリズムも学べる

アルゴリズムとは、問題を解くための手順を定式化した形で表現したものです。

プログラマは、ただ単純にC言語を扱えるだけではなく、色々なアルゴリズムを知っておく必要があります。

「例えば、100人の身長データを昇順に並べる」というプログラムを書きたいときはどうのようにすればよいでしょうか?

アルゴリズムを勉強していない人は悩んで時間がかかってしまいます。

しかし、アルゴリズムを勉強している人は違います。
ソートのアルゴリズム(バブルソートなど)を適用して、すぐに問題を解決することができます。

大切なことなのでもう一度書きます。プログラマは、ただ単純にC言語を扱えるだけではなく、色々なアルゴリズムを知っておく必要があります。

明解C言語では、有名なアルゴリズムがいくつか紹介されていて,C言語の文法と並行して最低限のアルゴリズムを学ぶことができます。

この本は非常に分厚くて読み応えがあります

cgenngononyuumonnnisaitekinahonn2
cgenngononyuumonnnisaitekinahonn3

(上の画像は私の本です。明解C言語の初版です。)

 

ハッキリ言って、明解C言語は、他の入門書より分厚いと思います。
それが嫌で、この本を敬遠する人も多いのではないかと思います。

しかし、私は、C言語の入門書にはこれくらいの分厚さがあって当然だと思います。

C言語は、他のプログラミング言語に比べて圧倒的に難しいです。

今流行りのPythonなどと違い、C言語はコンピュータに近い言語です。
C言語をマスターするには、勉強しなければいけないことがたくさんあります。

明解C言語は分厚い本ですが、難しい言い回しはほとんどありません。時間をかけてしっかり読めば必ず理解できます。

当時、高校生の私が読んで理解できたのですから、みなさんも必ず理解できます。

新·明解C言語 実践編」という続編もあります

入門編で満足できなくなったら、続編を読みましょう。
続編は「新・明解C言語 実践編」です。

この本では、C言語の実践的な扱い方が書いてあります。

まとめ

C言語は、主要なほぼ全てのプログラミング言語の祖とも言える存在です。

C言語の影響を受けていないプログラミング言語は、ないと言っても過言ではありません。

C言語を勉強してから他のプログラミング言語を勉強すると理解が捗ります。

難しい言語であるため、勉強するのであれば妥協することなく、しっかりとやったほうがいいです。

そのための入門書には「新・明解C言語 入門編」が最適です。

 -