ユーザーがオプションのリストから選択できるメニュープログラムをC ++で記述し、入力がオプションの1つでない場合は、リストを再印刷します。
次のコードを試しましたが、正しい結果が得られません。助けてください。
#include <iostream>
#include <string>
using namespace std;
int main()
{
string j;
string x = "1. Option 1";
string x1 = "2. Option 2";
string x2 = "3. Option 3";
cout << "please select from the menu " << endl;
cout << x << endl;
cout << x1 << endl;
cout << x2 << endl;
cin >> j;
if(j == x)
{
cout << "You have selected the option " << j;
}
else if(j == x1)
{
cout << "if - x1 = You have selected the option " << j;
}
else
{
cout << "if - x2 = You have selected the option " << j;
}
}
列をなして:
if(j == x)
ユーザー入力をj
文字列全体と比較しています。
"1. Option 1"
あなたが欲しいのはそれをオプション番号と比較することです:
if(j == "1")
または:
else if(j.size() >= 1 && j[0] == x1[0])
{
cout << "if - x1 = You have selected the option " << j;
}
メニュー文字列の最初の文字がこのメニューを選択するための識別子であることを確認する場合。
また、else
条件のない最後は、オプションのリストを再印刷する必要がある場所です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加