C言語改訂版① はじめてのプログラミング(倉 薫)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. C言語改訂版① はじめてのプログラミング

C言語改訂版① はじめてのプログラミング


形式:
書籍
発売日:
ISBN:
9784798118062
定価:
2,068(本体1,880円+税10%)
仕様:
B5変・396ページ
カテゴリ:
プログラミング・開発
キーワード:
#プログラミング,#開発環境,#開発手法,#Web・アプリ開発
本書籍には新版があります
C言語 新版 ゼロからはじめるプログラミング

迷わずチャレンジ! 必ずマスター!!

あなたがプログラミングの初心者で、いまC言語を勉強しなければならないとしたら、それはとても幸運なことだと私は思います。「C言語を知っている」ということは、あなたのこれからのすべてのソフトウェア開発経験にとって、すべての面でプラスになることだろうと私は確信しています。
C言語は、シンプルで、論理的で覚えることが少なくて、実行速度が速い、とても扱いやすいプログラミング言語です。よく言われることですが、一言でいうと、とても「美しい」言語です。私は初めてC言語に接したときに、その美しさにすっかり魅せられて、C言語のとりこになってしまいました。その使用人口の多さからもわかるように、そういう人はとても多いのです。そのくらいにC言語は素晴らしいプログラミング言語です。
本書は、旧プログラミング学習シリーズとして出版されたC言語(1)/(2)の改訂版という位置づけのものです。幸いなことに、旧シリーズは多くの読者の方から予想以上に高いご評価をいただきました。ただ残念ながら、当時はC言語の最新規格であるC99文法がまだ一般的ではなかったため、それらについての説明は割愛せざるを得ない状況でした。その後、C99文法を扱えるコンパイラが一般的になってきたこと、そして、にもかかわらず現在書店に並んでいる書籍では既に一般的であるC99文法に基づいたものがほとんどないことなどから、本シリーズではC99文法を全面的に取り入れ、今現在の一般的なコンパイラでできることをきちんと紹介したいと考えてまとめました。
「はじめに」より抜粋

●付属CD-ROMのご案内

本書の付属CD-ROMには、本書で掲載されているサンプルプログラムとコンパイラ(MinGW gcc)が収録されています。
Windows XP / Vista 用。

第1章 C言語に触れる

1-1 C言語に触れる
プログラムとは何か
C言語でのプログラミング
どうやって勉強していくか
1-2 プログラム作成の流れ
プログラムの作り方
1-3 プログラムの作成
コンパイラのインストール
コマンドプロンプト
コマンドプロンプト画面を開く
プログラムコードを書く
プログラムファイルの入力
コンパイル
1-4 ミスやエラーの修正
入力ミスの修正
コンパイラにはわからないエラー
練習問題

第2章 C言語のプログラム

2-1 C言語のプログラム構造
C言語のプログラム構造
2-2 変数
変数を使う
変数とは
変数宣言
変数の初期値
変数名の付け方
2-3 出力
printf()関数
変数の出力
2-4 型
型とは
int
long
long long(C99)
double
char
unsigned
2-5 演算子
演算
四則演算
余り
+= -=演算子
インクリメント、デクリメント演算子
練習問題

第3章 分岐処理と繰り返し処理

3-1 分岐処理1―if文
分岐と繰り返し
if文
条件式の書き方
比較論理演算子
注意点
3-2 分岐処理2―switch文
switch文
文字によるswitch文の分岐
3-3 繰り返し処理1―for文
繰り返し処理
for文
for文の動作
for文の応用
3-4 繰り返し処理2―while文
while文
break文とcontinue文
break文
continue文
練習問題

第4章 配列:ポインタ・文字列

4-1 配列
変数の限界
配列
変数宣言
アクセス方法
変数を添え字に使ったアクセス
配列オーバー
初期化
4-2 ポインタ
ポインタ変数
ポインタ変数を使った次の実験
配列とポインタ
ポインタ変数の中身
4-3 文字列―基礎編
プログラム中の文字列の扱い
変数としての文字列
特殊文字
全角文字を格納する
4-4 文字列―応用編
関数による文字列処理
キーボードからの文字列入力―gets()
文字列→整数変換―atoi()
文字列の設定、コピー―strcpy()
最大長さ指定文字列コピー―strncpy()
文字列の比較―stcmp()
文字列の連結―strcat()
文字列の長さを測る―strlen()
フォーマット指定文字列生成―sprintf()
練習問題

第5章 関数の作り方

5-1 関数の作成
関数を作るメリット
関数とは何か
関数の構造
開始部分
変数宣言部分
処理部分
終了部分
自作関数の入ったプログラム
5-2 ポインタを関数に渡す
引数は値のコピー
ポインタ渡し
5-3 プロトタイプ宣言
プロトタイプ宣言
#includeの正体
練習問題

第6章 大きなプログラムの開発

6-1 ファイルの分割
複数ファイルによる開発
呼ばれる側の書き方
呼ぶ側の処理
自分のヘッダファイルを作る
複数ファイルからなるプログラムのコンパイル
リンクエラー
6-2 変数の種類
変数の種類
ローカル変数
グローバル変数
スタティック変数
ローカル変数っぽいスタティック変数
グローバル変数っぽいスタティック変数
練習問題

第7章 構造体

