特講問題

■ルール

	1.コンパイルを通す
	2.ソリューション名は以下の通り
		PG_PRAC_***

		*** => 日付 
			例:
				2016/11/14の場合 => 16_11_14

■問題1

	プロジェクト名:01_001

	仕様:
		以下の内容を表示しなさい
		
		Hello World

■問題2

	プロジェクト名:02_001

	仕様:
		以下の文章をC言語に変換しなさい

		int型の変数statusを宣言する。

		statusに0~2の値の一つをランダムに代入する

		もし、statusが0なら「攻撃」と表示し、
		statusが1なら「守備」と表示、
		statusが2なら「速度」と表示する
		statusの値がそれ以外ならエラート表示する

■問題3

	プロジェクト名:03_001

	仕様:
		forとwhile両方で以下の表示を行いなさい

		10
		9
		8
		7
		6
		5
		4
		3
		2
		1
		0

■問題4

	プロジェクト名:04_001

	仕様:
		int型で[9][9]の配列を宣言し、
		その中に九九の値を代入しなさい。

		例:
			[0][0] => 1
			[0][1] => 2
			[4][5] => 30
			[8][8] => 81

■問題5

	プロジェクト名:05_001

	仕様:
		以下の変数をメンバに持つ構造体を宣言しなさい

		構造体名:
			Student

		メンバ:
			char型の配列(サイズ64) m_Name
			int型 m_Score

■問題6

	プロジェクト名:06_001

	仕様:
		以下の仕様を満たす関数を作成しなさい。

		関数名:
			IsEven

		戻り値の型:
			bool

		引数:
			int val

		内容:
			valの値が偶数ならtrue、奇数ならfalseを返す

■問題7

	プロジェクト名:07_001

	仕様:
		int型の変数val、int型のポインタpを宣言し、
		pにvalのアドレスを代入したうえで、
		pを使用してvalに100の値を代入しなさい。

■問題8

	プロジェクト名:08_001

	仕様:
		1.構造体を宣言しなさい
			構造体名:
				Character
			メンバ:
				int m_Hp
				int m_Attack
				int m_Deffence

		2.関数を実装しなさい
			関数名:
				CreateCharacter

			戻り値:
				Characterのポインタ

			引数:
				int hp

				int attack

				int deffence

			内容:
				Character構造体を動的に作成し、引数の値で初期化した上で
				そのデータを返す

		3.関数を実装しなさい
			関数名:
				PrintCharacter

			戻り値:
				なし

			引数:
				Characterのポインタ

			内容:
				引数で渡された構造体を使用し以下の表示を行いなさい

				HP => 引数構造体のm_Hpの値
				Attack => 引数構造体のm_Attackの値
				Deffence => 引数構造体のm_Deffenceの値

		4.以下の内容をmain関数内に実装しなさい
			4-1.
				CreateCharacter関数を使用しCharacterを動的に作成する

			4-2.
				4-1で作成したデータをPrintCharacterで表示する

			4-3.
				動的に確保したデータを解放する

■問題9

	プロジェクト名:09_001

	仕様:
		1.構造体の定義
			構造体名:
				AnimData

			メンバ変数:
				int m_AnimNo // アニメーションの番号
				int m_Frame  // 表示フレーム数

		2.定数の定義
			定数名:
				ANIM_FRAME_NUM

			値:
				5

		2.初期化
			AnimDataを変数宣言し、以下の値で初期化する
				m_AnimNo => 0
				m_Frame => ANIM_FRAME_NUM

		3.メイン処理
			3-1.
				100回繰り返すループを作成する
			3-2.
				ループの中でm_Frameを毎回-1する
			3-3.
				m_Frameの値が0以下になったら以下の処理を行う
				・m_FrameをANIM_FRAME_NUMにしてリセットし、
				 m_AnimNoに1加算する
				・m_AnimNoの値が10を超えたらm_AnimNoを0にする
				・「アニメーション切り替え」と表示する

■問題10

	プロジェクト名:10_001

	仕様:
		以下の関数を実装しなさい。

		・読み込み
			関数名:
				ReadFile

			戻り値:
				読み込みの結果
					true => 読み込み成功
					false => 読み込み失敗

			引数:
				char型の配列
					読み込みファイル名

				char型の配列
					読み込みデータ格納用配列

			内容:
				指定したファイル名を格納用配列に読み込む

		・書き込み
			関数名:
				WriteFile

			戻り値:
				書き込みの結果
					true => 書き込み成功
					false => 書き込み失敗

			引数:
				char型の配列
					書き込むファイルの名前

				char型の配列
					ファイルに書き込む文字列が可能された配列

			内容:
				指定した文字列をファイルに書き込む

		※どちらの関数のエラーも最低でオープンエラーを含める