到達目標
1.C言語の基本要素(制御構造,ユーザ関数,変数,等)を適切に利用できる.
2.C言語のメモリ関連要素(配列,ポインタ,再帰,等)を適切に利用できる.
3.C言語の標準ライブラリ関数(入出力,数学,文字列,ファイル,等)を適切に利用できる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | 基本要素を効果的に利用できる. | 基本要素を概ね適切に利用できる. | 基本要素を適切に利用できない. |
評価項目2 | メモリ関連要素を効果的に利用できる. | メモリ関連要素を概ね適切に利用できる. | メモリ関連要素を適切に利用できない. |
評価項目3 | 標準ライブラリ関数を効果的に利用できる. | 標準ライブラリ関数を概ね適切に利用できる. | 標準ライブラリ関数を適切に利用できない. |
学科の到達目標項目との関係
学習・教育到達度目標 C
説明
閉じる
JABEE d-1
説明
閉じる
教育方法等
概要:
世の中の実用ソフトウェア (プログラム)の多くはC言語(やその派生種)で記述されている.
そこで本科目では,C言語に関する実習に取り組み,実用的なプログラムの作成能力の基礎を身に着けることを目標とする.
関連科目:UNIX基礎,プログラミング言語IIB
授業の進め方・方法:
授業方法:計算機実習
評価方法:試験の総合評価×70% + 実習課題の総合評価×30%
試験の総合評価:中間試験×50%+期末試験×50%,または再試験×100%
合否判定:最終評価≧60%を合格とする.
注意点:
・すべての課題に対し,完全なレポートを所定の期限までに提出すること.
欠席した場合にも登校した際に必ず取り組むこと.
・課題遂行のためには論理的な思考能力と文章の読解能力が必要である.
しかし,これらの能力は授業時間だけでは身に着かないため,普段から努力すること.
・「動くプログラム=正しいプログラム」とは限らない.充分に吟味せよ.
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
前期授業のガイダンス, 手続き型プログラミングの基礎実験 |
・前期授業の目的と方針を理解する. ・「アルゴロジック」で巡回手続きを考案・構成できる.
|
2週 |
C言語プログラミングの基礎実験 |
・C言語プログラミングの作業手順(編集・翻訳・実行)を理解・実践できる.
|
3週 |
エディタの操作 |
・エディタを効率的に操作できる.
|
4週 |
基本的なデータ処理 |
・数値変数・数式・書式付き入出力を適切に使用できる.
|
5週 |
制御構造1(選択) |
・選択(if,switch)を適切に使用できる.
|
6週 |
制御構造2(反復) |
・反復(while,do-while,for)を適切に使用できる.
|
7週 |
制御構造3(分岐) |
・分岐(break,continue,goto)を適切に使用できる.
|
8週 |
中間試験 |
・第7週までの学習成果を提示できる.
|
2ndQ |
9週 |
配列 |
・数値変数の配列を適切に使用できる.
|
10週 |
関数1(基本) |
・数値計算のライブラリ関数を適切に使用できる. ・ユーザ関数を適切に定義できる.
|
11週 |
関数2(再帰) |
・再帰的なユーザ関数を適切に定義できる.
|
12週 |
関数3(参照呼出) |
・値呼出/参照呼出を使い分け,ユーザ関数を適切に定義できる.
|
13週 |
ファイル処理 |
・ファイル処理のライブラリ関数を適切に使用できる.
|
14週 |
文字処理 |
・文字処理のライブラリ関数を適切に使用できる. ・文字処理のユーザ関数を定義できる.
|
15週 |
文字列処理 |
・文字列処理のライブラリ関数を適切に使用できる. ・文字列処理のユーザ関数を定義できる.
|
16週 |
期末試験 |
・第15週までの学習成果を提示できる.
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 機械系分野 | 情報処理 | プログラムを実行するための手順を理解し、操作できる。 | 4 | |
定数と変数を説明できる。 | 4 | |
整数型、実数型、文字型などのデータ型を説明できる。 | 4 | |
演算子の種類と優先順位を理解し、適用できる。 | 4 | |
算術演算および比較演算のプログラムを作成できる。 | 4 | |
データを入力し、結果を出力するプログラムを作成できる。 | 4 | |
条件判断プログラムを作成できる。 | 4 | |
繰り返し処理プログラムを作成できる。 | 4 | |
一次元配列を使ったプログラムを作成できる。 | 4 | |
情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 3 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 3 | |
変数の概念を説明できる。 | 3 | |
データ型の概念を説明できる。 | 3 | |
制御構造の概念を理解し、条件分岐を記述できる。 | 3 | |
制御構造の概念を理解し、反復処理を記述できる。 | 3 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 3 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 3 | |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 3 | |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 3 | |
プログラミング言語は計算モデルによって分類されることを説明できる。 | 3 | |
主要な計算モデルを説明できる。 | 3 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 3 | |
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。 | 3 | |
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。 | 3 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 70 | 0 | 0 | 0 | 30 | 0 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
専門的能力 | 70 | 0 | 0 | 0 | 30 | 0 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |