[村川猛彦]


情報処理II

試験は終了しました.試験の問題と解答・解説を公開しています.
諸注意,例題プログラム,講義メモなどを置くようにします.
予習・復習に活用してください.

諸注意
  • 教科書・参考書について
    • 教科書として指定した『C言語クイック入門&リファレンス』は,授業中,毎回参照しますので,早めに購入しておいてください.
    • 参考書のうち『Cプログラミング入門以前』は,この科目では自習用に使用してもらいます.また小テストで,この本の内容から出題することがあります.授業への持参は,必要ありません.
  • 授業スライドとノートについて
    • 毎回,「サンプルプログラム」の資料を配布します.自由に書き込んで,プログラム読解に役立ててください.
    • 教科書に書かれていないけれど重要なことを,スライド(PowerPoint)を使って説明します.このページでは,PDF化したものを各回で閲覧できるようにしています.
    • 「教科書」「配付資料」「スライドを印刷したもの」は,試験で参照できません.試験では,自筆ノート1冊のみ参照可とする予定です.復習の際,ノートに整理することを期待します.
  • 小テストについて
    • 授業開始時と終了時に,小テストを実施します.アンケートのこともあります.
    • 問題と解答を1月26日実施分まで公開しています.復習に活用してください.
  • 授業中の電子機器類の使用について
    • この授業では,ノートPC,タブレット端末,スマートフォンなど,電子機器類の使用を認めています.授業Webページや他のWebコンテンツを参照しても,自分で例題プログラムを動かすのも,かまいません.
    • 通話は禁止です.充電を含む電源使用を認めません(自宅で充電しておきましょう).電子機器類は試験で使用できません.
第1回:2014年10月20日(月)  はじめに
  • キーワード: Cプログラミングの基本
  • (教科書番号: 001 002, 010, 009, 132, 133, 134, 013, 014, 015)
  • スライド (PDF, 16枚, 授業後に修正)
  • サンプルプログラム
    • matrix22.c (TXTHTML): 2行2列の行列の積
第2回:2014年10月27日(月)  データ型
  • キーワード: 変数, 識別子, 整数型, 実数型, 代入
  • 教科書番号: 001, 013, 014, 015, 005, 006, 007, 038
  • スライド (PDF, 12枚)
  • サンプルプログラム
    • constant.c (TXTHTML): 様々な型と定数
    • xyyx.c (TXTHTML): 2つの変数の値を交換する
  • 小テストを,第1回の授業の内容,および『入門以前』pp.18-40より出題しました.
第3回:2014年11月10日(月)  制御文
  • キーワード: 制御文, for, while, if, switch
  • 教科書番号: 059, 060, 065, 063, 064, 062, 061, 066, 067
  • スライド (PDF, 19枚)
  • サンプルプログラム
    • kuku.c (TXTHTML): 九九の表
    • ordinal.c (TXTHTML): 序数
    • ordinal_if.c (TXTHTML): 序数(if~else if使用)
    • ordinal_switch.c (TXTHTML): 序数(switchの入れ子使用)
  • 小テストを,第2回の授業の内容,および『入門以前』pp.41-58より出題しました.
第4回:2014年11月17日(月)  演算子
  • キーワード: 演算子,式評価
  • 教科書番号: 043, 044, 045, 046, 047, 048, 049, 050, 051, 052, 057, 054, 027, 026, 058
  • スライド (PDF, 11枚)
  • サンプルプログラム
    • charall.c (TXTHTML): char型のすべての値のビットパターン
    • from0to1.c (TXTHTML): 0, 0.1, ..., 1
  • 小テストを,第3回の授業の内容,および『入門以前』pp.62-79より出題しました.
第5回:2014年11月26日(水)  配列
第6回:2014年12月1日(月)  文字列
  • 教科書番号: 024, 008, 009, 010, 040, 152, L20
  • スライド (PDF, 10枚)
  • サンプルプログラム
    • caesar.c (TXTHTML): シーザー暗号
    • NameChanger.c (TXTHTML): CamelCaseに
    • name_changer.c (TXTHTML): snake_caseに
  • 小テストを,第5回の授業の内容,および『入門以前』pp.106-125より出題しました.
