Enoncé







Quels seront les résultats fournis par ce programme :



#include <stdio.h>

void main()
{
char c ;
int n ;
c = 'S' ;

printf("A : %c\n",c) ;
n = c ;
printf("B : %c\n",n) ;
printf("C : %d %d\n",c,n) ;
printf("D : %x %x\n",c,n) ;
}





Solution



A : S
B : S
C : 83 83
D : 53 53



explications :


A est affiché suivi de c, affiché comme caractère. Or c'est le caractère 'S'. Donc on a l'affichage A : S.

Pareil pour B, puique il est affiché suivi de n, qui est le caractère 'S'.

C est affiché, suivi de la valeur décimale (%d) de n (on rappelle que n est le caractère 'S') et de c (idem). La valeur dé de 'S' est son code ASCII, c'est-à-dire 83. L'affichage est C : 83 83.

D est affiché, suivi de la valeur hexadécimale (%x) de n (on rappelle que n est le caractère 'S') et de c (idem). La valeur hexadé de 'S' est 53. L'affichage est D : 53 53.