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