• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

C - Fehlersuche

benno_O

Neues Mitglied
Hi,
ersteinmal kurz zu mir. Ich bin neu hier im Forum und studiere im richtigen Leben Informationstechnik. Da haben wir nun auch mit C angefangen. Vorher habe ich noch nie etwas Programiert daher sind meine Kenntnise in dem Bereich wirklich nicht sehr gut.

So nun mal zu meinem Programm, welches ich zur Übung geschrieben habe:

Code:
#include <stdio.h>

float Porto_Kosten(short breite, short hoehe, short laenge, short anzahl);

int main (void)
{
 int breite=0, hoehe=0, laenge=0, anzahl=0;
 float gesamtporto;
 
 puts("Bitte Breite eingeben\n");
 scanf("%i", &breite);
 puts("Bitte Hoehe eingeben\n");
 scanf("%i", &hoehe);
 puts("Bitte Laenge eingeben\n");
 scanf("%i", &laenge);
 puts("Bitte Anzahl eingeben\n");
 scanf("%i", &anzahl); 
 
 
 printf("Gesamtporto:%i\n", Porto_Kosten(breite, hoehe, laenge, anzahl)) ;

float Porto_Kosten(short breite, short hoehe, short laenge, short anzahl)
{ 
 int volumen=0, porto=0; 
 float skonto=0, gesamtporto=0;
 
 if(breite <= 100 & hoehe <= 100 & laenge <= 100)
          {
           volumen = (breite * hoehe * laenge) / 1000;
           if(volumen >  50)
           porto=10;
           if(volumen > 200)
           porto=20;
           if(volumen > 500)
           porto=50;
           if(volumen <  50)
           porto=5;
           if(anzahl > 10)
           skonto=0.1;
           else
           skonto=0.0;
           
           gesamtporto = porto * anzahl * (1-skonto);
          }
          
 else
          {
          puts("Mindestens eine Seite ist nicht im zugelassenen Bereich der Paketabmessungen!");   
          gesamtporto=0;
          }    
 
 return gesamtporto;
}

system ("Pause");

return 0; 
}
Nun habe ich aber folgende Fehlermeldung beim kompilieren bekommen:

[Linker error]undefined reference to 'Porto_Kosten'
Id returned 1 exit status

Zum Programmieren benutze ich Dev-C++.
Leider bekomme ich den Fehler nicht weg. Ich vermute ja das es was mit der Rückgabe zum Main Programm zu tun hat, aber ich finde da nichts. Ich hoffe das da nicht nur irgendwo ein Buchstabendreher drin ist oder was anderes dummes.

Allgemeine Verbesserungsvorschläge für das Programm nehme ich auch sehr gerne entgegen.

Vielen Dank im Voraus für eure Hilfe.

benno_O
 
Die Funktion Porto_Kosten() muss außerhalb der Funktion main(). Entweder du setzt sie unter main, oder darüber und kannst dir dann die Zeile sparen (die hatte irgendeinen Namen, C++ is nur schon länger her)
 
Zurück
Oben