000
11.02.2003, 17:32 Uhr
~newcomer
Gast
|
Hallo, ich hab mal wieder eine Frage, wer kann mir sagen was an folgendem Codefragment nicht stimmt. Ich erhalte immer, nachdem ich die Anzahl der verschiedenen Konditionen eingegeben hab eine Fehlermeldung und das Programm wird beendet.
C++: |
#include <stdio.h> #include <stdlib.h>
int main(void) {
float *piKapital, *piZinssatz; int iAnzahl, iCount, iWahl; char *pszAuff1 = "Geben Sie die Anzahl der verschiedenen Konditionen ein."; char *pszSpeich = "Fehler bei der Speicherzurodnung, Programm neu starten";
printf("Legen Sie Ihre Konditionentabelle an, darauf basierend koennen" "kuenftig Berechnungen automatisch durchgefuehrt werden.\n\n"); printf("Bitte waehlen:\n1. Tagesgeld\n2. Festgeld\n3. Spareinlagen\n4. Sparbriefe\n");
scanf("%i", &iWahl);
switch(iWahl){ case 1: printf("%s", pszAuff1); scanf("%i", &iAnzahl);
piKapital = (float*) calloc(iAnzahl, sizeof(float)); if (piKapital==NULL){ printf("%s", pszSpeich); exit(EXIT_FAILURE);}
piZinssatz = (float*) calloc(iAnzahl, sizeof(float)); if (piKapital==NULL){ printf("%s", pszSpeich); exit(EXIT_FAILURE);}
for (iCount=0; iCount < iAnzahl; iCount++){
printf("Anlagebetrag folgendermassen eingeben:[10000.00]\n"); scanf("%f", piKapital[iCount]); printf("Zinssatz folgendermassen eingeben [5.00]\n"); scanf("%f", piZinssatz[iCount]);}
printf("\n\n Ihre Konditionentabelle:\n\n"); for(iCount=0; iCount < iAnzahl; iCount++) printf("Kapital:\t%.2f\t%.2f\n", piKapital[iCount], piZinssatz[iCount]);
free( (void*) piKapital); free( (void*) piZinssatz); piKapital==NULL; piZinssatz==NULL; break; case 2: printf("So ne scheisse"); break;} return 0; }
|
Dieser Post wurde am 11.02.2003 um 18:09 Uhr von Uwe editiert. |