Exercice 4
Énoncé
Soient les déclarations suivantes :
int n = 5, p = 9 ;
int q ;
float x ;
Quelle est la valeur affectée aux différentes variables concernées par chacune des
instructions suivantes ?
q = n < p ; /* 1 */
q = n == p ; /* 2 */
q = p % n + p > n ; /* 3 */
x = p / n ; /* 4 */
x = (float) p / n ; /* 5 */
x = (p + 0.5) / n ; /* 6 */
x = (int) (p + 0.5) / n ; /* 7 */
q = n * (p > n ? n : p) ; /* 8 */
q = n * (p < n ? n : p) ; /* 9 */
1. 1
2. 0
3. 5 (p%n vaut 4, tandis que p>n vaut 1).
4. 1 (p/n est d’abord évalué en int, ce qui fournit 1 ; puis le résultat est converti en float,
avant d’être affecté à x).
5. 1.8 (p est converti en float, avant d’être divisé par le résultat de la conversion de n en
float).
6. 1.9 (p est converti en float, avant d’être ajouté à 0.5 ; le résultat est divisé par le
résultat de la conversion de n en float).
7. 1 (p est converti en float, avant d’être ajouté à 0.5 ; le résultat (5.5) est alors converti
en int avant d’être divisé par n).
8. 25
9. 45
24
Précédent

- 25/398

Suivant