was ist an dem Code falsch?

Moderator: Moderatoren

Antworten
Benutzeravatar
beafraid88
Beiträge: 99
Registriert: Sa 25. Okt 2008, 17:34
Wohnort: Aachen/Düsseldorf/Mönchengladbach

was ist an dem Code falsch?

Beitrag von beafraid88 » Di 14. Dez 2010, 23:22

Nabend Leute,

könnt ihr mir sagen, was bei diesem (eig. simplen) Vergleichstest falsch ist?
Wenn ich eine Zahl<0 eingebe, dann wird 1 zurückgegeben und bei einer eingegebenen Zahl>0 wird -1 zurückgegeben :s

#include <stdio.h>
int check (double d) {
if (d>0) return 1;
else if(d<0) return -1;
else return 0;
}


int main() {
double zahl;
int wert;
printf("Zahl eingeben\n");
scanf("%f",&zahl);
wert=check(zahl);
printf("%i\n",wert);
system("PAUSE");
return 0;
}

Gruß Kilian

testuser
Beiträge: 180
Registriert: Mi 25. Jun 2008, 18:47

Re: was ist an dem Code falsch?

Beitrag von testuser » Mi 15. Dez 2010, 00:01

du hast hier zwei möglichkeiten.

Entweder:

Code: Alles auswählen

float zahl;
scanf("%f",&zahl);

oder

Code: Alles auswählen

double zahl;
scanf("%lf",&zahl);
Weil sonst versuchst du bei dir einen float einzulesen um ihn dann als double zu intepretieren
Мои пять копеек

Antworten

Zurück zu „Info I“