Bonjour,

Je suis en train de faire quelques révisions pour passer un examen de programmation impérative. J'ai donc récupéré certains sujets de l'année dernière dont notamment un que j'ai fait mais dont j'aurais souhaité savoir si mes réponses sont correctes étant donné que j'ai quelques doutes et qu'il n'y a pas de correction.

L'énoncé est le suivant :

Donner le prototype de chacune des fonctions appelées par la fonction main définie ci-dessous.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int * g(char); 
int main(int argc, char *argv[]) {
    int i;
    int *pi;
    int a[10];
    int *a2[11];
    int **a3 = a2;
 
    f0('a');
    i = f1(3);
    f2(&i);
    f3(&g);
    f4(&pi);
    pi = f5(a);
    f6(&a3);
    f7(*(&i));
    a3 = f8(&a[0]);
    f9(***(&a2));
    f10(g('a'));
}
Et voici mes réponses :

1) void f0(char);

2) int f1(int);

3) void f2(int *);

4) void f3(int *(*g) (char)) /* Passage de fonction par pointeur */

5) void f4(int **);

6) int *f5(int *);

7) void f6(int ***); /* Gros doute */

8) void f7(int);

9) int **f8(int *);

10) void f9(int);

11) void f10(int *);

Merci.

Cordialement,
Laurent