プログラミング基礎

科目基礎情報

学校 仙台高等専門学校 開講年度 平成27年度 (2015年度)
授業科目 プログラミング基礎
科目番号 0004 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 2
開設学科 情報システム工学科 対象学年 2
開設期 通年 週時間数 2
教科書/教材 「明快入門C」林 晴比古(ソフトバンククリエイティブ(株))
担当教員 岡本 圭史,竹茂 求

到達目標

ソフトウェア作成に必要な基礎概念およびソフトウェアの作成工程を理解し、C言語を用いて簡単なソフトウェアを生成できること。フローチャートを用いて,プログラムの流れを論理的に理解、表現できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1
評価項目2
評価項目3

学科の到達目標項目との関係

教育方法等

概要:
ログラミング言語としては C 言語を取り上げる。プログラミングの基礎の学習は2年次と3年次の2年間で完成させることを目指す。2年次ではデータ型標準入、出力、演算、制御構造、標準ライブラリ関数等の基本文法について、講義と実習を行う。コンピュータプログラミングの基礎を習得し、小規模なプログラムが作成できることを目標とする。
授業の進め方・方法:
毎回、講義の後で実習を行う形態で行う。講義は、パワーポイントで説明し、学生にはその印刷物を配布する。実習に先立ち、グループで教え合いを行うこともある。また、事前に撮影した講義の動画を見れる環境を設定し、予習と復習を課す場合がある。
注意点:
3学年のプログラミング、4学年や5学年の応用プログラミングⅠ、Ⅱが関連科目として重要である。情報システム工学科の専門科目では多くの教科でプログラミングの知識を必要とするので、特にソフト関連専門科目の基礎科目となる。基礎学力を確実にする上で、実習を中心とした復習が重要である。自宅のPCを利用したプログラミング環境の構築について授業で指示するので、授業の演習時間で完成しなかったプログラム作成は、自宅でその日の内に完成させて知識を確実にする必要がある。授業を休んだ場合、次回の授業までに担当教員に申し出て、必要な資料を受け取り、授業に備えること。提示したプログラム例の作成は,良く理解しないままコードを入力することのないように注意すること。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 低水準言語と高水準言語,コンパイル、C言語の構造,ディスプレイへの出力 高水準言語はコンパイルによって実行可能なプログラムが作成されることが理解できる。C言語の最も基本的な構造を理解し、実際に作ってコンパイルして実行することができる。
2週 変数と代入,変数の種類と宣言、文字とASCII コード表 変数を用いた基本的なソースファイルを作成し,コンパイルして実行できる、文字の情報表現を理解できる
3週 算術演算子、代入演算子,比較演算子,論理演算子、フローチャート データ入力・四則演算,出力をもつプログラムが作成できる、処理の流れをフローチャートで記述できることを理解できる
4週 分岐if 文と繰り返しfor 文 if文で分岐処理ができる、for文が書ける
5週 配列 配列型データが理解できる。
6週 最大値、sorting 配列を用いて、入力した数の最大値を求めることができる、ソートができる
7週 総合演習(1) for文、配列と分岐を用いて、入力した正、負、0の個数を計算できる
8週 前期中間試験
試験返却・復習
基本的な処理のフローチャートを書け、プログラムできることを確認する
2ndQ
9週 関数の利用(1):引数,戻値 C言語が関数で構成されることを理解し、引数、戻り値を理解する
10週 関数の利用(1)演習:引数,戻値 引数と戻り値を利用する場合としない場合の関数の利用法を理解する
11週 ポインタ変数、call by value(値渡し)とcall by reference(参照渡し) 変数とアドレスの概念を理解できる。ポインタ変数を理解できる。関数に変数を渡す値渡しと参照渡しの方法を理解できる
12週 ポインタの演習 ポインタ変数を用いてアドレスを確認し、利用できる
13週 関数への配列渡し
関数への配列渡しが参照渡しであることを理解し、プログラムを書ける
14週 配列渡しの演習
分岐switch 文
関数に配列を渡して処理できる
分岐switch 文を利用できる
15週 while 文,do while 文
繰り返しの入れ子構造
かけ算九九等の表が作成できる。 状況に応じて、for文、while 文,do while 文を使い分けられる
16週 前期末試験と返却
後期
3rdQ
1週 構造化設計演習(1) プロトタイプ宣言で関数を利用して構造化設計できる
2週 構造化設計演習(2) プロトタイプ宣言で関数を利用して構造化設計できる
3週 大域的(global)変数と局所的(local)変数

大域的(global)変数と局所的(local)変数の意味が理解できる
4週 (global)変数演習 (global)変数と局所的(local)変数を利用してプログラムが作成できる
5週 配列と文字列 文字列のデータ構造が理解できる
6週 文字列演習(1) 文字列の入出力ができる
7週 文字列演習(2) 文字列処理関数を利用して、文字列内の文字入れ替え等の処理ができる
8週 前期中間試験
試験返却・復習
4thQ
9週 ファイルの利用 fopen, fcloseを用いて、ファイルの利用ができる
10週 ファイルを利用した文字列の処理(1) fgets、fputsを利用してテキストファイルの読み込みや出力ができる
11週 ファイルを利用した文字列の処理(2) fgetc、fputcを利用してテキストファイルの文字を処理できる
12週 ファイルを利用した文字列の処理(3) テキストファイルをコピーする機能のプログラムを作れる
13週 総合演習(1) テキストファイルで使用されている文字についてそれぞれの個数を計算できる
14週 総合演習(2) テキストファイルで使用されている文字の個数を棒グラフで表示できる
15週 総合演習(3) 同じ目的のプログラムでも、色々なアルゴリズムがあることを理解できる
16週 後期末試験と返却

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合10000000100
基礎的能力500000050
専門的能力500000050
分野横断的能力0000000