BohYoh.comトップページへ

新・明解C言語中級編

本書の概略 はじめに 目 次 本 文 ダウンロード 電子書籍版について 発行日・履歴 著書のページ


1章 数当てゲーム

1-1 数当ての判定
if文による分岐
入れ子になったif文
多分岐の実現法
1-2 当たるまでの繰返し
do文による繰返し
等価演算子と関係演算子
while文による繰返し
break文
while文とdo文
前判定繰返しと後判定繰返し
1-3 当てさせる数をランダムに
rand関数:乱数の生成
srand関数:乱数生成のための種の設定
当てさせる数をランダムにする
入力回数に制限を設ける
1-4 入力履歴の保存
配列
入力された値の配列への格納
for文による入力履歴の表示
配列の要素の初期化
配列の要素数の取得

2章 表示に凝ろう

2-1 拡張表記を使いこなす
拡張表記
\a … 警報
\n … 改行
\f … 書式送り
\b … 後退
\r … 復帰
\t … 水平タブ
\v … 垂直タブ
\'と\" … 単一引用符と二重引用符
putchar関数:文字の出力
\? … 疑問符
\\ … 逆斜線
8進拡張表記と16進拡張表記
2-2 時間をあやつる
clock関数:プログラム起動からの経過時間の取得
処理に要した時間の計測
一定時間の処理停止
2-3 テロップ表示
1文字ずつの表示と消去
strlen関数:文字列の長さを調べる
テロップ表示(左方向)
テロップ表示(右方向)
2-4 書式付き入出力
表示桁数を変数として指定
任意の個数の空白文字の表示
printf関数:書式付きの出力
scanf関数:書式付きの入力

3章 じゃんけんゲーム

3-1 じゃんけんゲーム
基本設計
switch文
<手>を表す文字列
漢字を含む文字列
文字コード
char型
すべての文字を表示
isprint関数:表示文字の判定
条件演算子と条件式
文字列の内部
ポインタによる文字列の走査
CHAR_BIT
文字列の内部と漢字コード
文字列へのポインタの配列
プログラムの改良
手の値と判定
後出しコンピュータ
3-2 関数の分割
勝敗回数
関数と識別子の有効範囲
3回勝負

4章 マスターマインド

4-1 マスターマインド
マスターマインド
問題の作成
数字の並びの読込み
atoi関数/atol関数/atof関数:文字列から数値への変換
読み込んだ文字列の妥当性のチェック
文字種の判定
ヒットとブローの判定

5章 記憶力トレーニング

5-1 単純記憶トレーニング
4桁の数値を記憶するトレーニング
整数型の表現範囲
任意の桁の数値を記憶するトレーニング
トレーニングレベルの入力
数値を文字列で表す
問題用文字列の作成
問題用文字列の表示
strcmp関数:文字列の比較
英字記憶トレーニング(その1)
問題用文字列の作成
英字記憶トレーニング(その2)
5-2 プラスワントレーニング
プラスワントレーニング
レベルの入力
問題の作成と表示
問題の消去
解答の入力
正誤の判定
正解数の保存
トレーニング結果の表示
横向きグラフ表示
縦向きグラフ表示
配列への数値の格納
配列の要素数を超える数値の格納(その1)
配列の要素数を超える数値の格納(その2)
プラスワントレーニングの改良
5-3 記憶域の動的な確保と解放
配列の宣言
割付け記憶域期間
記憶域の動的な確保と解放
voidへのポインタ
単一オブジェクトの確保
配列オブジェクトの確保

6章 カレンダー

