Bonjour les gars serait-il quelqu'un s'il vous plaît aidez-moi à réparer ce code? Il fonctionne mais il n'effectue pas la tâche qu'il devrait faire. Une fois que vous l'exécutez, il saute automatiquement à l'instruction par défaut et ignore les cas. S'il vous plaît aidez-moi à résoudre ce problème!Commutateur erreur de déclaration en C++
#include<iostream.h>
#include<conio.h>
using namespace std;
int main()
{
int choice;
char nbaPlayer, tele, food, subject, 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";
switch (choice)
{
case 1:
cout << "You have chosen NBA Player.\n";
cout << "Please enter your favorite NBA Player. \n";
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";
cin >> tele;
cout << "Your favorite teleserye is " << tele;
break;
case 3:
cout << "You have chosen food.\n";
cout << "Please enter your favorite food. \n";
cin >> food;
cout << "Your favorite food is " << food;
break;
case 4:
cout << "You have chosen subject.\n";
cout << "Please enter your favorite subject. \n";
cin >> subject;
cout << "Your favorite subject is " << subject;
break;
case 5:
cout << "You chose to exit.\n";
break;
default:
cout <<"\nInvalid input";
}
getch();
}
Petite correction: il ne choisira pas toujours 'default'. C'est un comportement indéfini à lire à partir d'un 'int' non initialisé. En pratique, 'choice' pourrait avoir n'importe quelle valeur. – juanchopanza