varför funkar det bara med float?

Permalänk
Medlem

varför funkar det bara med float?

Tjenare, har en liten dum fråga här
Har precis börjat med det här att programmera och när jag gör nedanstående funktion så funkar den bara med float och inget annat.
Varför kan jag till exempel inte använda double, unsigned long, long eller någon annan sådan?

#include <stdio.h>
#include <conio.h>
#include <math.h>
#define KMS_PER_MILE 1.609

int
main(void)
{

float miles;
float kms;

printf("Enter the distance in miles\n");
scanf("%f", &miles);

kms = KMS_PER_MILE * miles;

printf("That equals %f kilometers.\n", kms);
getch();
return (0);
}

Permalänk
Medlem

Du byter troligen inte ut allt som behöver bytas ut.

Om du vill använda double istället för float måste du:
1. Ändra "float" till "double"
2. Ändra "%f" till "%lf".

Permalänk
Medlem

1. Ändra "float" till "double"

jo så långt är jag med

2. Ändra "%f" till "%lf".

det var detta som var problemet :/, tack för hjälpen