概要:
本講義では,構造化プログラミング言語の一つであるC言語について学ぶ。本言語は高級言語の一つでありながら,低級言語に近いハードウェア寄りの処理が可能なため,マイコンの組み込みソフトウェアからスーパーコンピュータを用いた大規模数値計算まで幅広く用いられている.本講義では代表的な構造化言語であるC言語を学習し,プログラミングの基礎を身につける.主に実用上必須となる制御構文,関数,配列,入出力,ポインタについて重点的に学習する.
授業の進め方・方法:
プログラムの基礎,配列,関数,ポインタを順をおって理解・利用できるように進めていく.
基本的に講義及び演習により進めていくが,一部反転授業を取り入れた授業も行う.
注意点:
本科目は,1年次開講科目の情報基礎工学の中で学んだC言語の続きとなる科目であるため,C言語の基礎は理解した上で受講することが望ましい.C言語は構造プログラムの基礎であるためソフトウェア技術者希望の学生でなくともきちんと理解しておくこと.授業に対する質問などは、授業中だけでなくメールや教員室への訪問でも随時受け付ける.
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
プログラムの基本の復習 |
if, for,while文を使い簡単なアルゴリズムを実現できる
|
2週 |
プログラムの基本の復習 |
同上
|
3週 |
配列1 |
一次元配列の構造を理解し,繰り返しを利用してデータの操作ができる
|
4週 |
配列1 |
同上
|
5週 |
配列2 |
多次元配列の構造を理解し,繰り返しを利用してデータの操作ができる
|
6週 |
配列2 |
同上
|
7週 |
配列3 |
配列の内容のsortを複数の手法で行うことができる
|
8週 |
中間試験 |
|
2ndQ |
9週 |
中間試験の復習 |
中間試験までの内容を理解している
|
10週 |
関数1 |
関数の引数,戻り値,プロトタイプ宣言,関数定義の順番などの基本構造を理解している
|
11週 |
関数2 |
必要な関数を作成することができる
|
12週 |
基本型 |
C言語の数値型の概要やサイズ,各演算子について理解している
|
13週 |
基本型 |
同上
|
14週 |
ビット演算 |
ビット演算と各型のデータ構造について理解している
|
15週 |
定期試験 |
|
16週 |
定期試験答案返却 |
|
後期 |
3rdQ |
1週 |
アルゴリズム |
前期に学んだ内容を応用したアルゴリズムを組み立て,プログラミングすることができる
|
2週 |
アルゴリズム |
同上
|
3週 |
アルゴリズム |
同上
|
4週 |
文字列の基本 |
文字列の概要を理解している
|
5週 |
文字列の基本 |
同上
|
6週 |
ポインタ1 |
ポインタの概要及び簡単な利用法を理解している
|
7週 |
ポインタ1 |
同上
|
8週 |
中間試験 |
|
4thQ |
9週 |
中間試験の内容の復習 |
中間試験までの内容を理解している
|
10週 |
ポインタ2 |
ポインタを利用した関数を作成できる
|
11週 |
ポインタ2 |
同上
|
12週 |
ポインタ2 |
同上
|
13週 |
文字列とポインタ |
ポインタを利用した文字列操作を理解し,応用したプログラムを作成することができる
|
14週 |
関数ポインタ |
関数のポインタからの呼び出しを利用したプログラムを作成することができる
|
15週 |
定期試験 |
|
16週 |
定期試験答案返却 |
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 工学基礎 | 情報リテラシー | 情報リテラシー | 同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 | 1 | 後1,後2,後3 |
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 | 1 | 後1,後2,後3 |
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 | 1 | 後1,後2,後3 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 2 | 前1,前2 |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 2 | 前10,前11,後14 |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 2 | 後1,後2,後3 |
ソフトウェア | 整列、探索など、基本的なアルゴリズムについて説明できる。 | 1 | 前7 |
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 | 2 | 前2,前3,前4,前5,前6,前12,前13,前14,後4,後6,後10,後14 |