Dass das Fenster geschlossen wird, liegt dadran dass das Programm bei "return 0;" zuende ist und die Konsole deshalb schließt. Entweder du öffnest das Programm in der Konsole oder du zwingst es noch offen zu bleiben. Da gibt es 2 Möglichkeiten - zum einen mit "cin.ignore(); cin.get();" oder mit "system("Pause");" jedoch ist die zweite Möglichkeit nur auf Windows möglich und du musst noch includieren - "#include <windows.h>. So. Weiter. Er fragt nur einmal eine Zahl ab, da dies im Programmablauf auch nur einmal gefordert wird bevor er bei "return 0;" ankommt, man könnte z.B. eine While-Schleife benutzen um solange Zahlen abzufragen, bis er Beispielsweise eine "999" eingibt.
So hier:
Code:
#include <iostream>
#include <windows.h>
using namespace std;
int main (void){
do{
int i1;
bool Done = false;
cout << "Bitte eine Zahl eingeben!"<<endl;
cin >> i1;
switch(i1) {
case 1:
cout << "Zahl 1" << endl;
break;
case 2:
cout << "Zahl 2" << endl;
break;
case 3:
cout << "Zahl 3" << endl;
break;
case 999:
cout << "Beende Schleife!"<<endl;
Done = true;
break;
default:
cout << "Sonstige";
}
}while(!Done);
system("PAUSE");
return(0);
}