0

エラーを入力した後、現在、このプログラムに入力した文字を出力させようとしています。現在、間違った文字を入力すると、通常は z を実行するだけで、「エラー! 正しいタイプを入力してください!」という希望のアウトが表示されます。最初に戻って、もう一度値を入力してもらいます。小文字の p を入力すると、書き込まれた小切手の金額を求めるプロンプトが表示されます。通常は 1 とだけ言います。小切手が入力された後、入力したアカウントの種類を出力して終了します。私が得ている問題は、pではなく最初に入力したzを出力することです。

Account Type の出力をその変数の最後の入力にする方法を教えてください。(グローバル変数は使用できません)

コードはこれです: http://pastebin.com/1DrNcmrR

4

1 に答える 1

0

関数の先頭にすぐ戻るのは悪い習慣です。関数を再度呼び出してエラーを解決しようとするのはお勧めしません。代わりに、入力が適切になるまでしばらく入力してみてはどうでしょうか。

while(true) {
    cin >> answer;
    if(toupper(answer) == 'P' || toupper(answer) == 'C') //#include <cctype>
        break;
    cout << "Error! Please enter a correct type!" << endl;
}

//switch, no default needed
于 2013-11-06T18:11:26.900 に答える