Tom2: (C) Extremnewbie braucht Hilfe beim addieren

Beitrag lesen

#include <h.allo>

Ich hab so zur Übung ein Programm versucht, das 2 Kommazahlen addieren soll, so weit so gut. Wenn ich jetzt aber zB 12.4 und 45.67 eingebe, schreibt er mir hin : Die Summe von 12.400000 und 45.669998 ergibt 58.070000 . Warum ist das so ?

Warum das so ist kann ich dir leider nicht sagen. Tritt der Fehler auch auf, wenn du double anstelle von float benutzst?

#include <stdio.h>

float x, y, z;

Ohohohoh, was ist denn das? Gehört das nicht in die main-Funktion? Oder gibt es eine neue Methode um globale Variablen in C zu deklarieren, von der ich nichts mitbekommen hab?

float summe(float x, float y);

int main(void)   {

Hier gehört nun die deklaration hin:
       float x, y, z;

puts("Gib 2 Kommazahlen nebeneinander ein :");
    scanf("%f %f", &x, &y);

z = summe(x, y);

printf("Die Summe von %f und %f ergibt %f\n", x, y, z);

schreib mal hier
       printf("Die Summe von %f und %f ergibt %f\n",x,y,(x+y);
hin und schau, ob du dasselbe bekommst.

return 0;
}

float summe(float x, float y)   {
      return (x + y);
      }

Naja, eine grosse Hilfe war ich dir wohl kaum, aber setze die Deklarationen am richtigen Ort! Ich kann dir noch die Website http://www.pronix.de empfehlen. Auf ihr findest du einen riesigen C-Kurs von Jürgen Wolf. 1A, hätte den Titel SelfC verdient!

MfG

Tom2