到達目標
1.自作関数、構造体、ポインタ、ファイル入出力、コマンドラインからの引数の取得を含むプログラムを記述できる
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安(可) | 未到達レベルの目安 |
評価項目1 | 自作関数、構造体、ポインタ、ファイル入出力、コマンドラインからの引数の取得を含むプログラムを入力エラー処理やコメントを含めて見た目も美しく正確に記述できる | 自作関数、構造体、ポインタ、ファイル入出力、コマンドラインからの引数の取得を含むプログラムを記述できる | 自作関数、構造体、ポインタ、ファイル入出力、コマンドラインからの引数の取得を含むプログラムを記述できない |
評価項目2 | | | |
評価項目3 | | | |
学科の到達目標項目との関係
教育方法等
概要:
コンピュータで何らかの問題を解かせようとする場合、計算手順(アルゴリズム)を考え、次にそれをプログラムとして記述する。すなわち、プログラムを作成するためには、問題を解くための計算手順(アルゴリズム)を考えることと、それをプログラム化するためにプログラミング言語(コンピュータに命令を与えるための言語)の文法に関する知識とが必要であるといえる。 本授業の目標は、プログラミングⅠに引き続いてプログラミング言語の文法を学習し、プログラミング技術を修得することである。ここでプログラミング言語として、システム記述などに適しており、広く使われているC言語を採用する。なお、ANSI(米国規格協会)の標準規格に準拠したプログラムの記述方法を学習する。 C言語のプログラムはメイン関数を含めて1つ以上の関数から構成されている。一つの関数においてある一まとまりの処理を行なうようにし、関数をそれが必要となった場所で呼び出すというモジュール化は大切である。ポインタは、変数などのメモリ上の格納場所(アドレス)を指し示すものである。構造体は、複数のデータを一つにまとめて意味のある一つの型として定義したものである。標準入力(キーボード)と標準出力(ディスプレイ)を介した入出力以外のものとしてファイル入出力がある。これにより、ファイルにデータを保存したり、ファイルからデータを読み出すことが可能となる。
授業の進め方・方法:
教室における授業と演習室での演習を実施する。年間で30数問のプログラミング課題を出す予定であり、本授業および連続して開講する「情報工学演習Ⅱ」において各自、課題に取り組む。作成したプログラムは提出する。
注意点:
プログラミングⅠの内容の習得を前提とするが、一部、復習の内容を含む。
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
ガイダンス・関数 |
関数の意義を理解できる。関数プロトタイプ宣言ができる。関数の呼び出し方として、値による呼び出し(call by value)を理解する。
|
2週 |
関数 |
自作の関数を含むプログラムが作成できる
|
3週 |
関数 |
自作の関数を含むプログラムが作成できる
|
4週 |
関数 |
自作の関数を含むプログラムが作成できる
|
5週 |
関数 |
自作の関数を含むプログラムが作成できる
|
6週 |
関数 |
自作の関数を含むプログラムが作成できる
|
7週 |
前期中間試験 |
|
8週 |
構造体 |
構造体の意義を理解する。構造体を宣言できる 構造体のメンバの直接参照ができる
|
2ndQ |
9週 |
構造体 |
構造体を含むプログラムを作成できる
|
10週 |
構造体 |
構造体を含むプログラムを作成できる
|
11週 |
構造体 |
構造体を含むプログラムを作成できる
|
12週 |
構造体 |
構造体を含むプログラムを作成できる
|
13週 |
構造体 |
構造体を含むプログラムを作成できる
|
14週 |
構造体 |
構造体を含むプログラムを作成できる
|
15週 |
前期末試験 |
|
16週 |
テスト返却と解説 |
|
後期 |
3rdQ |
1週 |
ポインタ |
ポインタの概念を理解する。ポインタ変数とは何かを理解する。ポインタを適用したプログラムを作成できる。
|
2週 |
ポインタ |
関数とポインタについて理解し、関数の呼び出し方として、参照による呼び出し(call by referennce)を理解すること。ポインタを適用したプログラムを作成できる。
|
3週 |
ポインタ |
ポインタと配列の関係について理解する。ポインタを適用したプログラムを作成できる。
|
4週 |
ポインタ |
ポインタを適用したプログラムを作成できる
|
5週 |
ポインタ |
ポインタを適用したプログラムを作成できる
|
6週 |
ポインタ |
ポインタを適用したプログラムを作成できる
|
7週 |
後期中間試験 |
|
8週 |
ファイル入出力 |
ファイルの概念を理解する。ファイルのオープンとクローズができる。ファイル入出力に関する各種標準関数が使える。ファイル入出力を伴うプログラムを作成できる。
|
4thQ |
9週 |
ファイル入出力 |
ファイル入出力を伴うプログラムを作成できる
|
10週 |
ファイル入出力 |
ファイル入出力を伴うプログラムを作成できる
|
11週 |
ファイル入出力 |
ファイル入出力を伴うプログラムを作成
|
12週 |
ファイル入出力 |
ファイル入出力を伴うプログラムを作成
|
13週 |
コマンドライン |
コマンドラインからの引数の取得ができる。コマンドラインから引数を取得するプログラムを作成できる。
|
14週 |
コマンドライン |
コマンドラインから引数を取得するプログラムを作成できる
|
15週 |
学年末試験 |
|
16週 |
テスト返却と解説 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 変数とデータ型の概念を説明できる。 | 3 | |
代入や演算子の概念を理解し、式を記述できる。 | 3 | |
制御構造の概念を理解し、条件分岐や反復処理を記述できる。 | 3 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 3 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 3 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 80 | 0 | 0 | 0 | 20 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 80 | 0 | 0 | 0 | 20 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |