FriconiX
Des milliers de pictogrammes gratuits dessinés avec amour!

Cours 8.4. Le mot-clé return dans les fonctions

Introduction

return est un mot-clé du C qui a une double utilité :

Dans une fonction du type void fct(), le return est optionnel. S'il est présent, il s'écrit nécessairement sous la forme return; sans valeur.

Une fonction ne peut retourner qu'une seule valeur. Nous verrons plus tard d'autre mécanismes (pointeurs ou structures) qui permettent à une fonction de retourner plusieurs valeurs.

Syntaxe

Notons que return est un mot-clé du C qui se doit d'être commun à tous les compilateurs respectant la norme ANSI. return n'étant pas une fonction, les parenthèses ne sont pas nécessaires :

return (5);

devrait plutôt s'écrire :

return 5;

Le mot-clé return peut être suivi

Voici quelques exemples :

// Valeur constante
return 35.65;

// Calcul
return 2*3.1415;

// Constante symbolique
return M_PI;

// Variable 
return maVariable;

// Fonction
return cos(3.1415);

Exercice

Écrire une fonction int premier(unsigned int n); qui recoit un entier positif n en paramètre.

Un nombre premier est un entier naturel qui admet exactement deux diviseurs distincts entiers et positifs (1 et lui-même).

Tester la fonction avec le code suivant dans le programme principal :

unsigned int x, p;

// Saisie d'un entier positif
printf("Entrez un entier positif :");
scanf ("%u", &x);

// Analyse si l'entier saisi est un nombre premier
p = premier (x);
switch (p) {
  case 0: printf ("Par convention, 0 et 1 ne sont pas des nombres premiers.\n"); break;
  case 1: printf ("%d est un nombre premier.\n",x); break;
  default: printf ("%d est un diviseur de %d.\n", p, x); break;
}

Voici quelques exemples d'exécution du programme :

Entrez un entier positif : 1
Par convention 0 et 1 ne sont pas des nombres premiers.
Entrez un entier positif : 125
5 est un diviseur de 125.
Entrez un entier positif : 11
11 est un nombre premier.

Quiz

En C, le mot-clé return permet :

Vérifier Bravo ! Essaie encore ...

Considérons la fonction suivante :

void fct(int i);
Vérifier Bravo ! Essaie encore ...

return est ...

Vérifier Bravo ! Essaie encore ...

Qu'affiche la fonction suivante :

void test() {
  printf ("Hello");
  return;
  print f("Bye");
}
Vérifier Bravo ! Essaie encore ...

Quelles syntaxes permettent de retourner plusieurs valeurs ?

Vérifier Bravo ! Essaie encore ...

Voir aussi


Dernière mise à jour : 07/11/2020