bonjour,j'ai un problème avec le code ci-dessous dévelopé sous dev C++,au niveau de l'exécution si je choisis n'importe quel chiffre,seulement ce message qui s'affiche:Merci de choisir un nombre entre 1 et 5!
(l'énoncé du problème est en dessous du 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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
 
#include<stdio.h>                                                                                                                   
#include<stdlib.h>
 
 
//La fonction CREFILE
int CREFILE(int*FILE,int*AE,int*AR,int DMAX)
{
 
FILE=(int*)calloc(DMAX,sizeof(int));
*AE=0;
*AR=0;
printf("creation reussie\n");
}
//Fonction vide
 bool FILEVIDE(int*AE,int*AR)
 {
  bool vide;    
 if(*AR==*AE)
 vide=true;
 else 
 vide=false;
 return(vide);
}
//Fonction pleine
 bool FILEPLEINE(int*AE,int*AR)
 {
 bool pleine;
 if(*AE==*AR)
 pleine=true;
 else
 pleine=false;
 return(pleine);
}
//Fonction ajouter
int AJOUTER(int*AR,int*FILE,int DMAX)
{
    int elem;
    printf("ajouter un element:\n");
    scanf("%d",&elem);
    FILE[*AR]= elem;
    *AR =*AR+1;
    if(*AR==DMAX) *AR=0;
    printf("l'element %d est ajouté\n",elem);
    return 0;
}
//Fonction supprimer
int SUPPRIMER(int*AE,int*FILE,int DMAX)
{
    int elem;
FILE[*AE]=elem;
scanf("%d",&elem);
printf("l'element %d est supprimé\t\n",elem);
*AE =*AE+1        ;
if(*AE== DMAX) *AE=0;
}
//Fonction affiche
void AFFICHE(int*FILE,int DMAX)
{
     int i;
     for(i=0;i<=DMAX;i++)
     printf("FILE[%d]=%d",i,FILE[i]);
}
//Fonction principale
#define DMAX 8
    int main()
{
 
 
    int a;
    int AE=0;
    int AR=0;
    int FILE[DMAX];
    bool plein;
    bool vide;
    do
    {
    printf("1.création de la fille\n");
    printf("2.ajouter un élement dans la file\n");
    printf("3.supprimer un élement de la file\n");
    printf("4.afficher les élements de la file\n");
    printf("5.fin du programme\n\n");
    printf("choisir un numero d'une tache\n");
    scanf("%d",&a);
 
    switch(a)
    {
     case'1':
    CREFILE(FILE,&AE,&AR,DMAX);
    break;
    case'2':
    FILEPLEINE(&AE,&AR);
    if(plein==true) 
    {
    printf("la file est pleine\n");
    break;
    }
    else
    {
    AJOUTER(&AR,FILE,DMAX);
    break;
    }
    case'3':
    FILEVIDE(&AE,&AR);
    if(vide==true)
    { 
    printf("la file est vide\n");
    break;
    }
    else
    {
    SUPPRIMER(&AE,FILE,DMAX);
    break;
    }
    case'4':
    FILEVIDE(&AE,&AR);
    if(vide==true)
    { 
    printf("la file est vide\n");
    break;
    }
    else
    {
    AFFICHE(FILE,DMAX);
    break;
    }
    case'5':
    printf("Vous avez choisi de sortir du programme!\n");        
    break;
    default:
    // Si l'utilisateur a saisie un nombre different de {1,2,3,4,5}
    printf("Merci de choisir un nombre entre 1 et 5 !\n");
    break;
    }
    }while(a!='5');
    return 0;
    }
l'énoncé:
écrire le programme qui permet la gestion d'une file de valeurs entières et de longeur 8,pour cela on vous demande d'écrire:
1.la fonction CREFILE qui crée une file vide ds un tableau nommé FILE et de dimension DMAX
2.la fonction FILEVIDE qui fournit une valeur logique vraie ou fausse selon que la file est vide ou non.
3.la fonction FILEPLEINE qui fournit une valeur logique vraie ou fausse selon que la file est pleine ou non.
4.la fonction AJOUTER qui permet d'ajouter une valeur entière dans la file
5.la fonction SUPPRIMER qui supprime l'élément en tête de la file et fournit sa valeur
6.la fonction AFFICHE qui permet d'afficher tous les éléments de la file
7.la fonction principale
j'éspère corriger mon code bientôt et merci d'avance.