6-1 今日は何日?
今日の日付
time_t型:暦時刻
time関数:現在の時刻を暦時刻で取得
tm構造体:要素別の時刻
localtime関数:暦時刻から地方時要素別の時刻への変換
gmtime関数:暦時刻からUTC要素別の時刻への変換
現在の時刻による乱数の種の設定
asctime関数:要素別の時刻から文字列への変換
ctime関数:暦時刻から文字列への変換
difftime関数:時刻の差を求める
一定時間の処理停止
6-2 曜日を求める
mktime関数:地方時要素別の時刻から暦時刻への変換
ツェラーの公式
6-3 カレンダー
カレンダー表示
曜日を求める
閏年の判定
月の日数
カレンダー表示の過程
横に並べて表示
1ヶ月分のカレンダーの文字列への格納
sprintf関数:文字列に対する書式付きの出力
空文字列の作成
strcpy関数:文字列のコピー
1日の左側の余白の設定
strcat関数:文字列の連結
表示
年月の計算
6-4 コマンドライン引数
コマンドライン引数
argvが指す実体
ポインタによるargvの文字列単位の走査
ポインタによるargvの文字単位の走査
argcを使わない走査
起動時に年月を指定するカレンダー

7章 右脳トレーニング

7-1 ラックナンバーサーチ
配列のコピー
配列の要素を一つ飛ばしてコピー
ラックナンバーサーチ
配列の要素のシャッフル
二値の交換
7-2 ダブルナンバーサーチ
ダブルナンバーサーチ
キー入力と操作性の向上(MS-Windows/MS-DOS)
getch関数:押下されたキーの取得
putch関数:コンソールへの出力
キー入力と操作性の向上(UNIX/Linux/OS X)
共通ヘッダ
インクルードガードされたヘッダの設計
呼び出す関数の置換
可変個引数の宣言
va_startマクロ:可変個引数アクセスの準備
va_argマクロ:可変個引数の取出し
va_endマクロ:可変個引数アクセスの終了
vprintf関数/ vfprintf関数:ストリームへの出力
vsprintf関数:文字列への出力
改良したプログラム
7-3 トライグラフ連想トレーニング
瞬間的判断力の養成
問題の作成

8章 タイピング練習

8-1 基本タイピング練習
1個の文字列をタイプ
タイプされた文字を消していく
複数の文字列をタイプ
出題順序をランダムにする(手法1)
出題順序をランダムにする(手法2)
8-2 キー配置連想タイピング
キー配置連想タイピング
8-3 総合タイピング練習
トレーニングメニュー
単純ポジショントレーニング
複合ポジショントレーニング
C言語の単語トレーニング
英会話トレーニング

9章 ファイル処理

9-1 標準ストリーム
コピープログラム
getchar関数とEOF
代入と比較
ストリームとバッファリング
バッファリングの種類
setvbuf関数/setbuf関数:バッファリング方法の変更
fflush関数:バッファのフラッシュ
標準ストリーム
リダイレクト
9-2 テキストファイル
ファイルのオープンとクローズ
fopen関数:ファイルのオープン
FILE型
fclose関数:ファイルのクローズ
トレーニング情報の保存と取得
最高得点の更新
トレーニング情報の読込み
fscanf関数:書式付きの入力
トレーニング情報の書出し
fprintf関数:書式付きの出力
9-3 ユーティリティの作成
concat:ファイルの連結出力
fgetc関数:ストリームからの1文字読込み
fputc関数:ストリームへの1文字出力
detab:水平タブ文字を空白文字に変換
fputs関数:文字列の出力
entab:空白文字を水平タブ文字に変換
9-4 バイナリファイル
テキストファイルとバイナリファイル
fread関数:ファイルからの読取り
fwrite関数:ファイルへの書込み
hdump:文字と16進数コードによるファイルのダンプ
bcopy:ファイルのコピー

10章 英単語学習ソフト

10-1 英単語学習ソフト
単語表示ソフト
単語の選択と表示
単語学習ソフトへの拡張
選択肢の表示
選択肢の生成
選択肢の生成(改良版)
10-2 文字列の配列の動的な確保
単一の文字列の動的な確保
文字列の配列の動的な確保(2次元配列)
文字列の配列の動的な確保(ポインタの配列)
単語ファイルの読込み

おわりに
参考文献
索引
標準ライブラリ索引(ヘッダ別)
標準ライブラリ索引(種別)
謝辞
著者紹介


オンラインで購入できます!  □amazonで購入(紙書籍版:2色刷)  □amazonで購入(電子書籍版:5色刷)

本書の概略 はじめに 目 次 本 文 ダウンロード 電子書籍版について 発行日・履歴 著書のページ