プログラミング序論 page0(update 2017/04/20)
[index]

0.レポートツール

C言語のプログラミング環境としては下記の様な色々なものが在ります。 これらはC言語がよくわかった人が使うのには便利なのですが、C言語が初めての人には、複雑な環境の使い方を覚える必要があって大変です。そこで今回はMicrosoftのコンパイラを利用する簡単な私の自作ツールを使って演習を行うことにします。

00.ツールのDownload

Report.jar を先ずデスクトップにダウンロードしてください。

※ダウンロードで名前がReport.zipと拡張子が変わることがあります。
この場合はファイル名をReport.jarと変更してください

これはjavaのプログラムです。javaの実行環境がきれいに設定されていればReport.jarをダブルクリックで起動します

 初期レポートファイル作成
   レポート送信
   レポート受信
   は認証の関係で情報生体システムの演習室でのみ可能

01.自作プログラミング環境

Report.jar のアイコンをダブルクリックでツールが起動します。(起動に少し時間がかかります)
下の画面がレポートツールの画面です。

バージョンアップ前の画像が一部含まれています。従って画面と異なる部分があります。

 

左側の枠はソースファイルとコンパイルエラーを示します。 右側の枠はMicrosoftのコンパイラからのメッセージやプログラム実行時の情報を表示します

02.Cプログラム作成手順

まずはHelloWorldと書き出すだけのプログラムを作ってみましょう。

1)ファイルの 新規作成 or 読込

新規のプログラム作成は方法1で、それ以外は方法1、2どちらでも可能です。

方法1:

Open(D&D) ボタンでファイルダイアログを開き、新規ソースファイルを作る場合はここで新しい名前を入れます。
※ファイル名の拡張子は.cにすること

 

メモ:拡張子
ファイル名の最後の 「.」に続いて書かれた部分です。Windowsの設定によっては表示されず、アイコンの形でしか区別できないことがあります。プログラミングをする場合は拡張子を表示する設定にしたほうがいいでしょう。

方法2:

ソースファイルのアイコンをマウスでこのボタンにドラッグ&ドロップ

※この場合はデスクトップにあるファイルでもOKです


 

2)編集

Editボタンを押すと編集画面が開きますここで下記のプログラムを書いてください。

#include<stdio.h>
int main(void)
{
    printf("Hello World");
    return 0;
}

 

3).コンパイル

Compile&Linkボタンを押すと、ソースファイルを保存していない場合はダイアログが出て保存を求められます。

「はい」を選択してください。  コンパイルがはじまります。エラーがあると左の枠に中抜きの赤い四角が表示されます。ここを開いてゆくと個々のエラーが示されます。エラー項目はエディターと連動しています。

ここで、エラーが無ければリンクまで、まとめて処理が行われます。

※エラーでなくて警告の場合は黄色い四角で示されます。警告のみなら実行可能ファイルは作られます。

※コンパイルエラーではなくてリンクエラーの場合にはエディターとの連動は行われません。

4)実行

Runボタンを押すと実行が始まります。実行中のプログラムとの入出力は右側の画面で行われます。

 


※プログラムを実行中は「Run」ボタンが「中断」ボタンになります。
※実行中のプログラムへの入力は右下の入力枠に書き込んでエンターキーを押してください。全ての入力を終わるときは、EOFボタンを押してください。これですべての入力を終わることを知らせます。


03.レポートの提出

1).レポートファイルの作成

1)レポート用の初期ファイルをダウンロードする

レポートは課題ごとに用意した初期ファイルを書き換えて作ります。課題のリンクからダウンロードしてください。

初期ファイルは次のようなテキストファイルです。
※このファイルはレポートツール以外で書き変えると、電子署名が不正となりレポートファイルとして使えなくなります。

/*:電子署名:859516228:*/
/*:著者ID:自動設定:認証環境のユーザー名*/
/*:認証環境:基盤センター演習室:*/
/*---------:科目:プログラミング序論:-----------*/
/*---------:課題番号:1:------------------------*/
/*:編集:コピペ禁止:コピーペースト機能は動作停止*/
/*:編集環境:環境制限無し:編集作業はどこでも可能*/


ここからの文書を消してプログラムを書きなさい

課題1:
自分の学籍番号と名前を以下のように改行で区切って2行に書き出すプログラム

0123456789
水野和生

※これ以外の文字は書き出さないこと。スペースなども加えないこと。
---------------------------------------------------------------

2)初期ファイルを認証環境で開く(情報生体システムの電算機演習室でのみ可能です)

認証環境(ここでは情報生体システムの演習室の計算機環境)でレポートツールを使って、初期ファイルを開くと、2行目の著者IDが自動設定されて貴方のログインIDに変化します。このファイルは以後は貴方の専用のレポートファイルです。

