1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
#include <stdio.h>
/* -TC- int main() n'est pas une forme valide de main. La norme autorise:
int main(void) ou
int main(int argc, char *argv[]) */
int main(void)
{
/* -TC-
Il est important d'indenter correctement ton programme, pour
le rendre plus lisible. Cela peut te sembler superflu dans un
micro programme tel que celui-là, mais cela te rendra bien
des services, à toi et à tes collègues, par la suite */
/* -TC-
Il est préférable de définir une variable par ligne et éventuellement
de commenter la signification de chaque fonction */
double fhr;
double celc;
/* -TC-
stdout est un flux de sortie tamponé. Le tampon est vidé lorsqu'il
est plein, ou lorsque qu'il rencontre un caractère fin de ligne. Ici,
ine vidange explicite est nécessaire pour s'assurer de l'affichage
de "Enter value of fahrenheit: " */
printf("Enter value of fahrenheit: ");
/* -TC-
Le spécificateur de format correct pour un double est %lf. De plus,
pour sécuriser la saisie, il faudrait vérifier la valeur de retour de
scanf(), mais je laisse cela en suspend pour le moment (on
supposera que l'utilisateur est de bonne volonté et entre une valeur
du type demandé). */
scanf("%lf", & fhr);
/* -TC- Comme cela a déjà été dit, (5/9) vaut 0 (division entière). Pour
obtenir un résultat correct, il faut écrire (5.0/9) ou (5/9.0) ou mieux,
afin d'éviter les convertions implicites, (5.0/9.0)*/
celc = (5.0/9.0) * (fhr - 32.0);
printf("it's: %f celcius\n",celc);
/* -TC-
La fonction main() doit retourner en entier. Par convention, la valeur
retournée est 0 (ou EXIT_SUCCESS définie dans stdlib.h) en cas
d'exécution avec succès, et toute autre valeur ou EXIT_FAILURE
dans le cas contraire */
return 0;
} |
Partager