到達目標
1.初歩的なコンピューターアーキテクチャーを理解する.
2.コンピューターのOSと対話ができる.
3.コンパイル等に必要なコンピューター環境を独力で構築できる.
4.ポインタを含む既存のC言語によるプログラムの内容を理解できる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | CPU, メモリー, ディスク間のやり取りが理解できる. | CPU, メモリー, ディスクを意識してコンピューターを操作できる. | CPU, メモリー, ディスクの区別がつかない |
評価項目2 | 対話している対象をはっきり理解している. | 対話先のモジュールが異なることを理解している. | コンピューター全体としてのみ理解できる. |
評価項目3 | 各環境設定の意味合いを理解できる. | 指示書に従った環境設定ができる. | コンパイルの意味が分からない. |
評価項目4 | ポインタと値を自由に使い分けることができる. | 配列等におけるポインタの処理が理解できる. | ポインタの意味が分からない. |
学科の到達目標項目との関係
教育方法等
概要:
初歩的なコンピューターアーキテクチャーを理解し,C言語でプログラミングが自由にできるようにすることを目的とする.なお,Scratch等の他の言語も経験し同時にプログラム作品を作成する.授業では,ポインタ等をより深く理解するためにC言語の演習問題を解く.
授業の進め方・方法:
学習においては,教科書約1000ページを読み理解する必要がある.単に読むだけではなく,自分でPC(Personal Computer)ソフトウェアの環境を整備し,教科書内容を入力し理解を進める必要がある.授業では,英語の問題集を中心に解説を行うが,あくまで自宅における大量の学習が前提である.高度なPC環境を必要とすることもあり(換言すると,仕方なくディスクを初期化することもありえるので)自分専用のノートブックPCを持つことが望ましい.ノートブックPCを自由に使いこなし,自宅で大量の学習と作品作りを行う必要があることを忘れてはならない.参考書は適宜指示する.
注意点:
参考書:
(1)C言語教科書入門編,日経BP社,川俣晶
(2)標準講座C,翔泳社,Stephen G. Kochan
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
オリエンテーション:学習に必要なノートブックPCに関する説明など,英語学習について |
学習方法を大まかに理解する.
|
2週 |
C言語とは;Scratch入門 |
Scratchを使える.
|
3週 |
コマンドライン操作 |
OS等のコマンドを打てる.
|
4週 |
ハローワールド;コンピューターの基礎 |
Hello World!を出力できる.
|
5週 |
Visual C の使い方 |
Visual CでHello Worldのプログラムをコンパイルできる.
|
6週 |
gcc(MinGW)の使い方 |
gccでHello Worldのプログラムをコンパイルできる.
|
7週 |
Operators: Basic Arithmatic operators |
OperatorとOperandとそれらのevaluation(評価)を理解できる.
|
8週 |
Assignment Operators |
AssignmentもOperatorであると理解できる.
|
2ndQ |
9週 |
Logic and Increment Operators |
LogicとIncrement Operatorを使える.
|
10週 |
Bitwise Operators |
Bitwise Operatorsを使える.
|
11週 |
Relational and Conditional Operators |
Relational and Conditional Operatorsを使える.
|
12週 |
Operator Precedence and Evaluation |
Operator Precedence and Evaluationを表を見て決めることができる.
|
13週 |
Basic Types: Characters, String, and Integer Types |
Type(型)を理解できる.
|
14週 |
Integer and floating point casts |
castを理解できる.
|
15週 |
More casts |
castの理解を深める.
|
16週 |
|
|
後期 |
3rdQ |
1週 |
Control Flow: if Statement |
ifを含む複雑な制御を理解できる.
|
2週 |
while and for statement |
whileを含む複雑な制御を理解できる.
|
3週 |
Statement nesting |
複雑な制御を理解できる.
|
4週 |
switch, break, and continue |
switchを含む複雑な制御を理解できる.
|
5週 |
Strage Class: Blocks |
スコープを理解できる.
|
6週 |
Functions |
関数の意味を理解できる.
|
7週 |
More functions |
関数における変数の受け渡しを理解できる.
|
8週 |
Files |
ファイルを理解できる.
|
4thQ |
9週 |
Pointers and Arrays: Simple Pointer and Array |
単純なポインタを理解できる.
|
10週 |
Array of Pointers |
ポインタと配列の関係を理解できる.
|
11週 |
Mulitidimensional Array |
多次元配列とポインタの関係を理解できる.
|
12週 |
Pointer to strings |
ストリングが配列であることを理解できる.
|
13週 |
Structures: Simple structure, nested structure |
配列との対比でストラクチャーが理解できる.
|
14週 |
Array of structures |
ストラクチャーの配列を理解できる.
|
15週 |
Array of pointers to structures |
ストラクチャーへのポインタを使える.
|
16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 情報を適切に収集・処理・発信するための基礎的な知識を活用できる。 | 3 | |
論理演算と進数変換の仕組みを用いて基本的な演算ができる。 | 2 | |
コンピュータのハードウェアに関する基礎的な知識を活用できる。 | 3 | |
数値計算の基礎が理解できる | 2 | |
コンピュータにおける初歩的な演算の仕組みを理解できる。 | 2 | |
データの型とデータ構造が理解できる | 2 | |
専門的能力 | 分野別の専門工学 | 電気・電子系分野 | 電気回路 | オームの法則を説明し、電流・電圧・抵抗の計算ができる。 | 1 | |
評価割合
| 試験 | 発表 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 70 | 0 | 0 | 0 | 0 | 30 | 100 |
基礎的能力 | 50 | 0 | 0 | 0 | 0 | 10 | 60 |
専門的能力 | 10 | 0 | 0 | 0 | 0 | 10 | 20 |
分野横断的能力 | 10 | 0 | 0 | 0 | 0 | 10 | 20 |