構造体やポインタを学びます。基礎編では、データ構造として配列を学びましたが、本編では、より複雑なデータ構造を学びます。イメージ図が書けるようになりましょう。
前半は、構造体やポインタの勉強をしながら、バトルゲームを少しずつ作り上げていきます。後半は、リアルタイム系のゲームであるシューティングゲームを作ります。このゲーム作りを通して、より高度なデータ構造やOSの機能を使います。
《練習問題01》構造体への入力と表示
《練習問題02》構造体を初期化してバトル
《練習問題03》typedefを使った構造体宣言
《練習問題04》構造体配列へのデータセットと表示
《練習問題05》体力が無くなる迄バトル
《練習問題06》ポインタの実験
《練習問題07》配列処理にポインタを使う
《練習問題08》ポインタを使って入力する
《練習問題09》文字列を大文字変換して複写
《練習問題10》文字列を逆順に複写する
《練習問題11》構造体ポインタで構造体配列を扱う
《練習問題12》バトルゲーム(ステータスの自動生成)
《練習問題13》バトルゲーム(入力とバトルの関数化)
《練習問題14》バトルゲーム(ステータスの自動生成)
《練習問題15》配列表示を関数化
《練習問題16》バトルゲーム(表示メニュー)
《練習問題17》ポインタ型の仮引数宣言にconst
《練習問題18》ファイル出力の実験
《練習問題19》ファイルの内容表示
《練習問題20》ファイルの内容を英大文字変換して表示
《練習問題21》クイズゲーム
《練習問題22》クイズゲーム(画面出力への切替え)
《練習問題23》二次元配列にファイル入力して表示する
《練習問題24》動的メモリに入力して表示する
《練習問題25》関数化して複数表示する
《練習問題26》バトルの対戦相手名をファイル入力
《練習問題27》対戦相手のステータス情報のファイル出力
《練習問題28》バトル処理の追加
《練習問題29》自動バトルで勝率を求める
《練習問題30》勝率の調整
《練習問題31》プレイヤーを成長させる
《練習問題32》コマンドでバトルする
《練習問題33》バイナリファイルの作成
《練習問題34》バイナリファイルの入力
《練習問題35》バトルゲームの中断と再開
《練習問題36》マクロ関数(バトルゲームのAA表示)
《練習問題37》マクロ関数(メニュー表示と選択)
《練習問題38》バルーンメッセージ
《練習問題39》枠付きのステータス表示
《練習問題40》バトルゲームの完成
《練習問題41》モジュール分割の基本
《練習問題42》グローバル変数宣言とextern
《練習問題43》#include防御
《練習問題44》記憶クラスと通用範囲の実験
(WindowsAPI,マルチスレッド,リスト構造,ソート)
《練習問題49》フィールドの表示
《練習問題50》プレイヤー移動(Cランタイム版)
《練習問題51》プレイヤー移動(WindowsAPI版)
《練習問題52》弾の発射
《練習問題53》発射音を鳴らす
《練習問題54》音再生の別スレッド化
《練習問題55》複数のエネミーを登場させる
《練習問題56》衝突処理
《練習問題57》体力の見える化と効果音
《練習問題58》途切れないエネミー出現
《練習問題59》ランダムなエネミー出現
《練習問題60》得点の導入
《練習問題61》得点の記録と表示
《練習問題62》得点の降順に表示する(バブルソート)
《練習問題63》得点の降順に表示する(qsortを利用)
《練習問題64》ドット絵を使ったゲーム(printfをWriteConsoleに変える)
《練習問題65》ドット絵を使ったゲーム(ダブルバッファ方式)
《練習問題66》ドット絵を使ったゲーム(ダブルバッファ+まとめて出力方式)
《練習問題67》大きなフィールドを歩くキャラクタのゲーム