Précédent Remonter Suivant

3  Première compilation et exécution



Exercice 12
   Écrivez un programme qui calcule la factorielle de 10, et affiche le résultat. On définira une fonction

unsigned int 
factorielle (unsigned int n) 
{
  unsigned int i = 1, res = 1;

  while (i  n)
   res = res * i++;
  return res;
}
qui calcule la factorielle de n de façon itérative. On placera le source de ce programme dans le fichier source factorielle.c.


Exercice 13
   Compilez ce programme (le fichier source) par la commande

% gcc -g -Wall -Werror -ansi -pedantic -o factorielle factorielle.c
Si il n'y a pas d'erreur, le compilateur n'affiche rien et génère l'exécutable factorielle. Sinon, le compilateur affiche la liste des erreurs qu'il a détectées. Par exemple
% gcc -g -Wall -Werror -ansi -pedantic -o factorielle factorielle.c
factorielle.c: In function `factorielle':
factorielle.c:6: parse error before `n'
cc1: warnings being treated as errors
factorielle.c: At top level:
factorielle.c:11: warning: return-type defaults to `int'
indique que dans la fonction factorielle du fichier source factorielle.c, il y a une erreur. C'est une erreur de syntaxe à la ligne 6 (while (i n)) où il manque un opérateur entre i et n. La seconde erreur est une admonestation (warning) à la ligne 11 (main()), où le type retourné par la fonction main a été fixé par défaut à int. Lisez donc toujours bien les messages d'erreurs.

Exercice 14
   Corrigez le programme factorielle.c. Exécutez ensuite ce programme.
% factorielle
362880

Précédent Remonter Suivant