Portail informatique Année 2018 – 2019

CSC 3101 – Algorithmique et langage de programmation

Vous pouvez retrouver le jeu ici. En Java les blocs sont identifiés par :
  1. Des parenthèses
  2. Des accolades
  3. Des mots clés du langage
  4. L'identation
Des accolades.
Qu'affiche ce programme ?
  1. Coucou a
  2. Coucou 97
  3. Coucou c
  4. Une erreur
Coucou a. La variable c est un caractère qui vaut 'a'. L'opérateur + promeut c en chaîne de caractère avant de concaténer les deux chaînes.
Qu'affiche ce programme ?
  1. Coucou a
  2. Coucou 97
  3. Coucou x
  4. Une erreur
Coucou 97. La variable c est un caractère qui vaut 'a'. L'affectation de c dans x promeut c en entier, et il s'avère que le caractère 'a' est codé par la valeur 97. L'opérateur + promeut x en chaîne de caractère avant de concaténer les deux chaînes.
Dans le programme suivant, t1 est :
  1. Un tableau de caractères
  2. Une référence vers un tableau d'entiers
  3. Une référence vers un tableau de caractères
  4. Une chaîne de caractères
Une référence vers un tableau de caractères. De façon générale, quand on écrit type[] x, on définit une variable x qui contient des références vers un tableau de type type. L'expression { 'a', 'b', 'c' } alloue un tableau de caractères dans la mémoire, l'initialise et renvoie une référence vers ce tableau. L'expression t1 = { 'a', 'b', 'c' } affecte la référence vers ce tableau à la variable t1. t1 n'est aussi pas une chaîne de caractères car une chaîne de caractères s'écrirait "abc" avec des guillemets et non des apostrophes.
Qu'affiche ce programme ?
  1. a - b - c
  2. x - b - c
  3. a - x - c
  4. a - b - x
a - x - c. Comme présenté sur la figure (le choix de 42 comme numéro d'objet est totalement arbitraire), t2 est aussi une variable qui référence un tableau de caractères. Comme on lui affecte la valeur la valeur t1, t1 et t2 référencent le même tableau, ce qui explique pourquoi t1[1] et t2[1] représentent la même case en mémoire.