はてダのほうが気楽に使える。

2007年5月25日金曜日

第2回C言語講習会

コメントが付いたということで下準備が完了したということですね。
cygwinが使いにくいという場合は
MinGWとか
MSYSとか
ありますが、プログラミングができれば最低限okですが
暇があったらいろいろ試すのもありかと思います。

では、2回目の講習を始めます。

【変数と型を理解しよう】
今回は足し算をするプログラムを書いてみましょう。

#include <stdio.h>
int main(void)
{
printf("%d", 1+1);
return 0;
}



実用性は見てのとおりありません。なぜなら1+1結果しか出ないからです。
つまり柔軟性が上がれば(1+1以外も計算できれば)実用性のあるプログラムになるということです。
ここで変数が登場します。
基本的に変数に整数を入れるためにはIntger(整数)型というもので初期化が必要です。
int x;

これで変数の初期化が完了します。
これに値を保持させて見ましょう。

int x;
x = 1+2;
printf("%d", x);
これでprintfを探して二番目の引数にカーソルを移動して値を編集しなくても
変数の代入部分の値を変更すればいいことになります。
この程度のことでは便利さは実感できないですが、規模が大きくなればなるほど編集のしやすさは重要になります。
また、
int x = 1+2;
と書いてもいいのですが、頻繁に変更する予定があるなら宣言と初期化の分離を図って2行に
分けるのが"個人的に"分かりやすい気がします。個人の好みなので判断はご自由に。


----
資料(1度は読んで)

変数の初期化とはメモリ上の一部に値を保持しておく領域を作るということです。
そのため領域より大きなデータを入れるとオーバーフローというやつになります。
変数の説明だと以下のページの下の辺りが具体的で分かりやすい。
@IT
といってもJavaの入門ページなので細かく読む必要はありません。(読まなくてもいいです)。

ほかに以下のような型が定義されています。
(http://www.media.osaka-cu.ac.jp/~k-abe/2001-JS-OSAKA-U/C.html)
整数型 int 4バイト -2,147,483,648~2,147,483,647
long 4バイト -2,147,483,648~2,147,483,647
short 2バイト -32,768~32,767
char 1バイト -128~127
実数型 float 4バイト -3.40282*1038 ~ 3.40282*1038
double 8バイト 省略(倍精度)

これらの変数の型は変換することもできますがとりあえず必要はないでしょう。


課題
簡単な足し算をするプログラムを書きましたが、これを発展させてみましょう。
上記に挙げた型を一通り使って足し算をしてください。
基本は同じ型同士で計算をすれば問題は無いですが、
違う型同士で計算してみるのもおもしろいかもしれないですね。(やらなくてもいいです。)
画面出力はprintfのオプションをいくつか応用してみてください。

課題提出はソースと実行結果を添えてコメント欄にコピペしてください。
コピペされたら次回に進みたいと思います。
これは以降も同様です。


すでにTonyu Systemでプログラミング能力があると判断したのであんまし遠慮しないで
進めてますが、もうちょっと分かりやすく書いてくれーとか言われたらすぐに対応するので
コメントつけてください。

0 コメント: