到達目標
1.プログラミング環境の使用法を理解すること。
2.If文、for、while、do、switch文などの制御構文の使用方法を理解すること。
3.printf文、scanf文、ファイル入出力などの標準入出力の使用方法を理解すること。
4.配列の使用方法を理解すること。
5.関数の作成方法を理解すること。
6.基本的なポインタの利用方法を理解すること。
7.各種アルゴリズムの原理を理解し、実用的な計算に応用できること。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | プログラミング環境の使用法を理解し、詳細に説明できる。 | プログラミング環境の使用法を理解できる。 | プログラミング環境の使用法を理解できない。 |
評価項目2 | 制御構文の正しい使用方法を理解し、詳細に説明できる。 | 制御構文の使用方法を理解できる。 | 制御構文の使用方法を理解できない。 |
評価項目3 | 標準入出力の使用方法を正しく理解し、詳細に説明できる。 | 標準入出力の使用方法を理解できる。 | 標準入出力の使用方法を理解できない。 |
評価項目4 | 配列の使用方法が理解でき、詳細に説明できる。 | 配列の使用方法を理解できる。 | 配列の使用方法を理解できない。 |
評価項目5 | 自分で仕様を決定し、関数を作成できる。 | 与えられた仕様に基づいて関数を作成できる。 | 与えられた仕様に基いて関数を作成できない。 |
評価項目6 | 基本的なポインタの利用方法が理解でき、説明できる。 | 基本的なポインタの利用方法を理解できる。 | 基本的なポインタの利用方法が理解できない。 |
評価項目7 | 自分で課題を設定し,各種アルゴリズムを使ったプログラムを作成し,計算結果を評価できる. | 与えられた課題について,各種アルゴリズムを使ったプログラムを作成することができる. | 各種アルゴリズムを使ったプログラムを作成できない. |
学科の到達目標項目との関係
教育方法等
概要:
C言語でプログラミングを行うための基礎を学ぶ。繰り返しループ、条件分岐、配列、関数、ポインタ、ファイル入出力などを中心に演習を交えて学ぶ。また、ソートや文字列処理、連立方程式解法などの基礎的なアルゴリズムについて学習し、演習する。
授業の進め方・方法:
講義と実習
注意点:
授業のポイント
プログラミング言語は自分でプログラムを書き、デバッグ(修正)して動かす、という作業を繰り返さないと習得できない。できれば自宅のパソコンでも演習ができるように フリーソフトをインストールしたほうが 良い。
準備するもの
自宅にもPCを用意し,実習できるようにすることが望ましい.
履修前の予習
教科書は自分で問題を解く形で進められるものである.どんどん自分でプログラミングしてみること.
授業計画は,学生の理解度に応じて変更する場合がある.
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
プログラミングシステムの使用方法 C言語の基礎 |
プログラミングシステムの使用方法を理解する。 基本的なC言語プログラム(printf文,scanf文)を作成し理解する。
|
2週 |
変数(データ型、型変換) 制御文(1) |
データ型、型変換について理解する。 if、else、switch文の使用方法を理解する。
|
3週 |
制御文(2) |
ループ(while、do、for文)、インクリメント、デクリメントについて理解する。
|
4週 |
制御文(3) |
様々な制御構文の例題、演習に取り組む。
|
5週 |
小テスト1 |
第1~4週までの内容の理解度を確認する。
|
6週 |
1次元配列 |
1次元配列の使用方法について理解する。
|
7週 |
2次元配列 |
2次元配列の使用方法について理解する。
|
8週 |
ファイル入出力 |
ファイルの入出力方法について理解する。
|
2ndQ |
9週 |
中間試験 |
第1~8週目までの確認。
|
10週 |
答案返却と解説 関数(1) |
簡単な関数の作成、利用方法を学ぶ。
|
11週 |
関数(2) |
関数における配列渡しを理解する。
|
12週 |
小テスト2 |
第10・11週の内容を中心として、その理解度を確認する。
|
13週 |
ポインタ(1) |
ポインタの概念と基本的な利用方法を理解する。 ポインタを引数に持つ関数の作成方法について理解する。
|
14週 |
ポインタ(2) |
ポインタの利用例を学ぶ。
|
15週 |
前期末試験 |
第10~14週目までの確認。
|
16週 |
答案返却と解説 アンケート |
|
後期 |
3rdQ |
1週 |
前期の復習 |
|
2週 |
構造体(1) |
構造体の仕組みと使い方を学ぶ。
|
3週 |
構造体(2) |
様々な構造体の利用方法を学ぶ。
|
4週 |
小テスト(3) |
第1・2週の内容を中心として、その理解度を確認する。
|
5週 |
ソートアルゴリズム(1) |
バブルソートについて学び、演習する。
|
6週 |
ソートアルゴリズム(2) |
直接選択法について学び、演習する。
|
7週 |
ソートアルゴリズム(3) |
単純挿入法について学び、演習する。
|
8週 |
ソートアルゴリズム(4) |
辞書ソートについて学び、演習する。
|
4thQ |
9週 |
中間試験 |
第5~8週までの内容を中心として、その理解度を確認する。
|
10週 |
答案返却と解説 文字列処理(1) |
文字列処理の基礎について学び、演習する。
|
11週 |
文字列処理(2) |
文字列処理について演習する。
|
12週 |
小テスト(4) |
第10・11週の内容を中心として、その理解度を確認する。
|
13週 |
方程式の解 |
二分法とニュートン法により方程式を解く方法を学ぶ。
|
14週 |
数値積分 |
台形公式,シンプソンの公式を用いた数値積分の方法を学ぶ。
|
15週 |
期末試験 |
第13・14週の内容を中心として、その理解度を確認する。
|
16週 |
テストの解答と解説 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 3 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 3 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 3 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 2 | |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 2 | |
プログラミング言語は計算モデルによって分類されることを説明できる。 | 1 | |
主要な計算モデルを説明できる。 | 1 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 2 | |
評価割合
| 試験 | レポート | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 50 | 50 | 0 | 0 | 0 | 0 | 100 |
基礎的能力 | 30 | 30 | 0 | 0 | 0 | 0 | 60 |
専門的能力 | 20 | 20 | 0 | 0 | 0 | 0 | 40 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |