Fehler KP???

12/10/2011 12:58 wootkiller#1
Hey Epvp

Ich schreibe mal ein Spaß Programm zur Übung es rechnet komma und ganzzahlen "+" "-" "*" "/"

und einfach zum spaß mal ein Dummheitstest und da ist das Problem-.-

Immer nach der zweiten Frage stürzt das Programm ab und ich bekomme diese meldung in Fenster:

Process terminated with status -1073741510 (11130 minutes, 39 seconds

Habe schon umgeschrieben klappt auch net ... kann mir einer sagen was der Fehler heißt..

Hier der Code wen euch besser Ideen einfallen um den Code zu verbessern sagst bidde bin Neuling in der Programmirung

Code:
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>
#include <time.h>
#include <dos.h>
#include <winbase.h>

int main() {
    int SKIP;
    float komma, d, komma2, erg, ergD;
    int menu, menuKZ, menuGZ, menu3, zahl1, zahl2, erg2, dum, dum_arennen, rando = 0;
    double pow, ergF, pow2;
    
    srand (time(0));
    rando = rand();
    
    SetConsoleTitle( "First Project by Onur" );


label1:    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+10);                                       //Haupt Menu
           printf("Menu                                                                 Reg[%i]\n\n",rando);
           SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+12);
           printf("<1> Kommazahlen (Bsp. 1.0)\n");
           printf("<2> Ganzzahlen (Bsp. 1)\n");
		   printf("<3> Wie Schlau bist du???\n");
		   SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+9);
		   printf("Mach deine Eingabe < > \b\b\b");
           scanf("%d",&menu);
		   SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+7);
           system("CLS");
    
        if(menu == 1) {                                                                                             //Unter Menu von 1
               printf("<1> Addieren\n");
               printf("<2> Subtrahieren\n");
               printf("<3> Dividieren\n");
               printf("<4> Multiplizieren\n");
               printf("Mach hier deine Eingabe : \b");
               scanf("%d",&menuKZ);
               system("CLS");
                      }

                                if(menuKZ == 1) {                                                                   //Unter menu von Unter menu 1
                                          printf("Gib hier die erste Zahl ein : ");
                                          scanf("%f",&komma);
                                          printf("Gib hier die zweite Zahl ein : ");
                                          scanf("%f",&komma2);
                                          erg = komma + komma2;
                                          erg = (int)(erg*100+0.5)/100.0;
                                          SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+11);
                                          printf("Das Ergebnis ist  ");
                                          SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+12);
                                          printf("%.2f",erg);
                                          SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+11);
                                          printf(" (Gerundet)\n");
                                          SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+7);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }
                                if(menuKZ == 2) {                                                                     //Unter menu von Unter menu 2
                                          printf("Gib hier die erste Zahl ein : ");
                                          scanf("%f",&komma);
                                          printf("Gib hier die zweite zahl ein : ");
                                          scanf("%f",&komma2);
                                          erg = komma - komma2;
                                          erg = (int)(erg*100+0.5)/100.0;
                                          printf("Das Ergebnis ist %.2f (Gerundet)\n",erg);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }
                                if(menuKZ == 3) {                                                                    //Unter menu von Unter menu 3
                                          printf("Gib hier die erste zahl ein : ");
                                          scanf("%f",&komma);
                                          printf("Gib hier die zweite Zahl ein :");
                                          scanf("%f",&komma2);
                                          erg = komma / komma2;
                                          erg = (int)(erg*100+0.5)/100.0;
                                          printf("Das Ergenis ist %.2f (Gerundet)\n",erg);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }
                                if(menuKZ == 4) {                                                                      //Unter menu von Unter menu 4
                                          printf("Gib die erste Zahl ein : ");
                                          scanf("%f",&komma);
                                          printf("Gib hier die zweite zahl ein : ");
                                          scanf("%f",&komma2);
                                          erg = komma * komma2;
                                          erg = (int)(erg*100+0.5)/100.0;
                                          printf("Das Ergebnis ist %.2f (Gerundet)\n",erg);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }
        if(menu == 2) {                                                                                                //Unter menu von 2
               printf("<1> Addieren\n");
               printf("<2> Subtrahieren\n");
               printf("<3> Dividieren\n");
               printf("<4> Multiplizieren\n");
               printf("Mach hier deine Eingabe : \b");
               scanf("%d",&menuGZ);
               system("CLS");
               }
                                if(menuGZ == 1) {                                                                    //Unter menu von Unter menu 1 = 2
                                          printf("Gib die erste zahl ein : ");
                                          scanf("%d",&zahl1);
                                          printf("Gib die zweite zahl ein : ");
                                          scanf("%d",&zahl2);
                                          erg2 = zahl1 + zahl2;
                                          printf("Das Ergebnis ist %d\n",erg2);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }
                                if(menuGZ == 2) {                                                                   //Unter menu von Unter menu 2 = 2
                                          printf("Gib hier die erste Zahl ein : ");
                                          scanf("%f",&komma);
                                          printf("Gib hier die zweite zahl ein : ");
                                          scanf("%f",&komma2);
                                          erg = komma - komma2;
                                          printf("Das Ergebnis ist %d\n",erg);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }
                                if(menuGZ == 3) {                                                                   //Unter menu von Unter menu 3 = 2
                                          printf("Gib hier die erste zahl ein : ");
                                          scanf("%f",&zahl1);
                                          printf("Gib hier die zweite Zahl ein :");
                                          scanf("%d",&zahl2);
                                          erg2 = zahl1 / zahl2;
                                          printf("Das Ergenis ist %d\n",erg2);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }
                                if(menuGZ == 4) {                                                                   //Unter menu von Unter menu 4 = 2
                                          printf("Gib die erste Zahl ein : ");
                                          scanf("%d",&zahl1);
                                          printf("Gib hier die zweite zahl ein : ");
                                          scanf("%d",&zahl2);
                                          erg2 = zahl1 * zahl2;
                                          printf("Das Ergebnis ist %d\n",erg2);
                                          system("pause");
                                          system("CLS");
                                          goto label1;
                                          }

