Bonjour
J'ai écrit un algorithme qui stocke les numéros jusqu'à ce que l'utilisateur tape -1
utilisant une structure de pile -liste représentation-
j’ai très bien écrit l’algorithme et j’ai vérifié que c’est bien, mais quand j’exécute, il ne montre pas le résultat que je veux

c'est mon code

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#include<stdio.h>
#include<stdlib.h>
 
typedef struct Element{
    int nombre;
    Element *suivant;
}element;
 
 
typedef struct Pile{
    Element *premier;
}pile;
 
 
bool Empty(pile *sommet){
	if(sommet== NULL)return true;
	 else return false;
}
 
void push (pile *sommet,int val){
	element *nouv=(element *) malloc (sizeof(element));
 
 
 
	if(nouv==NULL){
		printf("pile est full");
	}
 
	else{
	nouv->nombre=val;
	nouv->suivant=sommet->premier;
	sommet->premier=nouv;}
}
 
void pop (pile *sommet,int val ){
	element *temp=(element*)malloc(sizeof(element));
	if (Empty(sommet)==true){
		printf("pile vide");
	}
	else{
 
	temp=sommet->premier;
	val=temp->nombre;
	sommet->premier=temp->suivant;
 
	free(temp);
	}
}
 
 
 
pile *initPile(){
 
	return NULL;
}
bool full(pile *sommet){
	return false;
}
 
 
 
pile *stock (){
	pile *NP;int v;
 
	NP=initPile();
	puts("donnez vos valeur\n ");
	scanf("%d",&v);
	while( v != (-1) ) {
		push( NP , v );
		scanf( "%d" , &v );
}
return ( NP );
}
 
 
 
void show(pile *sommet){
	element *c;
	c=sommet->premier;
	while(c!=NULL)
{
	printf("%d\n",c->nombre);
	c=c->suivant;
}
}
 
 
main(){
	pile *myPile=initPile();
 
 
myPile=stock();	
 
	show(myPile);
system("pause");
 
}
espérons que vous m'aidez à le résoudre
et mrc d'avance
j'utulise le Dev c