Langage C/C++

QCM de langage C avec corrections

Le langage C est fondamental dans le monde de la programmation, utilisé pour développer des logiciels systèmes ainsi que des applications. Cet article propose un questionnaire à choix multiples (QCM) destiné à tester vos connaissances en C, accompagné de corrections détaillées pour chaque question. Ce QCM couvre des concepts de base aux aspects plus avancés.

QCM : Questions et Réponses
Question 1 : Quel est le prototype standard d’une fonction main en C ?

a) int main()
b) void main()
c) main()
d) static main()

Réponse correcte : a) int main()

Correction : En C, la fonction main doit retourner un entier. C’est le statut de sortie du programme. Les prototypes void main() et static main() ne sont pas standards et peuvent ne pas être acceptés par tous les compilateurs.

Question 2 : Quelle instruction est utilisée pour allouer dynamiquement de la mémoire ?

a) alloc()
b) malloc()
c) new
d) create()

Réponse correcte : b) malloc()

Correction : malloc() est une fonction de la bibliothèque standard C qui alloue un bloc de mémoire de taille spécifiée et retourne un pointeur vers le début de ce bloc. Les autres options ne sont pas des fonctions standard en C pour l’allocation de mémoire.

Question 3 : Quel opérateur est utilisé pour accéder aux membres d’une structure via un pointeur en C ?

a) .
b) ->
c) ::
d) #

Réponse correcte : b) ->

Correction : L’opérateur -> est utilisé pour accéder aux membres d’une structure à partir d’un pointeur pointant vers cette structure. L’opérateur . est utilisé lorsque vous avez une instance de structure (et non un pointeur).

Question 4 : Quel mot-clé est utilisé pour sortir d’une boucle ou sauter à l’itération suivante ?

a) break
b) continue
c) exit
d) return

Réponse correcte : a) break, b) continue

Correction :

  • break est utilisé pour sortir complètement d’une boucle.
  • continue provoque le saut des instructions restantes dans le corps de la boucle et reprend l’exécution au début de l’itération suivante.
  • exit et return ne sont pas utilisés spécifiquement pour contrôler les boucles.
Synthèse 😉

Ce QCM est un excellent moyen de tester et de renforcer votre compréhension des principes de base du langage C. Les corrections fournies vous aideront à clarifier vos doutes et à mieux comprendre les bonnes pratiques en C. Pour une maîtrise complète, continuez à explorer ces concepts en écrivant et en exécutant vos propres programmes en C.


Voici trois modèles de QCM en langage C, chacun couvrant un thème différent : les bases du langage, la gestion de la mémoire, et les pointeurs et structures. Ces modèles sont conçus pour tester et renforcer la compréhension des concepts clés de ces domaines.

Modèle 1 : Les Bases du Langage C

Question 1 : Quel type de données serait le plus approprié pour stocker un nombre entier ?
a) float
b) int
c) char
d) double

Question 2 : Quelle structure de contrôle permet de répéter des instructions un nombre spécifié de fois ?
a) if
b) while
c) for
d) switch

Question 3 : Comment écririez-vous une condition if pour vérifier si une variable a est à la fois plus grande que b et plus petite que c ?
a) if (a > b && a < c)
b) if (a > b || a < c)
c) if (a > b) && (a < c)
d) if (a > b) || (a < c)

Modèle 2 : Gestion de la Mémoire

Question 1 : Quelle fonction est utilisée pour libérer la mémoire allouée dynamiquement ?
a) free()
b) remove()
c) delete()
d) clear()

Question 2 : Si vous allouez de la mémoire avec malloc, quelle précaution doit être prise ?
a) Vérifier si le pointeur retourné est NULL
b) Initialiser la mémoire avec init()
c) Utiliser immédiatement la mémoire sans vérification
d) Libérer immédiatement la mémoire après allocation

Question 3 : Combien de bytes sont nécessaires pour stocker une nouvelle allocation de 10 entiers en C ?
a) 10 * sizeof(int)
b) 10 / sizeof(int)
c) sizeof(int[10])
d) 10 + sizeof(int)

Modèle 3 : Pointeurs et Structures

Question 1 : Quel est l’opérateur pour accéder à l’adresse d’une variable ?
a) *
b) &
c) ->
d) .

Question 2 : Que représente ptr->age si ptr est un pointeur vers une structure contenant un membre age ?
a) L’adresse de age dans la structure
b) Le contenu de la variable age dans la structure
c) Une erreur de syntaxe, il faut utiliser *ptr.age
d) Une erreur de syntaxe, il faut utiliser &ptr->age

Question 3 : Si vous avez une structure Personne avec un champ nom de type char[50], comment pouvez-vous déclarer et initialiser une instance de cette structure ?
a) struct Personne p = {"Alice"};
b) struct Personne p; p.nom = "Alice";
c) struct Personne p = {nom: "Alice"};
d) struct Personne p; p->nom = "Alice";

Chaque modèle peut être utilisé dans divers contextes éducatifs ou d’évaluation pour aider les étudiants ou les professionnels à réviser et à approfondir leur compréhension du langage C.

💡👇

QCM – Programmation procédurale en C

Fiche Pratique : Contrôle bas niveau en langage C – QCM Corrigé

Autres articles

Pointeurs en C - Exercices Corrigés avec...
Ce guide propose des exercices corrigés sur les pointeurs en...
Read more
La Vérité sur les Tableaux et les...
Les tableaux et les pointeurs sont au cœur du langage...
Read more
Guide : Déclarer un Pointeur en C...
Cet article vous montre comment déclarer un pointeur en C...
Read more
Guide : L'Allocation Dynamique en C
L'allocation dynamique en C permet de gérer la mémoire de...
Read more
Quand Utiliser les Pointeurs en C ?
Les pointeurs en C sont une fonctionnalité puissante qui permet...
Read more
Guide Complet : Pointeur de Pointeur en...
Un pointeur de pointeur (ou double pointeur) en C est...
Read more
AZ

Recent Posts

Plan de charge dans le Pilotage de projet : Modèle Excel

La réussite d’un projet repose sur une coordination efficace des tâches, une allocation équilibrée des…

2 heures ago

Fiche de processus dans la démarche ISO 9001 : Modèle Excel Pratique

Dans le cadre de la mise en œuvre d'un Système de Management de la Qualité…

3 heures ago

MODÈLE DE PLANIFICATION MAINTENANCE – PLAN DE CHARGE & GANTT

Le plan de charge constitue un outil stratégique permettant d'anticiper, répartir et ajuster la charge…

12 heures ago

Calcul du Stock de Sécurité – Exercices Corrigés avec Indications Issues de l’Expérience Terrain

Le calcul du stock de sécurité est un incontournable de la gestion logistique. Que ce…

1 jour ago

Stock de Sécurité : Méthodes de Calcul, Fiche de Procédure Excel et Retour d’Expérience Terrain

La gestion du stock de sécurité est un levier essentiel pour assurer la continuité des…

1 jour ago

Décomposition et Application des 7 Principes de l’HACCP : Étude de Cas en Restauration

La méthode HACCP (Hazard Analysis Critical Control Point), fondée sur la prévention des risques sanitaires,…

2 jours ago