QCM en programmation C – Types et tailles des données – Partie 2
QCM sur C avec des réponses pour la préparation des entretiens, des tests en ligne, des examens etc.
1. Commenter la sortie de ce code C?
#include <stdio.h>
int main()
{
float a = 0.1;
if (a == 0.1)
printf("equal\n");
else
printf("not equal\n");
}
A equal
B not equal
C la sortie dépend du compilateur
D aucun de ces choix
2. Commenter la sortie de ce code C?
#include <stdio.h>
int main()
{
float a = 0.1;
if (a == 0.1f)
printf("equal\n");
else
printf("not equal\n");
}
A equal
B not equal
C la sortie dépend du compilateur
D aucun de ces choix
3. Commenter la sortie de ce code C?
#include <stdio.h>
int main()
{
int x = 20000;
double y = 26;
int *p = &x;
double *q = &y;
printf("La taille de p = %d et q = %d", sizeof(p), sizeof(q));
return 0;
}
A La taille de p = 4 et q = 4
B La taille de p = 4 et q = 8
C erreur de compilation
D La taille de p = 8 et q = 8
4. Quel conversion est correct par rapport à la taille des types de données?
A char > int > float
B int > char > float
C char < int < double
D double > char > int
5. Quelle est la sortie de ce code C (sur une machine 64 bits)?
#include <stdio.h>
union S
{
int a;
char b;
};
int main()
{
union S s;
printf("%d", sizeof(s));
return 0;
}
A 8
B 5
C 9
D 4
6. Quelle est la sortie de ce code C?
#include <stdio.h>
int main()
{
float y = 'a';
printf("%f", y);
return 0;
}
A a
B erreur d’exécution
C a.0000000
D 97.000000
7. Lequel de ces types de données dont la taille est variable?
A int
B struct
C float
D double

