Premièrement, tu n'as pas testé ce programme, parce que les messages ne sont pas clairs du tout.
Par exemple, quand le programme est lancé, rien ne semble se passer, parce que tu demandes trois entiers sans même l'avoir annoncé à l'utilisateur.
Deuxièmement, tu n'as pas respecté la consigne de l'exercice, qui est d'échanger les entiers avant de les réafficher.
Si je reprends mon guide, ca donnerait:
Pour les pointeurs, ne t'inquiete pas de ce que c'est pour l'instant.
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
21
22
23
24
25
26 #include<stdio.h> void echanger_entiers(int * premier, int * deuxieme) { // cette fonction échange la valeur des entiers désignés par premier et deuxieme // c'est-à-dire, les nombres *premier et *deuxieme. // ... à toi de coder ça } int main () { int a = 0, b = 0, c = 0; //obtenir les trois nombres printf("Veuillez saisir trois nombres entiers:"); scanf("%d %d %d", &a, &b, &c); printf("Vos trois nombres sont: %d %d %d\n", a, b, c); //trier les trois nombres en utilisant la fonction echanger_entiers // par exemple, pour échanger a et b, utiliser echanger_entiers(&a, &b); // ... à toi de coder ça correctement // comme on les a triés, on a maintenant a < b et b < c; //afficher les nombres triés printf("Et dans l'ordre croissant: %d %d %d\n", a, b, c); return 0; }
Il suffit pour l'instant que tu saches que:
- dans la fonction echanger_entiers, *premier s'utilise exactement comme a de main.
- pour appeler la fonction echanger_entiers, il faut lui donner en argument l'adresse des deux variables à échanger. L'adresse d'une variable est obtenue avec l'opérateur &. Ainsi, &a est l'adresse de la variable a.
Partager