プログラミング基礎II

科目基礎情報

学校 沖縄工業高等専門学校 開講年度 2018
授業科目 プログラミング基礎II
科目番号 2204 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 情報通信システム工学科 対象学年 2
開設期 通年 週時間数 2
教科書/教材 教員自作のテキスト,パワーポイント・プレゼン資料. 「プログラミング言語C第2版」(共立出版株式会社) 「C実践プログラミング第3版」(オライリー)
担当教員 神里 志穂子

到達目標

プログラミングの構造を理解し、構造体、ポインタなどを利用したプログラムを作成できる。
【V-D-1】①プログラミング言語C の制御構造の概念を理解し、これらを含むプログラムを記述できる。
【V-D-1】②変数型と配列・ポインタ・構造体を理解し、これらを含むプログラムを記述できる。
【V-D-1】③スタック・メモリマップの概念を理解し、スタック・メモリマップの概念を理解し、与えられた課題に対して、ソフトウェア生成に必要なツール類を用いてソースプログラムを生成し実行できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安(可)
評価項目1プログラミング言語C の制御構造の概念を理解し、これらを含むプログラムを記述できる。 授業で学習した内容と関連付けながら、作成したプログラムの要点を説明できる。 講義資料や参考図書の内容に従い、プログラミング言語Cを用いて作成したプログラムの要点を説明できる。 講義資料や参考図書を参照しながら、プログラミング言語Cを用いて簡単なプログラムを作成できる。
変数型と配列・ポインタ・構造体を理解し、これらを含むプログラムを記述できる。 授業で学習した内容と関連付けながら、変数型と配列・ポインタ・構造体を用いたプログラムの要点を説明できる。 講義資料や参考図書の内容に従い、変数型と配列・ポインタ・構造体を用いたプログラムの要点を説明できる。 講義資料や参考図書を参照しながら、変数型と配列・ポインタ・構造体を用いたプログラムを作成できる。
スタック・メモリマップの概念を理解し、与えられた課題に対して、ソフトウェア生成ツールを用いて解決するソースプログラムを記述し実行できる。 授業で学習した内容と関連付けながら、スタック・メモリマップの概念を理解し、プログラミング言語Cを用いて作成したプログラムの要点を説明できる。 講義資料や参考図書の内容に従い、スタック・メモリマップの概念を理解し、プログラミング言語Cを用いて作成したプログラムの要点を説明できる。 講義資料や参考図書を参照しながら、スタック・メモリマップの概念を理解し、プログラミング言語Cを用いて簡単なプログラムを作成できる。

学科の到達目標項目との関係

教育方法等

概要:
講義の前半で、パワーポイントによる講義資料に基づいて文法規則や要点について説明を行う。
例題を通じて注意点について解説し、各自のPCでのプログラム作成・コンパイル・実行・デバッグ等の演習を通じ、基本的な構文の復習から組込み開発の応用例までを学ぶ。
授業の進め方・方法:
毎回講義形式と演習問題への取り組みの形式で進め、項目修了時には確認の為の課題を課し、
実行結果とソースコードを提出させることによりプログラミング能力を修得させる。
演習時間中に個別指導や対応を通じ、不明な点や理解できない点が残らないように指導する。
演習結果はサーバの指定フォルダに格納し、個別理解度の把握に利用する。
注意点:
毎回,各自のノートPCを持参すること。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 年間のガイダンス
シラバスの説明(授業の概要、進め方)。 シラバスの説明(授業の概要、進め方)。

2週 WSプログラム開発環境の確認
ソースファイル作成・コンパイル・実行環境の確認。
3週 プログラムの作成手順の理解
ソースファイル作成・コンパイル・実行手順の修得。
4週 プログラム開発環境の構築
各自のPCへの開発環境を実装する。
5週 プログラムの作成手順の理解
PC環境でのコンパイル・実行手順の修得。
6週 変数について復習する
変数について復習し、演習課題を通じ理解を深める。
7週 アドレスの理解
アドレスとアクセス法について学ぶ。
8週 中間試験
2ndQ
9週 スタックの理解
スタックについて学ぶ。
10週 メモリ・マップの理解
メモリ・マップについて学ぶ。
11週 ローカル変数の理解と演習
ローカル変数について復習し、演習課題を通じ理解を深める。
12週 ライブラリとリンクの理解
ライブラリとリンクについて学び、演習課題を通じ理解を深める。
13週 型に関する理解
型の役割とキャストについて学ぶ。
14週 型とポインタに関する理解
typedefによる型の宣言を学ぶ。
15週 配列とポインタに関する理解
ポインタと配列の関係について学ぶ。
16週 期末試験
後期
3rdQ
1週 文字列と配列に関する復習
文字列と配列について復習する。
2週 文字列とポインタに関する理解
文字列とポインタとの関係について学ぶ。
3週 文字列とポインタに関する演習
文字列とポインタについて演習課題を通じ理解を深める。
4週 配列とポインタに関する理解
配列とポインタとの関係について学ぶ。
5週 配列とポインタに関する演習
配列とポインタについて演習課題を通じ理解を深める。
6週 文字列定数に関する理解
文字列定数とNULLポインタについて学ぶ。
7週 メモリ領域破壊に関する理解
メモリ破壊について学ぶ。
8週 中間試験
4thQ
9週 mallocとfreeに関する理解
mallocとfreeについて学び、演習課題を通じ理解を深める。
10週 メモリ・リークに関する理解
メモリ・リークについて学ぶ。
11週 関数とポインタに関する理解
関数と戻り値、引数へのポインタについて学ぶ。
12週 構造体メンバとポインタに関する理解
構造体メンバとポインタについて学び、演習課題を通じ理解を深める。
13週 構造体引数に関する理解
構造体を引数について学ぶ。
14週 構造体とポインタに関する理解
構造体へのポインタ配列について学ぶ。

15週 構造体とポインタに関する演習
構造体へのポインタ配列について演習課題を通じ理解を深める。

16週 期末試験

評価割合

定期試験小テストレポートその他合計
総合評価割合700030100
基礎的理解40001050
応用力1500520
社会性00000
主体的・継続的学修意欲15001530