Programmation C

Bonjour,

float variable;
int N=100;
int nza=145;

variable = N/nza;
printf("%f\n", variable);

Pourquoi il m'affiche 0 au lieu de 0.689 ?

Merci

2 réponses

  1. Modérateur
    Par ce que N et nza sont des entiers.
    0
    1. Bonjour,

      En C, la division de 2 nombres entier est Euclidienne, on obtient donc un nombre entier.
      Pour obtenir une opération flottante, il faut forcer au moins un des 2 à être flottant.
      variable = (float)N / nza;
      Donne le résultat escompté.
      0