※レポートファイルの頭の部分にはレポートの課題番号や編集者IDなどが記述されたシステム領域が在ります。レポートツールでこの部分を書き変える事はできません。

※レポートファイルをレポートツール以外で変更すると不正なファイルとなり、レポートとして送れなくなります。不正なファイルを元に戻すことはできません。

3)レポートファイルの編集ではコピー&ペーストを禁止しています。

プログラムをコピペすると全く学習効果が無くなるためです。自分の手で打たないと基本的な単語さえ覚えられません。プログラムを読んだり書いたりできるようにはなれません。

※レポートファイル以外ではCtrlキーとCキーを同時押し(Ctrl+C)でコピー、Ctrl+Vでペーストが可能です。

4)自宅でのレポートツールは使える?

レポートの作成と送信は学科の演習室でしかできません。

レポート以外の編集や実行は、演習室と同様のMicrosoftのC/C++の処理系及びjavaの実行環境が有れば可能です。しかし、この環境を用意するのは初心者には難しいと思います。当面は学科の演習室を利用して下さい。 

5)レポート送受信とレポート確認は対応する科目のレポートファイル編集中のみ可能です

2).レポート送信(情報生体システムの電算機演習室でのみ可能です)

Reportボタンを押すと、自動で再度コンパイルされ実行が始まります。
実行結果を示す下の画面が開きます。入力が 必要なプログラムでは画面下の入力枠から入力を入れてください。エンターキーで入力されます。 入力の終端をいれたい場合は「入力終端」ボタンを押してください。

実行が正常に終了するとレポートが送信されます。旨く行かない場合は下記の注意を確認してください。

注意1
1)プログラムの出力はバッファリングされ、printfが実行された時に画面に書き出されません。対話的な処理を行うプログラムでは、書き出しを強制的 に行う下記のコマンドを各printf文の後に入れてください。

fflush(stdout); 

注意2

0)不正なレポートファイルではボタンを押してもなにもしません。
1)main関数のreturn 0で終了コード0を返していないと正常に終了したとは見なされません。
2)サーバが停止している場合は送れません。
3)既に同じ課題のレポートが有る場合は上書きの確認画面が開きます。
4)下記のレポート確認で自分のレポートを確認できます。
5)評価済みのレポートには上書きできません

※未評価のレポートについては上書きが自由にできます。

3).レポート確認(情報生体システムの演習室でのみ可能です)

  1. 対応する科目のレポートファイルを編集中でないと確認が行えません。課題番号は違ってもOKです。
  2. LoadReportボタンを押すとサーバから自分のレポートをダウンロードして、このツールと同じディレクトリに Report_XXXX.htmlとして書き出します。このファイルをIE等のWebブラウザで確認してください。旨く行かない場合は下記の注意を確認してください。

注意 サーバが停止している場合は確認できません。

04. 課題1(初期ファイル

以下のように自分の学籍番号自分の名前改行で区切って2行に書き出すプログラムを作り、レポートとして送信しなさい。 学籍番号や氏名の左右に余計な文字や空白を入れてはいけません。

0123456789
水野 和生

※レポートツールの説明のように、初期ファイルをダウンロードして書き換え、レポートを送信してください。

※日本語の文字が関係したエラーが非常に多いようです。
1)名前はローマ字にして半角の文字だけでプログラムを作って実行までを確認する
2)ローマ字部分を漢字に書き換えて実行まで確認
3)レポートを送信
のような手順にすると間違いにくくなります。

ヒント:

printf関数を使って文字列を書き出します。

改行の部分は改行コード(改行を指示する文字)「\n」を使います。これを文字列の中に入れてprintfを呼び出すと、改行コードのところで印字は改行されます。

※教科書によっては、改行コードの表記はバックスラッシュ「\」 を使って\nとなっています。ここで、\nとの見かけの違いは文字コード表の違いが原因です。

コード値0x5C(16進数の5C)にASCIIコード表ではバックスラッシュをJISコード表では円マークを割りあてています。プログラムが0x5Cの値を文字として表示するとき、参照する文字コード表が異なると表示される文字の形が変わります。メールなどで生じる文字化けも使っている文字コード表が違っているために起こる現象です。

注意: 

0)文字の違いに注意 < >( ) { }   あるいは : ; , . には注意

1) return 0;を忘れずに

2)Cのプログラムで漢字などの日本語の文字が使えるのは文字列やコメントの中だけです。特に半角と全角で同じ文字が用意されているものには注意。全角の空白などは見つけにくいエラーの原因になります


[index]