文理学部シラバスTOP > 文理学部 > 情報科学科 > 情報科学実習4
日本大学ロゴ

情報科学実習4

このページを印刷する

令和2年度以降入学者 情報科学実習4
令和元年度以前入学者 情報科学実習4
教員名 尾崎知伸
単位数    1 学年    2 開講区分 文理学部
科目群 情報科学科
学期 後期 履修区分 選択必修
授業の形態 対面授業
Blackboard ID:火曜3限→20224394
授業概要 C言語のポインタとデータ構造入門
授業のねらい・到達目標 効率の良いプログラムを作るには,問題に適したデータ構造を用いることが不可欠である.また,C言語を用いた実装では,代表的なデータ構造はポインタを使って実現されることもある.本講義では,C言語でポインタを使いこなせるようになることを目指す.C言語の復習を行ったのち,C言語でポインタを学び,連結リスト・二分探索木などの基本的なデータ構造をポインタを用いて実現し,それらの活用法を学ぶ.本講義を通して高度なデータ構造をC言語で運用できるようになる。

この科目は文理学部(学士(理学))のディプロマポリシーDP6及びカリキュラムポリシーCP9に対応している。

なお,新カリキュラム(令和2年度以降入学者対象)では,この科目は文理学部(学士(理学))のディプロマポリシー DP3-5及びカリキュラムポリシー CP3-5 に対応している。

・既存の知識にとらわれることなく,物事を論理的・批判的に説明することができる。(A-3-2)
・日常生活における現象に潜む科学的問題を発見し,専門的知識に基づいて説明することができる。(A-4-2)
・新しい問題に取り組む意識を持ち,そのために必要な情報科学の知識・情報を収集することができる。(A-5-2)
授業の方法 授業の形式:【実習】
実習(プログラム作成)を中心に進める.

対面授業に参加できない場合、以下の要件を満たす学生はZoomでの参加を認める。
(1)Zoom での参加を認める要件: 学部の方針に従う
(2)対面授業に参加できない場合: Zoomで参加し、Blackboard に配信する課題を提出する。
履修条件 「実践プログラミング1」の内容を理解していることが望ましい.
また並行して,「実践プログラミング2」を履修することが望ましい.
授業計画
1 ガイダンス(授業のテーマや到達目標及び授業の方法について説明する)
実践プログラミング1の復習(配列・ポインタ)に関する実習(A-3-2, A-4-2)
【事後学習】配列・ポインタに関する実習内容を復習し,その内容を説明できるようになる (1時間)
2 実践プログラミング1の復習(構造体)に関する実習(A-3-2, A-4-2)
【事後学習】構造体に関する実習内容を復習し,その内容を説明できるようになる (1時間)
3 動的メモリ割り当てに関する実習
【事後学習】動的メモリ割り当てに関する実習内容を復習し,その内容を説明できるようになる (1時間)
4 ポインタ・構造体・動的メモリ割り当てに関する総合実習(A-3-2, A-4-2)
【事後学習】ポインタ・構造体・動的メモリ割り当てに関する総合実習の内容を復習し,その内容を説明できるようになる (1時間)
5 ポインタ・構造体・動的メモリ割り当てに関する復習・解説を行い,理解を深める(A-3-2, A-4-2, A-5-2)
【事後学習】ポインタ・構造体・動的メモリ割り当てに関する復習内容をまとめ,その内容を説明できるようになる (1時間)
6 関数の再帰呼び出しに関する実習(A-3-2, A-4-2)
【事後学習】関数の再帰呼び出しに関する実習内容を復習し,その内容を説明できるようになる (1時間)
7 リスト構造に関する実習(A-3-2, A-4-2)
【事後学習】リスト構造に関する実習内容を復習し,その内容を説明できるようになる (1時間)
8 双方向リスト・循環リストに関する実習(A-3-2, A-4-2)
【事後学習】双方向リスト・循環リストに関する実習内容を復習し,その内容を説明できるようになる (1時間)
9 リスト構造に関する総合実習(A-3-2, A-4-2, A-5-2)
【事後学習】リスト構造に関する総合実習の内容を復習し,その内容を説明できるようになる (1時間)
10 リスト構造に関する復習・解説を行い,理解を深める(A-3-2, A-4-2, A-5-2)
【事後学習】リスト構造に関する復習内容をまとめ,その内容を説明できるようになる (1時間)
11 木構造に関する実習(A-3-2, A-4-2)
【事後学習】木構造に関する実習内容を復習し,その内容を説明できるようになる (1時間)
12 二分探索木:生成・挿入に関する実習(A-3-2, A-4-2)
【事後学習】二分探索木の生成・挿入に関する実習内容を復習し,その内容を説明できるようになる (1時間)
13 二分探索木:ノード巡回・削除に関する実習(A-3-2, A-4-2)
【事後学習】二分探索木のノード巡回・削除に関する実習内容を復習し,その内容を説明できるようになる (1時間)
14 木構造に関する総合実習(A-3-2, A-4-2)
【事後学習】木構造に関する総合実習の内容を復習し,その内容を説明できるようになる (1時間)
15 これまでの復習・解説を行い,理解を深める(A-3-2, A-4-2, A-5-2)
【事後学習】木構造に関する復習内容をまとめ,その内容を説明できるようになる (1時間)
その他
教科書 使用しない
参考書 内田智史監修・システム計画研究所編 『C言語によるプログラミング基礎編』 オーム社 2020年 第3版
柴田望洋 『新・明解C言語で学ぶアルゴリズムとデータ構造』 SBクリエイティブ 2021年 第2版
成績評価の方法及び基準 授業参画度:毎回の実習・演習の成果(100%)
Zoom参加の場合でも,対面参加と同じ基準で評価を行う.
オフィスアワー 随時を受け付ける.原則,事前にSlackやメール等でアポイントをとること.
備考 ・毎回,前回講義内容を復習しておくこと.また,積極的に課題に取り組むこと.
・理解が十分でないと思われる内容に関しては,早めに担当教員に質問・相談をすること.
・この科目の内容は「実践プログラミング2」と深く連携しているため,「実践プログラミング2」の内容も復習しておくこと.
・「実践プログラミング2」との連携を考慮し,授業進度やスケジュールの調整を行うことがある.

このページのトップ