QCM en programmation C – Les noms de variables – Partie 2

QCM sur C avec des réponses pour la préparation des entretiens, des tests en ligne, des examens etc.
 
 

1. Quelle est l’expression valide ?

A int my_nbr = 100, 000;

B int my_nbr = 100000;

C int my nbr = 1000;

D int $my_nbr = 10000;

B
Espace, virgule et $ ne sont pas autorisés dans un nom de variable.

 

2. Quelle est la sortie de ce code C ?
#include <stdio.h>

int main()
{
   printf("Hello World! %d \n", x);
   return 0;
}

A Hello World! x;

B Hello World! suivi par une valeur aléatoire

C Erreur de compilation

D Hello World!

C

Cela entraîne une erreur car la variable x est utilisé sans déclaration préalable. La sortie est comme suite:

$gcc prog1.c
pgm1.c: In function ‘main’:
pgm1.c:4: error: ‘x’ undeclared (first use in this function)
pgm1.c:4: error: (Each undeclared identifier is reported only once
pgm1.c:4: error: for each function it appears in.)

 

3. Quelle est la sortie de ce code C ?
#include <stdio.h>

int main()
{
    int y = 9000;
    int y = 20;
    printf("Hello World! %d\n", y);
    return 0;
}

A Erreur de compilation

B Hello World! 20

C Hello World! 9000

D Hello World! suivi par une valeur aléatoire

A

Puisque y est déjà défini, la redéfinition entraîne une erreur. La sortie comme suite:

$gcc prog2.c
pgm2.c: In function ‘main’:
pgm2.c:5: error: redefinition of ‘y’
pgm2.c:4: note: previous definition of ‘y’ was here

 

4. Lequel des énoncés suivants n’est pas une déclaration valide?

A float PI = 3.14;

B double PI = 3.14;

C int PI = 3.14;

D #define PI 3.14

D
#define PI 3.14 est un préprocesseur, pour faire une substitution textuelle.

 

5. Que se passera-t-il si le programme ci-dessous est exécuté ?
#include <stdio.h>

int main()
{
    int main = 9;
    printf("%d", main);
    return 0;
}

A Cela provoquera une erreur de compilation

B Cela provoquera une erreur d’exécution

C Il fonctionnera sans erreur et affiche 9

D Il entre dans une boucle infinie

C

Dans un programme C, on peut rencontrer le même nom d’une fonction et le même nom d’une variable. Le programme affichera:

$gcc prog3.c
$ a.out
9

 

6. Quel est le problème lors de la déclaration de la variable suivante?
float 4Chambre-Hall-Cuisine?;

A Le nom de la variable commence par un entier

B Le caractère spécial «-»

C Le caractère spécial «?»

D Tout les réponses sont vrais

D
Le nom d’une variable ne doit pas commencer par un entier, et ne doit pas contenir le moins ‘-‘ et le point d’interrogation ‘?’

 

7. Commenter la sortie de ce code C ?
#include <stdio.h>

int main()
{
   int ThisVariablename = 23;
   int ThisVariableName = 26;
   printf("%d", ThisVariableName);
   return 0;
}

A Le programme affiche 23

B Le programme affiche 26

C Le programme affiche une erreur d’exécution

D Le programme entraînera une erreur de compilation en raison de la re-déclaration

B

Le nom des variables « ThisVariablename » et « ThisVariableName » sont distincts car C est sensible à la casse. La sortie est comme suite:

$gcc prog4.c
$ a.out
26

 

 

8. Lequel de ces expressions ne doit pas être un nom de variable ?

A volatile

B export

C friend

D true

A
Le mot « volatile » est un mot-clé en C.

 

3 réflexions sur “QCM en programmation C – Les noms de variables – Partie 2

  • juillet 16, 2020 à 9:04 pm
    Permalien

    La réponse de la question 5 est C. Vous vous êtes trompés en mettant D.

    Répondre
    • juillet 17, 2020 à 11:23 am
      Permalien

      Merci pour cette remarque 🙂

      Répondre
  • novembre 18, 2020 à 3:14 pm
    Permalien

    Merci pour ces exemples.
    Juste pour l’exemple 3, il manque un « ; » à la ligne 5. Sinon, c’est le manque du ; qui est prioritaire.

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *