科目コード | HI303 | ||||
科目名 | プログラミング言語(Programming Language) | 単位数 | 2単位 | ||
対象学科 | 人間情報システム工学科 | 対象学年 | 3 | 開講期間 | 通年 |
科目区分 | 専門基礎科目 | 必修・選択 | 必修 | 履修/学修 | 履修 |
授業形式 | 講義 | 規定授業時数(単位時間) | 60 |   | |
教員名(所属) | 大隈 千春(人間情報システム工学科) | 教員室 | 3号棟2階 | ||
使用教科書 | 林晴比古,新訂 新C言語入門 シニア編,ソフトバンククリエイティブ社 | ||||
参考書 | B.W.カーニハン,D.M.リッチ著,石田訳,『プログラミング言語C』,共立出版 | ||||
科目の位置付けと 関連科目 | 2年次の「情報処理」に引き続きC言語によるプログラミング方法を学ぶ.高学年のソフトウェア系の科目(「データ構造」「アルゴリズム論」「データベース」等)に関連し,基本・応用情報技術者資格試験などにも関連する. | ||||
科目の概要 | 構造的なデータ(配列)や動的な変数(構造体とポインター)の取り扱い方,関数の組み方と使い方,再帰などのプログラミング手法を学習するとともに,探索や整列など基本的なアルゴリズムを学び,又,実技演習を通して自力でプログラムが作成できるようになる.さらに,構造的プログラミング技法の習得にも心がけ,よりよいプログラムが書けるようになる. | ||||
授業方針 | 1. 関数の作成およびその引数の取り扱い方,配列型(文字列配列型),構造体型,ポインターと自己参照構造体の定義・宣言・使い方について理解しそれぞれを用いたプログラムを作成できる.2. 配列・連結リストに対する探索,挿入,削除,並べ替えについての考え方を理解しプログラミングができる.3. プログラミングスタイルをマスターできる.自力でより実用性のあるプログラムを組める. |
授業項目 | 時数 | 達成目標(習得すべき内容) |
ガイダンス | 本授業の概要,授業方針,評価方法等について紹介する. | |
プログラミングについて | プログラミング基本方法,構造化プログラミングを用いた問題を解くために注意すべき点を説明できる. | |
関数と関数引数, 配列とポインターを関数パラメターとして利用 | 関数の作り方(定義)と利用(呼び出し),関数の値引数と戻り値,関数のポインター引数と配列引数を利用して計算結果を関数の外側に伝える方法が応用できる.探索と整列関数の作り方とプログラムの実行時間を測る方法を学ぶ. | |
文字・文字列処理関数 | 文字と文字列処理関数の作り方,文字列配列(2次元文字配列)の定義と宣言,入出力関数(文字列配列引数),文字列配列における探索と整列についてプログラミングできる.文字と文字列処理標準関数の利用できる. | |
ファイルと入出力インターフェース | ファイルの使い方を応用できる.インタラクティブなユーザーインターフェイスを作るためのライブラリ(API)を用いたプログラミングができる. | |
構造体と入れ子構造体 | 構造体の考え方,構造体の宣言と構造体型の変数のいろいろな宣言方法,構造体の初期化と入出力とメンバの参照について理解できる.構造体を関数引数としての受け渡し,入れ子の構造体の応用ができる. | |
自己参照構造体を用いた静的チェーンと動的チェーン | 自己参照構造体の意味を理解できる.自己参照構造体を用いて静的チェーンについて理解できる.また,チェーンを作成するにおける動的なメモリを割り当て,動的チェーンを組み立て,動的チェーンを操作する関数をプログラミングができる. | |
再帰と再帰関数 | 再帰の意味と仕組みを理解できる.再帰関数を用いたプログラミングができる. |
ルーブリック | |||
評価項目 | 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
(プログラミングの基本) | 構造化プログラミングにおける注意すべき点を説明でき,配慮したプログラムを作成できる. 関数や関数の引数を利用して計算結果を関数の外側に伝えることが効率的にできる. | 構造化プログラミングにおける注意すべき点を説明できる. 関数や関数の引数を利用して計算結果を関数の外側に伝えるプログラムを作成できる. | 構造化プログラミングにおける注意すべき点を理解できない. 関数や関数の引数を利用したプログラムを作成できない. |
(文字・文字列・ファイル処理) | 文字・文字列・ファイルについて説明でき,文字と文字列処理標準関数を利用したプログラミングが的確にできる. ユーザーインターフェースにも配慮して使いやすいプログラムを作成できる. | 文字・文字列・ファイルについて説明でき,文字と文字列処理標準関数を利用したプログラミングができる. ユーザーインターフェースに配慮したプログラムを作成できる. | 文字・文字列・ファイルについて説明でき,文字と文字列処理標準関数を利用したプログラミングができない. ユーザーインターフェースに配慮することができない. |
(構造体・チェーン) | 構造体の宣言や構造体型の変数の種々の宣言方法,構造体の初期化と入出力とメンバの参照について理解できる. 自己参照構造体の意味を理解できる.静的チェーンや動的チェーンを生成操作した応用プログラムを作成できる. | 構造体の宣言や構造体型の変数の基本的な宣言方法,構造体の初期化と入出力とメンバの参照について理解できる. 自己参照構造体の意味を理解できる.静的チェーンや動的チェーンを生成操作することができる. | 構造体の宣言や構造体型の変数の基本的な宣言方法,構造体の初期化と入出力とメンバの参照について理解できない. 自己参照構造体の意味を理解できない. |
(再帰) | 再帰の意味と仕組みを理解でき,再帰関数を用いたプログラミングができ,再帰関数を効果的に用いることができる. | 再帰の意味と仕組みを理解でき,再帰関数を用いたプログラミングができる. | 再帰の意味と仕組みを理解できない. |
評価方法及び 総合評価 | 定期試験の筆記試験(70%)と実技試験(20%),小テスト(10%)により評価し,総合で60点以上を合格とする. |
学習方法 | 本科目は, 2年生での「情報処理」に続く科目であり,4,5年でのソフトウェア関係科目の基礎となっている.3年生では,この科目の演習としてプログラミング演習とソフトウェア実験がある.この科目の講義内容について十分に復習して受講することが望まれる. |
学生への メッセージ | 授業内容,実技課題の制作に関して質疑がある場合は,随時質問を受け付ける. |
学修単位への対応 |
本校教育目標との対応 |