Exercice langage C: Fonctions passage des paramètres

Exercice langage C
[tab name=’Exercice langage C’]

Exercice 1

Exécuter le programme suivant et construire les grilles correspondantes. Implémenter le programme ensuite en C.

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

Exercice 2

Exécuter le programme suivant et construire les grilles correspondantes. Implémenter le programme ensuite en C.

 programme TRUC
 |  entier A
 |  en A ranger 2
 |  écrire A
 |  MACHIN(A)
 |  écrire A
 fprogramme (* fin TRUC *)
 procédure MACHIN(X)
 |  donnée: entier X
 |  écrire X
 |  en X ranger 1000
 |  écrire X
 fprocédure (* fin MACHIN *)

Exercice 3

Exécuter le programme suivant et construire les grilles correspondantes. Implémenter le programme ensuite en C.

 programme CALCUL
 |  entier A,B,C
 |  en A ranger 3
 |  en B ranger -8
 |  en C ranger 12
 |  écrire A,B,C
 |  MODIFIER(A,B,C)
 |  écrire A,B,C
 fprogramme (* fin CALCUL *)

 procédure MODIFIER(X,Y,Z)
 |  donnée: entier X
 |  résultat: entier Y,Z
 |  entier T
 |  en T ranger X
 |  en X ranger Y
 |  en Y ranger Z
 |  en Z ranger T
 fprocédure (* fin MODIFIER *)

Exercice 4

Exécuter le programme suivant et construire les grilles correspondantes. Implémenter le programme ensuite en C.

 programme MANIPULATION
 |  entier A,B,C
 |  en A ranger 208
 |  en B ranger 5
 |  en C ranger -34
 |  écrire A,B,C
 |  MANIPULER(A,B,C)
 |  écrire A,B,C
 fprogramme (* fin MANIPULATION *)

 procédure MANIPULER(X,Y,Z)
 |  donnée: entier X,Y
 |  résultat: entier Z
 |  écrire X,Y,Z 
 |  en X ranger X divent 2
 |  en Y ranger Y*2
 |  en Z ranger X+Y
 |  écrire X,Y,Z 
 fprocédure (* fin MANIPULER *)

[/tab][tab name=’Correction’]

Exercice 1

Affichage: 1 1
0 1

Implémentation:

#include <stdio.h>

main()
{
 void P(int X, int *Y); /* Prototype de la fonction appelée */ 
  int A,B;
 A=0;   
 B=0; 
 P(A, &B);
  printf("%d %d \n", A, B);
 return 0;
}

void P(int X, int *Y)
 {
 X = X+1;
 *Y = *Y+1;
 printf("%d %d \n", X, *Y);
}

Exercice 2

Capture2

Affichage: 2

 

2

 

1000

 

2

 

Implémentation:

#include <stdio.h>

main()
{
 void MACHIN(int X); /* Prototype de la fonction appelée */
 int A;
 A=2;   
 printf("%d \n", A);
 MACHIN(A);
 printf("%d \n", A);
 return 0;
}

void MACHIN(int X)
{
 printf("%d \n", X);
 X = 1000;
 printf("%d \n", X);
}

solex05

 

 

Exercice 3

Capture3

Affichage: 3 -8 12

 

3 12 3

 

Implémentation:

#include <stdio.h>

main()
{
 void MODIFIER(int X, int *Y, int *Z); /* Prototype */ 
  int A,B,C;
 A=3;   
 B=-8;
 C=12; 
 printf("%d %d %d \n", A, B, C);
 MODIFIER(A,&B,&C);
  printf("%d %d %d \n", A, B, C);
 return 0;
}
void MODIFIER(int X, int *Y, int *Z)
{
 int T;
 T  = X;
 X  = *Y;
 *Y = *Z;
 *Z = T;
}

 

 

Exercice 4

Capture4

Affichage: 208 5 -34
208 5 -34
104 10 114
208 5 114

 

suite . . .

 

Implémentation:

#include <stdio.h>

main()
{
 void MANIPULER(int X, int Y, int *Z); /* Prototype */ 
  int A,B,C;
 A=208;   
 B=5;
 C=-34; 
 printf("%d %d %d \n", A, B, C);
 MANIPULER(A,B,&C);
  printf("%d %d %d \n", A, B, C);
 return 0;
}
void MANIPULER(int X, int Y, int *Z)
 {
 printf("%d %d %d \n", X, Y, *Z);
 X = X/2;
 Y = Y*2;
 *Z = X+Y;
 printf("%d %d %d \n", X, Y, *Z);
}

 

Exercice langage C

Exercice informatique, Correction exercice, exercices corrigés, Solution exercice, Exercice langage C

[/tab][end_tabset skin= »lightness » ]

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *