誤った入力がいくつか入力されている場合は、文を1回だけ印刷する方法: 例: kkkを入力すると、以下の例の代わりに1つの文が印刷されます。 サンプル出力:Cで1回だけ印刷する
はあなたが終了してQを継続するために(再びタイプYをしようとしますか:KKK
エラー:無効な選択肢
はあなたが終了してQを継続するために(再びタイプYをしようとしますか:エラー:
はあなたが終了してQを継続するために、再び(タイプYを試してみますか無効選択肢:エラー:
はあなたがもう一度試してみますか無効選択(タイプYは終了してQを継続します
'K'、 'K'、 'K'、および「\ nを:あなたのvalid=0;
while (valid==0)
{
printf("\nDo you wish to try again (Type Y to continue Q to quit:");
// print statement request for input
scanf(" %c", &choice); // get user input
choice = toupper(choice);
if((choice == 'Y') || (choice == 'Q'))
valid= 1;
else
printf("Error: Invalid choice\n"); // statement
}
'TOUPPER (choice [i]); 'UBは' choice [i] 'が負の値で' EOF'ではないはずです。それが起こらないことを保証するために 'toupper((unsigned char)choice [i]);)を使うことができました。 – chux
@chux良いキャッチ – LPs