授業科目

プログラミング基礎
Programming Basic

担当者

教授   桑原 恒夫
後 月4

単位

2

到達目標

受講生がC言語の一通りの文法を身につけて、並行して開設するプログラミング基礎演習を履修可能になる事。その後、受講生の希望によっては他のプログラミング関連科目を履修する倍があるが、その時のための基礎を形成すること。これは数理・物理学科のカリキュラムポリシーにある「数学・物理学の多元的な視点の獲得のために、理学の基礎を確実にする」ことに資し、また総合理学プログラムのカリキュラムポリシーにある「科学の基礎知識を理解」することに資する。なおこの講義の受講がプログラミング基礎演習の受講の前提となる。

授業内容

C言語の基礎文法を中心に講義するが、同時にプログラミングとは何かを経験させ理解させ、他の言語を習得する上でも有用になるプログラミングの基礎技術を習得させる。

授業計画

1.シラバスの記載事項確認。ソースコード作成・コンパイル・実行の手順。言語の構成(関数単位の構成、main関数)変数とその種類。printfによる出力。
 復習により、ごく簡単なプログラム(標準出力にテキストを表示するだけ)なら自力でソースコードの作成、コンパイル、実行という一連の作業が出来るようにすること。
2.四則演算、式の意味(代入、値の上書き含む)、scanfによるキーボードからの入力(アドレスの簡単な紹介含む)
 復習により、標準入力から数値を入力しそれになんなかの四則演算を実行して結果を標準出力に表示するかんたんなプログラムなら自力で作成できるようにすること。
3.分岐制御 if, if else, else if,switch
 復習により、分岐制御の概念と手法を身に着けるとともに、授業で示す例題や練習問題程度の簡単な分岐制御を伴うプログラムなら自力で作成出来るようにすること。
4.繰り返し制御 forとwhile、breakとcontinue
 復習により、繰り返し制御の概念と手法を身に着けるとともに、授業で示す例題や練習問題程度の簡単な繰り返し分岐制御を伴うプログラムなら自力で作成出来るようにすること。breakは必ず使いこなせるようになること。
5.配列変数配列と繰り返し制御
 復習により、配列の概念と利用法、繰り返し制御の中で配列を利用する方法を身に着けること。
6.アドレスとポインタ、配列とポインタ
 アドレスとポインタはC言語学習の最難関課題である。この回の授業だけでその全てを完全に理解することは困難だが、アドレスとポインタの概念を正確に(誤解なく)理解するように復習に努めること。
7.文字と文字列
 文字文字列の理解も初学者には難関である。復習により、文字コードという概念、文字列という概念をしっかり身に着けるように。
8.関数呼び出し-1- 値渡しとアドレス渡し、数学関数の利用、ローカル変数とグローバル変数
 C言語の基本構成単位は関数である。復習により、関数単位でのプログラムの構成、引数と返り値による情報の受け渡しについてしっかりと理解すること。また、アドレス渡しについても確実に身に着け、ここでポインタの利便性に関する理解を深めること。
9.関数呼び出し-2- 関数の再起呼び出し、静的変数と動的変数
 再起呼び出しは高度な手法であるが、少なくてもそれが使われたプログラムは読んで理解できるようにしっかり復習すること。可能なら自分でも再起呼び出しを利用したプログラムが作れるようになると良い。
10.ファイル入出力(ファイルからのデータ読み込み、ファイルへのデータ書き込み)
 ファイル入出力は手順が煩雑ではあるが、定型的な部分が多いので実はそれほど難しいわけではない。しかし初学者は苦手としているようである。実際に自分で何回かプログラミングしてみれば慣れてくるはずなので、復習により難無く出来るようにしておくこと。
11. 構造体
 構造体は、複雑な情報を表現するために便利な方法である。復習により、構造体を利用するための書式や手順をしっかり理解すること。
12.共用体、enum型、typedefによる新たな型定義、これらを用いた複雑な情報構造の表現
 共用体、enum型、typedefも構造体同様に複雑な情報を表現するために便利な方法である。復習により、これらを利用するための書式や手順をしっかり理解し、構造体と合わせて複雑な構造の情報を表現する手法を身につけること。
13.これまの学習内容を総合したやや複雑な例題の学習
 やや複雑な例題や練習問題も提示するので、復習によりしっかりと理解し、それを自分がプログラミングする際の参考にできるようになるように。
14.総合演習
 定期試験を模擬した練習問題を行うので、復習により完全に理解し、解答例を見なくても解答出来るようにし、万全の準備をして定期試験に臨むこと。

[予習・復習]
 Webにより各回の講義資料を公開するので(最終回の資料は除く)、講義箇所の予習・復習を毎回行うこと。特に、毎回の演習問題で授業中に自力で解けなかった場合はそれをよく復習しておくこと。目安として1回あたり予習1時間程度、復習3時間程度。

授業運営

 この講義で初めてプログラミング言語に触れる学生も多いと想定されるので、例題を豊富に使いながら解りやすい講義に努める。毎回授業の最後に簡単な演習問題およびその解説を行い、学習内容の確実な理解を深める。e-ラーニングシステムによる演習問題の実施や、実際のプログラミングなどを交えた授業とする予定であるため、PCルームで授業を行う予定である。

評価方法

期末試験(ペーパーテスト)

オフィスアワー

火曜日3時間目2-221

使用書

桑原恒夫『1日で解るC言語』第2版[共立出版]2005年

参考書

カーニハン、リッチー『プログラミング言語C』第2版[共立出版]1989年
平林雅英『新ANSI C言語辞典』初版[技術評論社]1997年
三田典玄『新版実習C言語』[オーム社]1999年

Copyright© 2017 Kanagawa University. All Rights Reserved.