label2:	if(menu == 3) {                                                                                            //Unter menu von 3 
			printf("5 Fische schwimmen im wasser 3 sterben.\n");
			printf("Wie viele leben noch??\n");
			scanf("%d",&dum);
		}

		                                      if(dum == 1) {                                                         //Unter menu von Unter menu 1 = 3
												  printf("Hmmmm Probiers nochmal!!!\n");
												  system("pause");
												  system("CLS");
												  goto label2;
											  }

											  if(dum == 2) {                                                           //Unter menu von Unter menu 2 = 3
                                                  
												  printf("Gratulationnn!!!\n");
												  system("pause");
												  system("CLS");
												  goto label3;
											  }

											  if(dum == 3) {                                                             //Unter menu von Unter menu 3 = 3
												  printf("Denkst du wirklich aus dir wird ma was.....??\n\n");
												  system("pause");
												  system("CLS");
												  goto label2;
											  }

											  if(dum == 4) {                                                            //Unter menu von Unter menu 4 = 3
												  printf("Versuchs mal mit der 3\n");
												  system("pause");
												  system("CLS");
												  goto label2;
											  }
											  
label3: SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+1);                                            //Dummheitstest
        sleep(100);
        printf("-------------------------------------------------\n");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+2);
        printf("-22---22222-22-------22-22222--22-------222------\n");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+3);
        printf("-22---2------22-----22--2------22-----22---22----\n");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+4);
        printf("-22---22222---22---22---22222--22---------22-----\n");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+5);
        printf("-22---2--------22-22----2------22--------22------\n");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+6);
        printf("-2222-22222-----22------22222--22222---22222222--\n");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+9);
        CONSOLE_CURSOR_INFO ci = {10,FALSE};
        SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE) , &ci);
        sleep(900);
        system("CLS");
        goto label4;
        
label4: SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE) , &ci);                                                 // Dummheitstest Level 2
        printf("Sie sind in einem Rennen und ueberholen den Zweiten,\n"); 
        printf("in welcher Position befinden Sie sich jetzt?\n");
        printf("Mach hier deine Eingabe < > \b\b\b");
        scanf("%d",dum_arennen);
        
        if(dum_arennen == 1) {
                       printf("Ouuu tut mir leid versuchs nochmal\n");
                       sleep(1500);
                       system("CLS");
                       goto label;
                       }
        if(dum_arennen == 2) {
                       printf("Herzlichen glückwunsch\n");
                       sleep(1500);
                       goto label;
                       }
        if(dum_arennen == 3) {
                       printf("Versuch die 2\n");
                       sleep(1500);
                       system("CLS");
                       goto label;
                       }
                                     
                                          
                           
label: SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+9);
        printf("So das ist ein Gedächtnis test....;D\n");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+7);
        sleep(1500);
        system("CLS");
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE) , 0*16+4);
        printf("RRRRR---EEEEEE---DDDD----\n");
        printf("R----R--E--------D---D---\n");
        printf("RRRRR---EEEEEE---D----D--\n");
        printf("R---R---E--------D---D---\n");
        printf("R----R--EEEEEE---DDDD----\n");
        sleep(2000);
        printf("Welche Farbe Stand eben im Wort??");


return 0;
}

Danke im vorraus:D
12/10/2011 13:03 Dr. Coxxy#2
poste den code hier, dann kann man dir auch helfen.
12/10/2011 13:15 MoepMeep#3
Oh mein gott, habe selten so einen Schwachsinn lesen müssen.

Und zu deinem problem: [Only registered and activated users can see links. Click Here To Register...]
12/10/2011 16:54 .Infinite#4
Code:
goto
:facepalm:

Code:
system
[Only registered and activated users can see links. Click Here To Register...]

Deine conversions und Rechnungen sehen aus, als würdest du irgendwie krampfhaft versuchen mit integern zu arbeiten...

Ansonsten könntest du für jede Rechenart eine Funktion schreiben und die mit den verschiedenen Typen überladen. Würde das ganze stark abkürzen.

Für das Menü kannst du gut 'switch' und 'case' verwenden.

Ach und bei deinem "Dummheitstest" solltest du die Antwort mit < und > abfragen. Was soll den passieren, wenn einer beispielsweise 12345 eingibt? Du hast nur Antworten für 1-4 definiert...