第7回:2014年12月8日(月)  ポインタ
  • キーワード: ポインタ,配列とポインタ,コマンドライン引数
  • 教科書番号: 069, 070, 053, 071, 072, 073, 075, 096
  • スライド (PDF, 16枚)
  • サンプルプログラム
    • address.c (TXTHTML): さまざまなポインタの値を知る
    • 0eq1.c (TXTHTML): 0と1の字数が等しいか
  • 小テストを,第6回の授業の内容,および『入門以前』pp.128-143より出題しました.
第8回:2014年12月15日(月)  A601にて演習
第9回:2014年12月22日(月)  関数(1)
  • キーワード: 関数,変数の有効範囲
  • 教科書番号: 078, 080, 081, 082, 084, 026, 092, 093, 094, 028, 029, 030, 031, 033, 036
  • スライド (PDF, 30枚)
  • サンプルプログラム
    • swapint.c (TXTHTML): 2つのint型の値を交換
    • polynomial.c (TXTHTML): 多項式の計算(関数使用)
    • polynomial_mainonly.c (TXTHTML): 多項式の計算(関数使用せず)
  • 小テストを,第7回の授業の内容,および『入門以前』pp.146-169より出題しました.
第10回:2014年12月25日(木)  関数(2)
  • キーワード: 関数プロトタイプ,再帰,ライブラリ関数
  • 教科書番号: 087, 088, 090, 091, 115, 151, 152, 020, L03, L19, L20
  • スライド (PDF, 21枚)
  • サンプルプログラム
    • gcd.c (TXTHTML): 再帰で最大公約数の計算
    • count.c (TXTHTML): 再帰でカウントダウン・カウントアップ
    • charstat.c (TXTHTML): コマンドライン引数の字数調査(修正済)
  • 小テストを,第9回の授業の内容,および『入門以前』pp.170-191より出題します.
レポート課題
第11回:2015年1月8日(木)  様々なデータ型
  • キーワード: 型定義,typedef,enum,構造体
  • 教科書番号: 021, 018, 097, 098, 099, 100, 055, 101, 103, 104
  • スライド (PDF, 15枚)
  • サンプルプログラム
    • matrixstruct.c (TXTHTML): 行列の積(構造体使用)
  • 小テストを,第10回の授業の内容,および『入門以前』pp.194-217より出題しました.
第12回:2015年1月19日(月)  前処理
  • キーワード: 前処理,#define,標準入出力
  • 教科書番号: 114, 115, 116, 117, 118, 119, 121, 122, 123, 128, 129, 130, 131, L18
  • スライド (PDF, 15枚)
  • サンプルプログラム
    • pascal.c (TXTHTML): パスカルの三角形
    • linenumber.c (TXTHTML): 行番号をつけて出力
  • 小テストを,第11回の授業の内容,および『入門以前』pp.222-241より出題しました.
第13回:2014年1月26日(月)  入出力
  • キーワード: ファイル処理,記憶域管理
  • 教科書番号: 140, 141, 143, 144, L18, 153. L19
  • スライド (PDF, 19枚)
  • サンプルプログラム
    • linenumber2.c (TXTHTML): ファイルから読み出し,行番号をつけて出力
    • linenumber3.c (TXTHTML): ファイル・標準入力から読み出し,行番号をつけて出力
    • matrixfile.c (TXTHTML): 行列の積(ポインタを含む構造体使用,ファイル入出力)
  • 小テストを,第12回の授業の内容,および『入門以前』pp.272-302(前回の続きではないので注意してください)より出題しました.
第14回:2015年1月28日(水)  演習(2)
  • スライド (PDF, 12枚.1月30日改訂)
  • サンプルプログラム
    • name_changer.c (TXTHTML論述): CamelCaseからsnake_caseへの変換
  • A601演習室で実施します.あらかじめLinuxでログインし,ターミナル,テキストエディタ,ブラウザを起動しておいてください.
  • 小テストは実施しません.授業中に答案を作成してもらいますので,筆記用具を持参してください.
第15回:2015年1月30日(金)  演習(3)
  • おさらい問題
  • スライド (PDF, 14枚, 2月2日改訂)
  • 小テストを,第14回までの授業の内容より出題しました(『入門以前』からの新たな出題はありません).
試験:2015年2月9日(月)
リンク