do {
statements;
} while (expr) ;
(Integer|Real) expr;
【詳細】
do-while ループでは,ループ本体を通る各パスを終ったあとに
テストが行なわれる。ループ本体はつねに,少なくとも 1 回は実行
される。do-while 構文では,まず statements が実行された後,expr
が評価される。それが真(0 でない)ならば,statements は再び実行
される。このループが終了するのは,expr が偽( 0 )になったときで
ある。
C言語と異なり大括弧 { と } を省略できない。do-while ループ中で
break 文を使うと,その do-while ループの外に出る。以下のように
expr に非零の定数を用いると,無限ループとなる。
do
statements;
while (1) ;
【例題】
ゼロが入力されるまで整数を読み込み,和を出力する。
s = 0;
do {
printf("data = ");
{data} = scanf("%d");
s = s + data;
} while (data != 0) ;
print s;
【参照】