你能帮我再次确定我的代码有什么问题吗?每次您选择一个案例时,例如您选择了“1”,即“NBA 球员”,并且系统会询问您最喜欢的球员是谁,您输入答案后程序就会立即结束。我认为问题出在我的 getline 声明中,但我无法真正确定它。
#include<iostream>
#include<conio.h>
#include<string>
using namespace std;
int main()
{
int choice;
string nbaPlayer;
string tele;
string food;
string subject;
string x;
cout << "This program determines your favorites.\n\n";
cout << "Please select the number of your corresponding choice.";
cout << "\n1. NBA Player";
cout << "\n2. Teleserye";
cout << "\n3. Food";
cout << "\n4. Subject";
cout << "\n5. Exit";
cin >> choice;
switch (choice)
{
case 1:
cout << "You have chosen NBA Player.\n";
cout << "Please enter your favorite NBA Player. \n";
getline(cin, nbaPlayer);
cout << "Your favorite NBA player is " << nbaPlayer;
break;
case 2:
cout << "You have chosen Teleserye.\n";
cout << "Please enter your favorite teleserye. \n";
getline(cin, tele);
cout << "Your favorite teleserye is " << tele;
break;
case 3:
cout << "You have chosen food.\n";
cout << "Please enter your favorite food. \n";
getline(cin, food);
cout << "Your favorite food is " << food;
break;
case 4:
cout << "You have chosen subject.\n";
cout << "Please enter your favorite subject. \n";
getline(cin, subject);
cout << "Your favorite subject is " << subject;
break;
case 5:
cout << "You chose to exit.\n";
break;
default:
cout <<"\nInvalid input";
}
getch();
}