到達目標
学習目的:
C言語によるプログラミングの基礎を学び,簡単なプログラムであれば読んだり書いたりできる能力を身に付ける。
到達目標:プログラムの書き方,書かれたプログラムの読み方など,プログラミングの基礎を理解する。
1.変数とデータ型の概念を説明できる。
2.代入や演算子の概念を理解し,式を記述できる。
3.制御構造の概念を理解し,条件分岐や反復処理を記述できる。
4.関数の概念を理解し,関数を含むプログラムが記述できる。
ルーブリック
| 優 | 良 | 可 | 不可 |
評価項目1 | 変数とデータ型の概念について適切に説明でき,応用できる。 | 変数とデータ型の概念について適切に説明できる。 | 変数とデータ型の概念について説明できる。 | 変数とデータ型の概念について説明できない。 |
評価項目2 | 代入や演算子の概念について適切に説明でき,応用できる。 | 代入や演算子の概念について適切に説明できる。 | 代入や演算子の概念について説明できる。 | 代入や演算子の概念について説明できない。 |
評価項目3 | 制御構造の概念を理解し,適切に説明でき,応用できる。 | 制御構造の概念を理解し,適切に取り扱うことができる。 | 制御構造の概念を理解し,説明できる。 | 制御構造の概念を説明できない。 |
評価項目4 | 関数の概念を理解し,多様な関数を含むプログラムが記述できる。 | 関数の概念を理解し,標準的な関数を定義してプログラムが記述できる。 | 関数の概念を理解し,簡単な関数を定義してプログラムが記述できる。 | 関数の概念を理解できない。 |
学科の到達目標項目との関係
教育方法等
概要:
一般・専門の別:専門 学習の分野:情報システム・プログラミング・ネットワーク
基礎となる学問分野:情報学/情報科学,情報工学およびその関連分野/ソフトウェア関連
学習教育目標との関連:本科目は総合理工学科学習・教育目標「③基盤となる専門性の深化」に相当する科目である。
技術者教育プログラムとの関連:本科目が主体とする学習・教育目標は「(A)技術に関する基礎知識の深化」である。
授業の概要:Cプログラミングに必要な文法規則の基本的な項目について学習し,簡単なプログラムの読み方や書き方について学ぶ。また,他人にとって読みやすいプログラムを記述する方法についても学ぶ。できるだけ多くの演習を取り入れながらプログラムの処理内容が理解できることに重点をおいて進める。
授業の進め方・方法:
授業の方法:プレゼンテーションによる講義とプログラミング演習を中心に授業を進める。理解が深まるようレポートを課す。
成績評価方法:4回の定期試験それぞれ重み付け評価する(80%,前中:前末:後中:後末=1:2:1:2)。小テスト,レポートで評価する(20%)。
また,原則再試験を行わないが,状況に応じては再試験を実施する場合がある。実施後の定期試験の評価は,原則60点を超えないものとする。
注意点:
履修上の注意:学年の課程修了のためには履修(欠席時間数が所定授業時間数の3分の1以下)が必須である。
履修のアドバイス:授業スライド,課題はPDFファイルで公開する。教科書のサンプルプログラムは実際に自分で入力し,コンパイルエラーが発生したらひとつずつ理解していくことが大切である。事前に行う準備学習:1年科目の総合理工基礎の復習
基礎科目:情報リテラシー(1年),総合理工基礎(1)
関連科目:アルゴリズムとデータ構造(3年),プログラミング応用(4),システムプログラミング(5),卒業研究(5)
受講上のアドバイス:プログラミングは自主学習によって実力をつけることが可能である。自宅等でもプログラミングできる環境があることが望ましい。課題は自分で行うこと。友人のコピーなどの不正が発覚した場合は厳しい措置をとる。
また,出欠確認時以降の入室は遅刻とする。遅刻は2回で1単位時間の欠課として扱う。
授業の属性・履修上の区分
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
科目の位置づけ,学習内容,方法に関する説明〔ガイダンス〕 |
|
2週 |
演習環境の整備と1年次のプログラミング講義の復習 |
C言語の基本的な書式がわかる。
|
3週 |
プログラムの書き方,画面への表示 |
printf関数で文字列が表示できる。
|
4週 |
数値の表示と計算 |
printf関数で文字列と数値が表示できる。
|
5週 |
数値の記憶と計算 |
基本的な変数の使い方が分かる。
|
6週 |
キーボードからの入力 |
scanf関数による基本的なキーボード入力方法がわかる。
|
7週 |
条件分岐(if文とswitch文) |
if文とswitch分による制御ができる。
|
8週 |
(前期中間試験) |
|
2ndQ |
9週 |
前期中間試験答案返却と解答解説 |
|
10週 |
繰り返しによる処理(1) |
for文による反復制御ができる。
|
11週 |
繰り返しによる処理(2) |
while文による反復制御ができる。
|
12週 |
繰り返しによる処理(3) |
do~while文、また入れ子構造の反復制御ができる。
|
13週 |
関数に関する基本的な学習と関数に関する演習(1) |
関数の概念が説明できる。
|
14週 |
関数に関する基本的な学習と関数に関する演習(2) |
関数定義と関数宣言ができる。
|
15週 |
(前期末試験) |
|
16週 |
前期末試験答案返却と解答解説 |
|
後期 |
3rdQ |
1週 |
後期ガイダンス |
|
2週 |
関数に関する基本的な学習と関数に関する演習(3) |
関数が自作できる。
|
3週 |
変数の扱い(1) |
文字変数や文字列の扱いがわかる。
|
4週 |
変数の扱い(2) |
様々な変数の型を適切に使うことができる。
|
5週 |
配列と文字列操作 |
arrayを使うことができる。
|
6週 |
ポインタ変数(1) |
ポインタの概念が説明できる。
|
7週 |
ポインタ変数(2) |
ポインタ変数を使って値の格納ができる。
|
8週 |
(後期中間試験) |
|
4thQ |
9週 |
後期中間試験答案返却と解答解説 |
|
10週 |
構造体(1) |
構造体の概念が説明できる。
|
11週 |
構造体(2) |
構造体を使ったプログラムが書ける。
|
12週 |
ファイルの扱い |
テキストファイルの読みこみと書き出しができる。
|
13週 |
マクロ機能 |
マクロ機能を使って準関数が作れる。
|
14週 |
まとめ並びに復習 |
|
15週 |
(後期末試験) |
|
16週 |
後期末試験の答案返却と試験解説 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 4 | 前4 |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 4 | 前13,前14 |
変数の概念を説明できる。 | 4 | 前4 |
データ型の概念を説明できる。 | 4 | 前5 |
制御構造の概念を理解し、条件分岐を記述できる。 | 4 | 前7 |
制御構造の概念を理解し、反復処理を記述できる。 | 4 | 前10,前11 |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 2 | 後14 |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 2 | 前2,前3 |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 2 | 後14 |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 2 | 前3 |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 2 | 前2,前3 |
ソフトウェア | コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 | 1 | 後14 |
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。 | 1 | 後14 |
評価割合
| 試験 | 課題 | 合計 |
総合評価割合 | 80 | 20 | 100 |
基礎的能力 | 0 | 0 | 0 |
専門的能力 | 80 | 20 | 100 |
分野横断的能力 | 0 | 0 | 0 |