プログラミング言語Ⅰ

科目基礎情報

学校 都城工業高等専門学校 開講年度 平成28年度 (2016年度)
授業科目 プログラミング言語Ⅰ
科目番号 0029 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 電気情報工学科 対象学年 2
開設期 通年 週時間数 2
教科書/教材 田中成典 監修,"C言語教科書 「言語仕様」から「データ構造」「アルゴリズム」の実装まで", 工学社
担当教員 小森 雅和

到達目標

1) C言語の基本文法である変数宣言、条件分岐、繰り返しについて理解している
2) 簡単な配列処理ができる
3) 簡単な関数を作成し、呼び出して使うことができる
4) 構造体の基本概念を理解している

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1基本文法に関するプログラム課題のプログラム作成だけではなく、自らそれを発展させた課題を設定でき、そのプログラムを作成することができる。基本文法に関するプログラム課題に対してプログラムを作成することができる基本文法に関するプログラム課題のプログラムを完成させることができない
評価項目2多次元配列を使ったプログラムを作成することができる1次元配列を使ったプログラム課題に対してプログラムを作成することができる配列を使ったプログラム課題を完成させることができない
評価項目3値渡しだけではなくポインタ渡しを使った関数を作成し、それを利用することができる値渡しの関数を作成し、それを利用することができる関数を作成し、それを利用することができない
評価項目4構造体のメンバに対する直接参照、間接参照を自在に使うことができる構造体を使うことの利点について理解している構造体を使うことの利点について理解していない

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

学習・教育目標・サブ目標との対応 1-2 説明 閉じる
学習・教育目標・サブ目標との対応 2-2 説明 閉じる

教育方法等

概要:
本講義では、初めてプログラミング言語を学ぶ学生を主な対象とし、広く一般的に使われるC言語によるプログラミングの基礎について講義と演習を行う。講義では、C言語の文法を学びながらプログラミングの基本制御構造である逐次処理、条件分岐、繰り返しや関数、構造体について学ぶとともに、実際に使用する際の注意点などについて講義し、各自が自力で目的とするプログラム作成が可能となるような土台作りをすることを目的とする。
授業の進め方・方法:
本講義では、講義は教室で行い、演習は演習室で行うという形式をとる
注意点:
プログラミング言語は、宣言や文法といった覚えないといけないことがあるとともに、それらを使って目的の処理を実現するアルゴリズムを考えないといけないことから、授業計画を確認して予習をし、授業の後には復習をすること。また、プログラムは理解したから書けるというものではなく、自分で作りたいものを作るということを繰り返しながら上達するものであるから、授業以外でも各自でいろいろなプログラム作成してみること。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 授業計画・達成目標・成績の評価方法等の説明、データ表現1 授業計画・達成目標・成績の評価方法等の理解、2進数、8進数、16進数などの基数変換の理解
2週 データ表現2、 プログラムの構造とプログラミングの流れ1 データ表現、基本的なプログラム構造、コンパイラ言語とインタプリタ言語の概要理解
3週 プログラムの構造とプログラミングの流れ2、データ型と入出力1 定数と変数、グローバル変数とローカル変数、データ型の理解
4週 データ型と入出力2 入出力関数、変数への代入、プリプロセスの理解
5週 式と演算子1 算術演算、シフト演算、ビット演算の理解
6週 式と演算子2 インクリメント、デクリメント、キャスト、sizeofの理解
7週 条件分岐1 比較演算子、論理演算子、条件式の理解
8週 条件分岐2 if文、switch文の理解
2ndQ
9週 前期中間試験
10週 試験答案の返却及び解説、繰り返し処理1 試験問題の解説及びポートフォリオの記入、for文の理解
11週 繰り返し処理2 while文、do-while文、break文、continue文の理解
12週 繰り返し処理2 無限ループ、多重ループの理解
13週 関数の基本的な書き方 関数の基本構造、関数化によるメリット
14週 関数のデータのやり取り1 関数間のデータのやり取りの理解
15週 関数のデータのやり取り2 ローカル変数の理解
16週 前期末試験
後期
3rdQ
1週 試験答案の返却及び解説、ポインタとは1 試験問題の解説及びポートフォリオの記入、アドレスとポインタの理解
2週 ポインタとは2、ポインタと関数1 変数とポインタ変数、ポインタ変数とデータ型、ポインタを使ったデータのやり取り1の理解
3週 ポインタと関数1 ポインタを使ったデータのやり取り2の理解
4週 配列の仕組み 配列の宣言、1次元配列、2次元配列、メモリと配列の理解
5週 配列と繰り返し処理1 文字列の理解
6週 配列と繰り返し処理2 配列と繰り返しの理解
7週 ファイルと文字列1 文字列のファイルとの入出力の理解
8週 ファイルと文字列2 文字列のファイルとの入出力の理解
4thQ
9週 後期中間試験
10週 試験答案の返却及び解説、関数と配列1 試験問題の解説及びポートフォリオの記入、ポインタを使った関数とのデータのやり取りの理解
11週 関数と配列2 ポインタを使った関数とのデータのやり取りの理解
12週 構造体とは 構造体とは、構造体の宣言と構造体変数、メンバ変数の理解
13週 メンバ変数の参照1 構造体とポインタ、直接参照の理解
14週 メンバ変数の参照2 間接参照、構造体と関数の理解
15週 構造体配列、メモリ領域の動的確保 構造体の配列、malloc関数free関数、realloc関数、の理解
16週 学年末試験

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合80000020100
基礎的能力5000002070
専門的能力300000030
分野横断的能力0000000