C言語には、全部で3つのループ文が用意されています。
while文、for文、そして、do(デュウ)~while文です。
do~while文構文
do~while文は、一般に、次のような書き方で使用します。
do {
繰り返す文;
} while (条件式);
do~while文には、1つ大きな利点があります。それは、繰り返し文が、必ず1回は実行されるという点です。入力チェックの時に威力を発揮します。
- 継続条件式の後の(;)を忘れないよう注意。
円の面積を計算するプログラム。半径入力値が間違っているならば、再入力させる。
int main(void)
{
int r;
double s;
do {
printf("半径?:");
scanf("%d",&r);
} while (r < 0);
s = r * r * 3.14;
printf("面積は %f です。\n",s);
return 0;
}
演習
ミニクイズ
http://lmspress.net/ (登録は : 学籍番号 / 学校e-mailアドレス)
詳しくはLMS Pressとは参照してください。
入力チェックプログラム
下記のプログラムの入力チェックを追加して下さい。
入力値が間違って誤った月を入力された場合、再入力を行ってください。
#include <stdio.h>
int main(int argc, char* argv[])
{
int month;
printf("何月ですか:");
scanf("%d", &month);
switch (month)
{
case 3:
case 4:
case 5:
puts("春です。");
break;
case 6:
case 7:
case 8:
puts("夏です。");
break;
case 9:
case 10:
case 11:
puts("秋です。");
break;
case 12:
case 1:
case 2:
puts("冬です。");
break;
default:
puts("そんな月はありませんよ!!");
}
return 0;
}