Problème fonction basique en C

Hey ! :slight_smile:

Je me suis remis un peu au C dernièrement et j’ai voulu reprendre avec les fonctions. Seulement je suis confronté à un problème que j’ai du mal à comprendre.
Je réalise une fonction ayant pour but de convertir des euros en francs. Voila mon code :

#include <stdio.h>
#include <stdlib.h>

double conversion(double a)
{
    return a * 6.55957;
}   

int main(int argc, char *argv[])
{
    double francs = 0, euros = 0;
   
    printf("Entrez une valeur en euros... ");
    scanf("%ld", &euros);
   
    francs = conversion(euros);
    printf("La valeur en francs est de %lf\n", francs);
   
    system("PAUSE");   
    return 0;
}

Quand j’exécute ce code, le programme m’affiche “La valeur en francs est de 0.0000”.
Si quelqu’un a la solution de mon problème, je le remercie d’avance de m’aider :wink: !

dans ton scanf tu lis un %ld au lieu d’un %lf

Merci beaucoup ! En effet la solution se trouvait dans le %ld / %lf. Merci beaucoup pour ton aide ! :smiley: