
| 授業科目名(和文) [Course] | ソフトウェア演習Ⅰ | 
| 授業科目名(英文) [Course] | Programming Exercise I | 
| 学部(研究科) [Faculty] | 情報工学部 | 
| 学科(専攻) [Department] | 情報システム工学科 | 
| 担当教員(○:代表教員) [Principle Instructor(○) and Instructors] | ○天嵜 聡介  自室番号(2515)、電子メール(amasaki**cse.oka-pu.ac.jp) 但馬 康宏 自室番号(2604)、電子メール(tajima**cse.oka-pu.ac.jp) 目木 信太郎 自室番号(2614)、電子メール(meki**cse.oka-pu.ac.jp) 横川 智教 自室番号(2504)、電子メール(t-yokoga**cse.oka-pu.ac.jp) ※利用の際は,** を @に置き換えてください | 
| 単位数 [Point(Credit)] | 2単位 | 
| 対象学生 [Eligible students] | 1年次生 | 
| 授業概略と目標 [Course description and Objects] | プログラムの作成能力を身につけるには、文法知識に基づいて具体的なプログラムを作成すること、及び、そのプログラムを計算機上で実際に動作させることが重要である。この演習では、主にC言語を用いてプログラム作成の基礎から応用まで学習する。まず、条件分岐や繰り返しなど初歩的な構文を利用したプログラム作成に取り組む。さらに適切な機能分割の方法や、データ構造を意識したプログラムの作成法についても実践していく。 | 
| 到達目標 [Learning Goal] | 1. ソースプログラムの作成からプログラムの実行までの手順に習熟する 2. 制御構文を理解し簡単なアルゴリズムを実装できる 3. 適切に機能分割を行い、応用的なプログラムを作成できる 4. データ構造の作成及び利用の方法について理解する | 
| 履修上の注意 [Notes] | 「プログラミング言語」を履修していることが望ましい。 | 
| 授業計画とスケジュール [Course schedule] | 1. プログラムの作成と実行 2. 条件分岐 3. 繰り返し 4. 関数 5. 配列 6. ポインタ 7. 文字列 8. 入出力処理 9. ポインタの応用 10. プログラムの分割 11. データ構造の作成/利用(1) 12. データ構造の作成/利用(2) 13. データ構造の作成/利用(3) 14. データ構造の作成/利用(4) 15. 大きなプログラムの作成 | 
| 成績評価方法と基準 [Grading policy (Evaluation)] | 中間課題(30%)、全体課題(30%)、及び、ほぼ毎回行う小テストとレポート課題(40%)で評価する。全ての課題では作成されたプログラムの正確さに加え、その理解しやすさ、及びレポートにおける説明の善し悪しも評価基準に含む。 | 
| 教科書 [Textbook] | 教科書:新C言語入門 シニア編(林晴比古著、ソフトバンククリエイティブ) 参考書:Code Complete第2版〈上〉完全なプログラミングを目指して(S. マコネル著、日経BPソフトプレス) Code Complete第2版〈下〉完全なプログラミングを目指して(S. マコネル著、日経BPソフトプレス) | 
| 自主学習ガイド及び キーワード [Self learning] | C言語の文法及びその使用例については教科書を参照すること。より一般的なプログラミングの話題(変数名の命名法など)については、参考書の該当箇所を参照すること。 | 
| 開講年度 [Year of the course] | 24 | 
| 備考 | 時間内に課題を完了できない場合は、時間を延長して取り組ませる場合がある。またスケジュールについては習熟度合に応じて柔軟に対応する。 |