1. 1年次のプログラミング(変数、条件分岐、繰り返し、配列、関数)が理解できる。
2. ポインタが理解できる。
3. ポインタと配列・文字列が理解できる。
4. 記憶の割り付けが理解できる。
概要:
前期では、課題の解決を通して1年次の復習を行う。
後期では、「ポインタ」「ポインタと配列・文字列」「記憶の割り付け」について学習する。
授業の進め方・方法:
講義と演習を通じてプログラミングに慣れることを目標とする。
注意点:
3年次の講義や実習につながる内容なので、この機会に身に付けてください。
特にポインタはつまづきやすい内容なので、わからないことがあれば気軽に質問してください。
|
|
週 |
授業内容 |
週ごとの到達目標 |
| 前期 |
| 1stQ |
| 1週 |
ガイダンス、1年次の復習(1) |
本講義の進め方を理解し、C言語における変数,代入,データ型,演算子について復習する
|
| 2週 |
1年次の復習(2) |
ifやswitchによる条件分岐処理について復習する
|
| 3週 |
1年次の復習(3) |
forによる繰り返し処理について復習する
|
| 4週 |
1年次の復習(4) |
whileによる繰り返し処理について復習する
|
| 5週 |
1年次の復習(5) |
配列について復習する
|
| 6週 |
1年次の復習(6) |
ライブラリ関数について復習する
|
| 7週 |
前期中間試験前までのまとめ |
前期中間試験以前の単元について演習を通して理解する
|
| 8週 |
中間試験 |
|
| 2ndQ |
| 9週 |
1年次の復習(7) |
#defineによる記号定数、探索アルゴリズムについて理解する
|
| 10週 |
1年次の復習(8) |
探索アルゴリズムについて理解する
|
| 11週 |
1年次の復習(9) |
ソートアルゴリズムについて理解する
|
| 12週 |
1年次の復習(10) |
ソートアルゴリズムについて理解する
|
| 13週 |
1年次の復習(11) |
C言語における関数について復習する
|
| 14週 |
1年次の復習(12) |
局所変数、大域変数について復習する
|
| 15週 |
前期中間試験後のまとめ |
前期中間試験以降の単元について演習を通して理解する
|
| 16週 |
期末試験 |
|
| 後期 |
| 3rdQ |
| 1週 |
ポインタ(1) |
ポインタの概念を理解する
|
| 2週 |
ポインタ(2) |
ポインタと配列との関係を理解する
|
| 3週 |
ポインタ(3) |
値渡しと参照渡しおよびコマンドライン引数を理解する
|
| 4週 |
ポインタと配列・文字列(1) |
多次元配列とポインタとの関係を理解する
|
| 5週 |
ポインタと配列・文字列(2) |
ポインタへのポインタを理解する
|
| 6週 |
ポインタと配列・文字列(3) |
文字列の処理を理解する
|
| 7週 |
後期中間試験前のまとめ |
後期中間試験以前の単元について演習を通して理解する
|
| 8週 |
後期中間試験 |
|
| 4thQ |
| 9週 |
ポインタと配列・文字列(4) |
文字列の処理を理解する
|
| 10週 |
標準ライブラリ関数 |
文字入出力、文字列操作、ライブラリ関数を理解する
|
| 11週 |
記憶の割り付け(1) |
動的メモリ確保および解放を理解する
|
| 12週 |
記憶の割り付け(2) |
動的メモリ確保および解放を理解する
|
| 13週 |
記憶の割り付け(3) |
alloc() 系関数により割り付けられる記憶領域とその扱いを理解する
|
| 14週 |
記憶の割り付け(4) |
alloc() 系関数により割り付けられる記憶領域とその扱いを理解する
|
| 15週 |
後期中間試験以降のまとめ |
後期中間試験以降の単元について演習を通して理解する
|
| 16週 |
後期期末試験 |
|
| 分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
| 基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 情報を適切に収集・処理・発信するための基礎的な知識を活用できる。 | 3 | |
| 論理演算と進数変換の仕組みを用いて基本的な演算ができる。 | 3 | |
| コンピュータのハードウェアに関する基礎的な知識を活用できる。 | 3 | |
| 情報伝達システムやインターネットの基本的な仕組みを把握している。 | 3 | |
| コンピュータにおける初歩的な演算の仕組みを理解できる。 | 3 | 前1 |
| データの型とデータ構造が理解できる | 3 | 前1 |
| 専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 変数とデータ型の概念を説明できる。 | 3 | 前1 |
| 制御構造の概念を理解し、条件分岐や反復処理を記述できる。 | 3 | 前2 |
| 代入や演算子の概念を理解し、式を記述できる。 | 3 | 前1 |
| プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 3 | 前6 |
| 与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 3 | 前7,後9 |
| ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | 前1 |
| 主要な言語処理プロセッサの種類と特徴を説明できる。 | 3 | 前1 |
| ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 3 | 前1 |
| ソフトウェア | 時間計算量や領域計算量などによってアルゴリズムを比較・評価できることを理解している。 | 3 | 前7 |
| 与えられたアルゴリズムが問題を解決していく過程を説明できる。 | 3 | 前7 |
| 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。 | 3 | 前7 |
| 整列、探索など、基本的なアルゴリズムについて説明できる。 | 3 | 前10 |
| コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 | 3 | 前1 |
| 同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。 | 3 | 後7 |
| ソフトウェアを中心としたシステム開発のプロセスを説明できる。 | 3 | 後7 |
| ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。 | 3 | 後7 |
| 分野別の工学実験・実習能力 | 情報系分野【実験・実習能力】 | 情報系【実験・実習】 | 与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。 | 3 | 前1 |
| ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。 | 3 | 前1 |
| ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。 | 3 | 前1 |