プログラミング基礎 10/19 神保・大竹 <本講義の目的> プログラミング言語は英会話のようなもの。教科書に載っているプログラムを打ち込むだけでは身に付かない。自分でプログラムを改造する訓練が必要。 目標は、 ・全ての言語に共通するプログラミング概念の理解 ・知らない言語を勉強しながら使っていく調査力 ・プログラムに問題があったとき、原因を切り分けてゆけるデバッグ力 を身につける事。 プログラミングスキルゼロの人から対象としたいので、すでにある程度出来る人には退屈かもしれない。教員が演習問題を出すこともあるし、自分で課題を作ってみても良い。隣の人に教えるのも勉強になる。 <今後の予定> 次回以降 神保(前半)・大竹(後半)で担当 @ログイン 新 1 年生については、必修講義「情報処理」の第 1 回に おいて、アカウントを配付しました。(「情報処理」の第 1 回を 前項の講習会とみなします。) 欠席した場合には、本ページに記載 の講習会に出席する必要があります。 教育用計算機システムのパスワードを忘れた学生の方は,情報教育棟の窓口に,学生証を持ってお来し下さい.窓口で必要な書類を記入してもらった後,2日以内にパスワードを再発行しますので,2日後以降(休日を除く.例えば月曜日に書類を提出すれば水曜日,金曜日に提出した場合は翌週の火曜日に来てください.)に再度学生証を持って受け取りにきてください. 窓口の場所と開いている時間は以下の通りです. 情報教育棟1階業務室 (平日10時〜12時,13時〜17時) ※教養学部の事務をおこなう事務室と,センター関係の業務を行う業務室に分かれているのでご注意ください. 新規利用者向け講習会のスケジュール http://www.ecc.u-tokyo.ac.jp/seminar.html を参照してください。 講習会の会場にて、利用申込書を記入していただきます。 その際、身分証明書(学生証)を確認させていただきますので、必ず御持参ください。 遅刻をした場合は、講習会に出席できません。 次回の講習会に出席してください。 講習会は30分程度を予定しております。 アカウント発行は、講習会受講日より1週間後となります。 A教科書の表示 http://lecture.ecc.u-tokyo.ac.jp/~tohtake/cmain1.pdf 講義用wwwサーバのリンクからたどることも出来る。 eccのTop page(http://www.ecc.u-tokyo.ac.jp/)の左中にある「講義用wwwサーバ」をクリック、 プログラミング基礎Cを探す Bプログラムの入力 emacsまたはテキストエディタを使用する。テキストエディタはバックスラッシュ('\'または'\')の入力で問題が起きる事があるので(ALT+\を試してみる)、emacsがつかえるならemacsがよい。 教科書に出てくるmule はemacsのこと。 教科書2ページのhello.cを入力してみる。 コンパイル、実行の仕方は4ページ目にあるとおり。 注意:  void main(void)の部分はint main(void)で入力すること  実行は「./a.outリターン」 課題1 6ページまでのプログラム(hello.c hello2.c fahren.c)を入力・実行してみる 課題2 printfの書式を忘れてしまった! googleでprintfを検索してみる (自分でマニュアルを調べる練習) 課題3 fahren.cで3行にわたって表示される数値を小数点ぞろえにしたい。「is」の部分をそろえるには printf文中の空白を調整すればいいとして、数値部分を数値にかかわらず小数点ぞろえにするに はどうしたらよいのだろう(たとえば100Fを10000Fに改造してやってみる)。printfのマニュアルから関連する情報を探してみる キーワードは「フィールド幅(数値の文字数が少なくても、最低限確保される幅)」と「精度(小 数点何桁まで表示するか)」 マニュアルの表現がわかりにくければ「printf 小数点 そろえ」で検索してみる 課題4 周りでつっかえている人がいたら教えてあげてみる 課題5 それも終わってしまったら、エスケープシーケンスで遊んでみる。 次のprintf文の結果はどうなるだろう printf("\033[34mtest\033[0m\n"); googleで「ansi エスケープシーケンス」を検索してみる(たとえば3番目のものをみてみる) エスケープシーケンスとは何なのだろうか