Home- Exercices - Solutions des exercices

 

Page Précédente - Page Suivante


Exercices chapitre 10 : Les fonctions en C

Exercice 10.1

Soit le programme suivant :

 #include <stdio.h>
 
 main()
 {
  double rayon;
  printf("donnez le rayon du cercle : ");
  scanf("%lf", &rayon);
  printf("La surface de ce cercle est %f. \n", 
                                       SURFACE(rayon));
 }
 
 double PI(void)
 {
  return 3.14159265;
 }
 
 double SURFACE(double r)
 {
  return PI()*r*r;
 }

a) Donnez la hiérarchie des appels pour les trois fonctions. ?
b) Ajouter les déclarations manquantes pour ces 3 méthodes ?
c) Si la fonction n’est pas définie ou déclaré donnez les messages qu’affichera le compilateur ?

 

Exercice 10.2

Traduire le programme suivant en langage C :

 programme PARAMETRES
entier A,B
 |  A <--0
 |  B <--0
 |  P1(A,B)
écrire A,B
 fprogramme (* fin PARAMETRES *)
  procédure P1(X,Y)
donnée: entier X
résultat: entier Y
 |  X <--X+1
 |  Y <--Y+1
écrire X,Y
 fprocédure (* fin P1 *)

Exercice 10.3

Traduire le programme suivant en C.

 programme p1
entier A
 |  A ß 2
écrire A
 |  p2(A)
écrire A
 fprogramme (* fin p1 *)
  procédure p2(X)
donnée: entier X
écrire X
 |  X ß1000
écrire X
 fprocédure (* fin p2 *)

Exercice 10.4

Traduire le programme suivant en C.

 programme CALCULER
entier A,B,C
 |  A ß3
 |  B ß-8
 |  C ß12
écrire A,B,C
 |  MODIFIER(A,B,C)
écrire A,B,C
 fprogramme 
 
 procédure MODIFIER(X,Y,Z)
donnée: entier X
résultat: entier Y,Z
entier T
 |  T ßX
 |  X ßY
 |  Y ßZ
 |  Z ßT
 fprocédure 

Exercice 10.5

Traduire le programme suivant en C.

 programme p
entier A,B,C
 |  A ß208
 |  B ß5
 |  C ß-34
écrire A,B,C
 |  p1(A,B,C)
écrire A,B,C
 fprogramme (* fin p *)
 
 procédure p1(X,Y,Z)
donnée: entier X,Y
résultat: entier Z
écrire X,Y,Z 
 |  X ßX divent 2
 |  Y ßY*2
 |  Z ßX+Y
écrire X,Y,Z 
 fprocédure (* fin p1 *)


Home- Exercices - Solutions des exercices
Copyright © 2019