[gelöst] C Pointer - Ergebnis wird nicht angezeigt



  • Hi leute,

    ich habe ein Programm geschrieben, jedoch wird das Ergebnis nicht ausgegeben. Da steht nur Das Ergebnis lautet:
    Bitte um Hilfe

    MfG

    #include <stdio.h>
    #include <stdlib.h>
    #include <conio.h>
    #include <string.h>
    
    void aufgabe (float *, float *);
    void rechnung (float *, float *, float*);
    void ergebnis (float *);
    
    int main(int argc, char *argv[])
    {
      float fA;
      float fB;
      float fErgebnis;
    
      aufgabe(&fA, &fB);
      rechnung(&fA, &fB, &fErgebnis);
      ergebnis(&fErgebnis);
    
      getch();
      return 0;
    }
    
    void aufgabe (float *pA, float *pB){
         float fA;
         float fB;
    
         printf("Geben Sie die erste Zahl ein: ");
         scanf("%d", &fA);
         printf("Geben Sie die zweite Zahl ein: ");
         scanf("%d", &fB);
    
         *pA = fA;
         *pB = fB;
         }
    
    void rechnung (float *pA, float *pB, float *pErgebnis){
         *pErgebnis = *pA + *pB;
         }
    
    void ergebnis (float *pErgebnis){
         printf("Das Ergebnis lautet: ", *pErgebnis);
         }
    

    EDIT: Es hat sich erledigt, danke. Oh man die nervosität vor der Klassenarbeit ...
    Habe vergessen bei der Funktion ergebnis ein %f zu schreiben, klar was soll der dann ausgeben 😡



  • Du gibst ja auch nichts aus. Die meisten Compiler sollten da auch meckern.

    void ergebnis (float *pErgebnis){
         printf("Das Ergebnis lautet: %f", *pErgebnis);
         }
    

    Und du benutzt unnötig oft Pointer.



  • lagalopex schrieb:

    Du gibst ja auch nichts aus. Die meisten Compiler sollten da auch meckern.

    void ergebnis (float *pErgebnis){
         printf("Das Ergebnis lautet: %f", *pErgebnis);
         }
    

    Und du benutzt unnötig oft Pointer.

    Das mit den pointern, sag das mal meinem Lehrer ... der will nur sowas


Log in to reply