コードがあります。アイデアは、私が数字を入力する必要があるときですが、数字以外の文字を入力し、エラーをチェックして、働く番号を入力するか、続行するか壊すかを要求します。しかし、それは数字を入力しないためのコードを飛び越えます。これはコードです:エラーコードCのジャンプコード
int EnterNumber(){
int number;
printf("Enter your's number:");
if(!scanf("%d", &number)){
puts("Keypress don't number!");
int choose = 0;
puts("Work:\n\t1. Continue 2. Break \nYour's number will choose:");
while(!scanf("%d", &choose)){ // here it jumped.I cann't enter number!
switch(choose){
case 1:
EnterNumber();
break;
case 2:
break;
default:
puts("Keyboard don't recognize");
break;
}
}
}
return number;
}
エラーを修正するのにお手伝いできますか?
それはあなたがおそらくここにしたくない*再帰*、である、「ジャンプ」ではありません。あなたはすでに 'while'ループを持っています。ただ修正してください。 –
あなたは私のために正確にエラーを言うことができます! –
ありがとうございます。私は問題を解決した! –