某大学での,プログラミング講義の2回目.
一回目は,講義の概要や進め方のスタイルを説明する「ガイダンス」だったので,内容的な話は,この2回目からである.
講義の目次は以下のとおり.
情報の調べ方
教科書 参考書
演習
Linux OS
ソフトウェア
C言語
課題
[教科書,参考書]
教科書は,入門書として定評のある以下を採択した.
その他の参考書については,既に,
2008-9-14 講義 プログラミング 2008-1 (後期)に示したとおりである.
より,上級の教科書としては,C言語の開発者による,「リファレンス・ブック」がある.
また,「明解C言語 入門編」でも,まだ難しいという学生向けの,さらに優しい参考書としては,以下のものがある.
プログラミング全般の入門書として書かれているが,サンプルの多くはC言語である.
[演習環境としてのLinux,コンパイラ,エディタ]
エンジニアとして,コンピュータを扱う者は,「Windowsしか知りません」では通用しないので,この講義の演習は,Linux OS の上で行うこととする.
演習環境の使い方と,Linuxの超入門のためのガイドを,準備した.
以降,講義関係のファイルの配布等は,以下の Webページから行う.
Dr. Jason Suzuki Class Room 「講義関係資料」
現在は,以下の PDF ファイルだけをおいている.
「メディア情報センターICTルーム Linux超入門ガイド(2008年度版)」
本講義の受講者は,このガイドを熟読し,用語や概念などの不明点があれば,さらに自分で調べて読み進んで,演習を進める必要がある.
もちろん,調べても,どうしてもわからないことがあれば,講義のあと等に質問してかまわない.
また,大学のメディア情報センターの環境については,センターの窓口で確認すると良いだろう.
Linuxの概要や歴史的背景については,以下が参考になる.
http://www.linux.or.jp/general/linux.html
http://ja.wikipedia.org/wiki/Linux
http://ja.wikipedia.org/wiki/GNU
http://ja.wikipedia.org/wiki/リチャード・ストールマン
さらに,以下にも目を通すと良いだろう.
GNUシステムとフリーソフトウェア運動
http://www.law.co.jp/okamura/OpenSource_Web_Version/chapter05/chapter05.html
Linuxの強味
http://www.law.co.jp/okamura/OpenSource_Web_Version/chapter08/chapter08.html
Linuxのインターネット上の詳しいマニュアルとしては以下のものがある
http://f56.aaa.livedoor.jp/~kuri/Linux/manual/Doc9/rhl-gsg-ja-9/
さらに,9/14 の blog で紹介したLinux関連の文献も参考になる.
演習で用いる,C言語コンパイラ gcc ガイド,マニュアル等には以下のものがある.
http://www.cis.twcu.ac.jp/~asakawa/chiba2002/gcc_usage/
http://www.linux.or.jp/JM/html/GNU_gcc/man1/gcc.1.html
大学のLinux環境の標準のコマンドインタプリタ tcsh のガイド,マニュアル等については,以下のものがある.
http://cse.naro.affrc.go.jp/yellow/docs/unix-ent/tcsh.html
http://www.linux.or.jp/JM/html/tcsh/man1/tcsh.1.html
演習で用いる,推奨エディタの gedit のガイドには,以下のものがある.
http://www.iimc.kyoto-u.ac.jp/services/ecs/services/terminal/linux-manual/useGedit.pdf
http://www-lab.imr.tohoku.ac.jp/~ccms/Jpn/service/mint/gedit/gedit.htm
[課題]
講義で示した演習プログラム sp_01-2.c を,Linux上で,入力編集する.
プログラム中の学科,学生番号,氏名の部分は各自自分のものに変更すること.
プログラムのソースコードおよび,実行結果を,印刷し,実行結果,ソースコードの順でかさねホチキスで左上をとめ,次回の講義開始時に,提出すること.
[参考]
コンパイルの手順 (以下,tcsh% は,プロンプトの例)
tcsh% gcc -o ep_01-2 sp_01-2.c
実行
tcsh% ./ep_01-2
実行結果のファイルへの保存
tcsh% ./ep_01-2 > out_01-2
印刷
tcsh% cat sp_01-2.c | lpr
tcsh% cat out_01-2 | lpr