O 棟 529号室
テュールスト マーティン ヤコブ
http://www.sw.it.aoyama.ac.jp/2005/Programming%20Basics%20II/lecture4.html
© 2005 Martin J. Dürst 青山学院大学
宿題: 沢山の printf
を使って面白い文書・模様を出力するプログラムを作ってください:
時間内に完了しなかったら宿題としてやって下さい。できるだけ変数を使って下さい。提出不要。
*
」を使う。)+
: 足し算-
: 引き算*
: 掛け算/
: 割り算%
: 割り算の余りの計算 (整数のみ)-
,++
, --
等+
, -
, *
,
/
, %
等a = a + 5;
a += 5;
(a に 5 を足す)a = a + 1;
→ a += 1;
→ a++;
b = b - 1;
→ b -= 1;
→ b--;
算数演算の場合
20 + 50
20 + 5.5
; 2.0 + 4
; 3.5 *
7.3
代入の場合
int i; double d; i = 1.5; d = 2;
ある式に複数の演算子があるとその評価の順番を決める必要がある。
優先度 | 分類 | 演算子 | 結合の方向 |
高い (先に評価) | 単項 | - , ++ , --
|
右から左 |
掛け算系 | * , / , % |
左から右 | |
足し算系 | + , - |
左から右 | |
低い (後で評価) | 代入系 | = , += , *= 等 |
右から左 |
同じ優先度の演算子で評価の順番を更に決める必要がある。
例: 200 / 4 / 2
: 25 なのか 100 なのか
答え: 200 / 4 / 2
は左から結合するので
(200/4) / 2
で 25 になる。
scanf
scanf
は printf
の反対だが、出力は入力より少々複雑scanf
の例 (整数):int i; printf ("Input an integer: "); scanf ("%d", &i);
scanf
の例 (浮動小数点数):double d; printf ("Input a double: "); scanf ("%lf", &d);
&
と浮動小数点数の場合の
%lf
に注意scanf
を使って対話的に使えるようにして下さい。提出: 再来週の授業 (11月 7日) まで 4 番のプログラムと入出力経過を提出して下さい。