変数とデータ型の概念を説明できる。代入や演算子を理解し,式を記述できる。制御構造を理解し,条件分岐や反復処理を記述できる。関数(プロシージャ)を理解し,関数を使ったプログラムを記述できる。与えられた問題に対して,それを解決するためのソースプログラムを記述し,実行することができる。
概要:
1年,2年で学習したC言語のプログラミング能力を高めることを目標とします。問題のトップダウン的解析や関数によるプログラムの機能分割に積極的に取り組むことにより,構造化プログラミングの方法を理解し,実践的なプログラミング能力を身につけます。
授業の進め方・方法:
前半は,教科書の練習問題程度のプログラムを作成することで,C言語のプログラミングの基本を復習・理解してください。後半は,提示された問題に対して,それを解決するためのアルゴリズムを考え,プログラムを作成する実習を行います。
小課題 50%,大課題 50%で総合評価し,50点以上を合格とします。
注意点:
プログラムを完成させることが目的ではなく,プログラミングという作業に慣れることが重要です。構造化プログラミング,関数による機能分割にもチャレンジして欲しいと思います。人に聞いたり,ネットで調べたりすることは大切ですが,プログラムのコピーだけは絶対に行わないようにしてください。
なお,「不可」となった者に対して再試験は実施しません。
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
ガイダンス シラバスの説明,授業の進め方,プログラムの作成方法 |
前期授業の進め方を理解する。 プログラムの記述,コンパイル,実行の方法を理解する。
|
2週 |
C言語の基本 画面への出力,課題提出メールの書き方 |
Cプログラムの基本構造を理解する。 ディスプレイへの出力ができる。メールの作法を理解する。
|
3週 |
変数と代入,式の記述 キーボードからの入力 |
変数について説明できる。変数に代入できる。数式を記述できる。キーボードから変数に入力できる。
|
4週 |
条件文 if文,if else文,switch case文 |
条件設定よる場合分けを行うことができる。
|
5週 |
複雑な条件式 論理演算子 |
かつ(AND),または(OR)による複雑な条件式を記述できる,
|
6週 |
繰り返し for文,while文,do while文,入れ子構造 |
繰り返しの内容によって,命令文を適切に使い分けることができる。
|
7週 |
配列 添字,配列の初期化 |
配列の考え方を理解し,プログラムを作成できる。
|
8週 |
配列 2次元配列,2次元配列の初期化,多次元配列 |
多次元配列の考え方を理解し,プログラムを作成できる。
|
2ndQ |
9週 |
関数 関数の戻り値と型,引数,関数の呼び出し |
関数の戻り値,関数の型,関数の引数について説明できる。
|
10週 |
関数の設計 |
関数を設計し,プログラムを作成できる。
|
11週 |
変数 ローカル変数,グローバル変数,静的変数,動的変数,変数の寿命 |
変数を適切に使い分けることができる。
|
12週 |
乱数 |
乱数を理解し,乱数を用いたプログラムを作成できる。
|
13週 |
文字と文字列 |
文字列の表現方法を理解し,文字列を処理するプログラムを作成できる。
|
14週 |
課題プログラム |
基本的な(簡単な)プログラムを作成できる。
|
15週 |
|
|
16週 |
|
|
後期 |
3rdQ |
1週 |
ガイダンス ファイル操作 |
後期授業の進め方を理解する。 ファイルの基本操作を理解し,ファイル操作を行うプログラムを作成できる.
|
2週 |
ファイル操作 |
ファイルの基本操作を理解し,ファイル操作を行うプログラムを作成できる.
|
3週 |
課題プログラム1 (素因数分解) |
課題のプログラムを作成する。プログラム作成の手順を学ぶ。
|
4週 |
課題プログラム1 |
|
5週 |
課題プログラム1 |
|
6週 |
プログラム鑑賞会 |
与えられたプログラムを解読し,良い点・問題な点を指摘できる。
|
7週 |
プログラム鑑賞会 |
与えられたプログラムを解読し,良い点・問題な点を指摘できる。
|
8週 |
プログラム鑑賞会 |
与えられたプログラムを解読し,良い点・問題な点を指摘できる。
|
4thQ |
9週 |
課題プログラム2 (乱数) |
課題のプログラムを作成する。プログラム作成の手順を学ぶ。(課題プログラム1の解説)
|
10週 |
課題プログラム2 |
|
11週 |
課題プログラム2 |
|
12週 |
課題プログラム3 (逆数の計算) |
課題のプログラムを作成する。プログラム作成の手順を学ぶ。(課題プログラム2の解説)
|
13週 |
課題プログラム3 |
|
14週 |
課題プログラム3 |
|
15週 |
まとめ 課題プログラムの解説 |
(課題プログラム3の解説) 課題プログラムのアルゴリズムを理解できる。
|
16週 |
課題プログラム(確認テスト) |
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 変数の概念を説明できる。 | 4 | |
データ型の概念を説明できる。 | 4 | 後2 |
代入や演算子の概念を理解し、式を記述できる。 | 4 | |
制御構造の概念を理解し、条件分岐を記述できる。 | 4 | |
制御構造の概念を理解し、反復処理を記述できる。 | 4 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 4 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 4 | |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 4 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 4 | 後2 |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 4 | |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 4 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 3 | |
ソフトウェア | アルゴリズムの概念を説明できる。 | 3 | |
与えられたアルゴリズムが問題を解決していく過程を説明できる。 | 3 | |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。 | 3 | |
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 | 3 | |
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。 | 3 | |
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。 | 3 | |
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。 | 3 | |
その他の学習内容 | 少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。 | 4 | |
少なくとも一つの具体的なオフィススイート等を使って、文書作成や図表作成ができ、報告書やプレゼンテーション資料を作成できる。 | 4 | |
少なくとも一つのメールツールとWebブラウザを使って、メールの送受信とWebブラウジングを行うことができる。 | 4 | |