Syntaxe et sémantique des fonctions en langage C

Auteur(s) : Denis Conan et Christian Bac
Date : Octobre 2011
Module : CSC4002
Instructions pour le QCM :Pour chacune des questions, plusieurs réponses peuvent être correctes, vous pouvez donc cocher plusieurs cases !

  1. Une fonction en langage C 89 est définie par :
  2. son nom et le type de valeur retournée.
    son nom seul.
    le type de retour, le nom, le nombre et les types d'arguments formels de la fonction.

  3. Le langage C réalise-t-il le passage d'arguments par valeur ou par adresse ?
  4. Par valeur pour les constantes et par adresse pour les variables.
    Par adresse pour les pointeurs et les tableaux, par valeur pour les variables et les constantes.
    Par valeur quel que soit le type d'arguments à la fonction appelée.

  5. En langage C, le retour de fonction :
  6. Doit être d'un type cohérent avec le type du retour de la fonction
    Ne peut retourner qu'un résultat à la fois
    Peut retourner une structure
    Peut retourner le contenu d'un tableau .

  7. Une fonction qui retourne un pointeur peut :
  8. Retourner un pointeur sur n'importe quelle variable locale.
    Retourner un pointeur sur une zone mémoire correspondant aux variables globales.
    Retourner un pointeur sur une zone mémoire allouée dynamiquement

  9. Les types suivants existent en langage C 89 :
  10. caractère
    entier
    virgule flottante
    booléen

  11. L'opérateur d'affectation en langage est un opérateur sans statut particulier. Il est ainsi possible de réutiliser la constante fournie par une affectation. Par exemple, 'a = b = c = 1;' affecte la valeur 1 aux variables c, b et a.
  12. Non, l'opérateur d'affectation est un opérateur spécialisé.
    Oui, l'opérateur d'affectation est un opérateur banalisé.

  13. En langage C, l'instruction composée est réalisée à partir d'instructions groupées dans un bloc entre deux accolades.
  14. Oui
    Non

  15. Une instruction simple est toujours terminée par un point virgule.
  16. Oui
    Non

  17. En langage C, les instructions de contrôle permettant de faire des choix sont les suivantes :
  18. if (expression) instruction else instruction
    
    où la partie else est facultative.
    if expression then instruction else instruction
    
    switch (expression) {
     case const1 : 
           instructions
    ...
     case constn :
           instructions
    } 
    
    case expression in 
      const1 : 
           instructions
    ...
     constn :
           instructions
    esac
    

  19. En langage C, les instructions de contrôle permettant de faire des boucles sont les suivantes :
  20. for (instruction; instruction; instruction) instruction
    
    for (expression;expression;expression) instruction
    
    while (expression) instruction
    
    do instruction while (expression) 
    

Afficher les réponses avec le calcul des résultats