を使用して小さなプログラムを実行しようとしていdo-while
ます。
#include<stdio.h>
#include<conio.h>
void main()
{
char another;
int num;
do
{
printf("Enter a number");
scanf("%d",&num);
printf("Square of %d id %d",num,num*num);
printf("Want to another another number y/n");
scanf("%c",&another);
}while(another=='y');
}
プログラムを実行しようとすると、正常に実行されます。数字を入力すると、その二乗が表示されます。そして、なるほどWant to enter another number y/n
。しかし、任意のキー (y または n) を押すとすぐに、Enter キーを押して入力を行う前にプログラムが終了します。何度も試しましたが、成功しませんでした。
しかし、ユーザーに (y/n の代わりに) 1 または 2 のいずれかを入力するように求めると、プログラムは正常に実行されます。その場合、整数入力を取り、while ブロックをチェックできます。の場合another == 1
、プログラムが再度実行されます。
while
私の問題は、条件内の文字を確認できない理由です。