程序會要求用戶輸入只能由ABCD組成的鏈,如果輸入包含除ABCD以外的字母,則必須顯示錯誤,否則應輸出「ok!」。如何檢查字符串中的每個字符?
string strand1;
again:
cout << "Enter String 1:\n";
cin >> strand1;
for (int i = 0; i <= strand1.length(); i++)
{
if (strand1.at(i) != 'A'&&strand1.at(i) != 'B'&&strand1.at(i) != 'C'&&strand1.at(i) != 'D')
{
cout << "Invalid Input";
system("cls");
goto again;
}
else
{
i++;
}
}
cout << "ok";
_getch();
return 0;
你正在增加我兩次。 –
......不要在循環中使用goto;只是不。這就是說我認爲你一直都沒有想到你的解決方案。當你設計你的代碼時,儘量編寫代碼,就像你在紙上處理它一樣。最後,學習你的循環以及如何操作它們以避免使用GOTO。 Goto是99.99%的案例中撒旦的邪惡產物。在其他情況下,加速程序並且無法避免是必要的罪惡。它仍然很邪惡。 – soulsabr