#include <iostream> //include header files
using namespace std;
int main() //start of main body
{
int num; //declaring integer
int control=1; //declaring integer
while(control==1)//start of loop, as long as condition is true
{
cout << "Press 1 for coffee" << endl; //writes to standard o/p
cout << "Press 2 for tea" << endl;
cout << "Press 3 for hot chocolate" << endl;
cout << "Press 4 for soft drink" << endl;
cout << "Press 5 to exit" << endl;
cin >> num;
if (num == 1) //code to execute if integer = 1
{
cout << "coffee selected" << endl;
}
else if (num == 2) //code to execute integer = 2
{
cout << "tea selected" << endl;
}
else if (num == 3) //code to execute if integer = 3
{
cout << "hot chocolate selected" << endl;
}
else if (num == 4) //code to execute if integer = 4
{
cout << "soft drink selected" << endl;
}
else if (num == 5) //code to execute if integer = 5
{
cout << "Exit Program" << endl;
control=0;
}
}
}сравнение с строковых литералов результатов в неопределенном поведении, ошибка
вот мой ammended код это работает. Однако я не был уверен в инициализации целого числа num, поэтому я оставил его, но код все еще выполняется и работает правильно.
'если (число == 1)', ** не ** 'если (число == "1")'. – us2012
(Добро пожаловать в stackoverflow.Пожалуйста, прочтите FAQ и для будущих вопросов, имейте в виду, что люди с большей вероятностью помогут вам, если вы (1) сделаете короткий и краткий пример, который показывает, что вы имеете в виду, - вы можете сократить 80% вашего кода, и это все еще показывают проблему и (2) предоставляют точное сообщение об ошибке с номерами строк и отмечают соответствующие строки в вашем коде, поэтому нам не нужно проходить его по строкам.) – us2012
Может также хотеть фактически присвоить что-то 'num 'в какой-то момент. – JasonD