情報科学演習
2010.4.26
課題の提出練習を2回行いましたが,まだまだ不適切な提出方法が多く見られま
す.以下にこれまでにみつかった良くない例をいくつか示しますので,参考にし
てください.
前回の課題では解答用紙の上部にC6かC7のクラスのどちらかを選択して不要な方
を消すようにしていましたが,消してない人が多く見られました.また,C6クラ
スを履修しているのにC7クラスで提出した人,またその逆の人も数名見られまし
た.以後は注意してください.前回の課題であれば以下のようになっていないと
不適切です.
提出前に解答用紙を必ずコンパイルして実行ファイルが正しくできるか,確認し
てください.
$ cc test_C6_100419_s094099.c
無理矢理¥マークを表示したり, /n のようにバックスラッシュ
\ ではなく,ただの / (スラッシュ)になっている人が多く見ら
れました.
hello.c を実行したときに,例えば,以下のようなものは改行文字が
適切に入っていませんので,バックスラッシュに慣れるようにしましょう.
プログラム中に日本語の全角スペースが入っていたりすると問題が生じます.二
重引用符 " " で囲まれた部分にしか日本語フォントを使わないように注
意してください.
これは動作には直接影響しないのですが,プログラムをわかりやすく記述するた
めには必要なものですので,インデント(字下げ)は習慣づけてください.
前回の課題ではクラスごとに保存する名前が違うようにしていました.C6とC7を
間違えた人も多く見られましたし,ファイル名の最後に ~ (ティルダ)
が付いている人もいました.ティルダに関してはこの後で詳しく説明します.
先週もお話ししましたが,教科書のプログラムのソースでは改行文字が¥nになっています.¥
マークは日本独自の文字コードで英語圏ではキーボードにはありません.日本語
キーボードで¥記号のところの文字コードは本来バックスラッシュ( " \ "
)です.画面にバックスラッシュが表示されていてもまったく問題あ
りませんので,気にしないでください.
geditでプログラムを書いて保存する場合,一度保存したファイルを修正して上
書き保存を行うと,直前のファイルを名前の後に ~ (ティルダ)を付け
てバックアップしてくれます.便利な機能で,うっかり上書きしてしまったとき
にファイルの復旧ができるので重宝しますが,そのことに気づかず,間違ってティ
ルダの付いたファイルを添付している人がかなり多く見られます.注意してくだ
さい
例えばhello.c というプログラムを修正して保存すると hello.c~
というファイルを追加で作ってくれます.
作成したプログラムを保存する際にファイル名に日本語を使用しないでください.
ターミナルからコマンドで実行する際に不便です.
前回の授業中に,ターミナルでコンパイル作業をしているときにエラーが出てい
る人がたくさんいましたが,エラーの原因を見ようと思うとgeditが終了されて
いるケースが多く見られました.プログラミングに間違いはつき物ですので,修
正してはコンパイルを繰り返すというのが一般的な作業です.コンパイルすると
きにもプログラムは開いたままにしておいてください.
コンパイル時にエラーが発生するとメッセージで教えてくれます.エラーメッセー
ジを見ると何行目にどんな問題があるのかが判ります.ところが,エラーメッセー
ジを読もうとしない人が実にたくさんいるようです.貴重なヒントなので見逃さ
ないでください.また,英語も簡単な物しか使用されていないのでわかるように
なってください.
scanfはキーボードからの入力を指定された書式で変数に格納する関数
です.プログラム中に scanf を入れておくとその入力を待つために動
作が停止していますので注意してください.
教科書p.14にあるように,コンピュータは文字を文字コードと呼ばれる数値で扱っ
ています.コンピュータが発明されて文字を扱えるようになったときに定められ
た文字コードは,アメリカでの使用を想定していましたのでアルファベットと数
字,一部の記号で100文字分位しかありません.これらはASCIIコードとして知ら
れています.教科書のp.143の表のように割り当てられているので,例題2.4のよ
うな使い方でプログラム中で試すことができます.
/* ************************************************** */
/* */
/* 情報科学演習 C6 */
/* 添付書類テスト */
/* 2010.4.19 */
/* */
/* ************************************************** */
/* */
/* 学生番号: s094099 */
/* */
/* 氏名: 島根 太郎 */
/* */
/* ************************************************** */
/* */
/* この行以降に解答のプログラムを書くこと */
#include <stdio.h>
main()
{
printf("I graduated from hogehoge highschool.\n");
return(0);
}
$ ./a.out
Hello, world!/n
Hello, world![b0999@PC3-71 seminar]$
教科書のp.15までの内容を各自プログラミングで確認してください.その後で,
今日の実習作業を案内します.
目次ページに戻る