7-1 構造体
複雑なデータ構造
構造体
第1段階「構造体の定義」
第2段階「定義した構造体を使って、変数を宣言して使う」
構造体の定義
構造体の使い方
構造体とポインタ
構造体は美しい
練習問題

第8章 C言語プログラミングに必要なさまざまな技術

8-1 ファイルの入出力
なぜファイル入出力が必要か
新規ファイルの作成
既存ファイルの読み込み
8-2 #define
#define
8-3 エラー処理
エラー処理
練習問題

練習問題解答および解答例

本書は付属データの提供はございません。

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

追加情報はありません。

ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2012年06月19日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 039
本文6~7行目
2刷
もしここで整数ではない「0.1」などを代入しようとすると、コンパイルのときにエラーになります。
ここで整数ではない「0.1」などは代入できません(暗黙のうちに小数点以下が切り捨てられ、0が代入されてしまいます)。
2012.04.25
1刷 042~043
P42「変数宣言」本文8行目~P43 本文1行目、P42 注②-5
2刷
P42~43本文・・・ 変数には「整数型」以外にも、「文字型」、「実数型」など~(中略)~わけです。 注②-5・・・ 整数型以外の整数については、後で詳しく勉強します(p.52)。
P42~43本文・・・ 変数には「整数型」以外にも、「文字型」、「実数型」などいろいろな型があります。整数型の変数の中に実数を入れると整数に変換されてしまうなど、それぞれに決まりがあります(注②-5)。リスト②-6を見てください。整数型で宣言したのに実数3.14を代入しようとしているので、コンパイル時に整数に変換されてしまいます。 リスト②-6 違う型を代入 int a ;     // 整数型として宣言 a = 3.14 ;  // 整数に変換されてしまう(暗黙のうちに小数点以下が切り捨てられる) プログラマは、変数を「整数として扱いたい」、「精度の高い実数の結果が必要」、「文字として扱いたい」など、処理する目的に応じて使い分けることができます。事前に、「int a ;」と書かれていれば、コンパイラは「aという変数は整数型なんだな」ということが理解でき、プログラムの意図に適った動作ができるようになります。ただし、宣言された型以外の値を間違えて代入してしまうと、コンパイラはC言語の規則に従って処理してしまい、期待通りの動作になりません。 注②-5・・・ 実際はもう少し複雑な決まりがあるのですが、ここでの説明は省略します。「変数の型と異なる型の値を代入すると、変換されたりすることがある」というC言語の規則があることだけ覚えてください。また、整数型以外の変数については後で詳しく勉強します(P.52)。
2012.05.29
1刷 075
「比較論理演算子」本文10行目、側注
2刷
本文・・・このように書くと、コンパイル時にコンパイルエラーとなります。
本文・・・このように書いても期待通りの動作はしません。 側注・・・以下の文章を追加します。 具体的にどのような動作になるかは複雑なのでここでは触れない。このような書き方をしてはいけないということだけ覚えておいていただきたい
2012.05.29
1刷 147
本文8行目
2刷
このプログラムの中ではputs()関数を使用している
このプログラムの中ではgets()関数を使用している
2012.04.25
1刷 162
練習問題4.1 問題文3~4行目
2刷
期待通りの動作をしません。間違っている箇所が1カ所ありますが、それはどこでしょうか。また、修正するには
期待通りの動作をしません。修正するには
2012.04.25
1刷 255
A2.3 正解、D)の解説
3刷
正解:B D)コンパイル時にエラーになります。aはint型~(中略)~ double a ; a = 1.0 ;
正解:BとD D)コンパイル時に整数に変換されてしまい、暗黙のうちに小数点以下が切り捨てられますが、エラーにはなりません。 ただし、「小数を代入したのだから、結果も小数で表示させたい」と、 int a; a = 3.14; printf("%f",a); (%fは実数を表示する形式:P56参照)などとすると、「整数が格納されている変数を実数型で表示させようとしている」ため、コンパイル時に警告が表示され、実行時も正しい値が表示されません。
2012.06.19
1刷 261
「A4.1」図
2刷
以下の図に差し替えます。
2012.05.29

感想・レビュー

たけぞー さん

2016-05-01

プログラミング初心者でしたが、わかりやすく説明してくれました。 ただ少し冗長な気もします。

文月葵 さん

プログラミング知識ゼロから始めるのに最適。安定した土台作りに於いて基礎は重要。Cは他の言語にも通じる知識であるため触れておいても損は無く、細部よりも全体を俯瞰することに長けた本書は入口として使用するには大変優れた書籍と言える。C言語の初心者向けの書籍に関しては後にも先にも本書を越える教材と巡り合ったことはない。巻を重ねる毎に評価が下がりがちな同シリーズの中では比較的安定した支持を得ている辺りからも、信頼出来る参考書であることが窺える。C言語を教養と捉えている読者には最高の一冊。

tomehiko2 さん

2018-12-19

とりあえず、まったくの初心者でもなんとか読み進めることは可能。でも、最後の例題はもう少しヒントの出しようがあったんじゃなかろうか。少なくとも複数ファイルを同時に開いて処理してもいい、って書いといてくれればもう少し解答に近づけたのに… あと、別の本(苦しんで覚えるC言語とか独習Cとか)を読んでると、書き方のお作法がCの標準的じゃなさそうな部分(main関数でmain(void)でなくmain()と書いたり、最後のreturn 0;を省略するとか)あり。読みやすさを優先しての配慮だろうけど、他の本も必要そう。