Bonjour a tous.
Voila, je rencontre quelaues petits preoblemes en langage C (je tiens à dire que je suis débutant ).
Le but est de creer des fiches afin de creer une listes les contenant.
Il faut ensuite afficher ce que l on a entre dans chaque fiche, puis afficher enfin le nombre de fiches composant la liste. La est mon petit probleme.
Voici mon code source :
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define LGTXT 256
typedef struct Fiche
{
char Nom[256];
struct Fiche * Suivante;
}fiche;
typedef struct Dossier{
struct Fiche * debut;
struct Fiche * fin;
}dossier;
typedef struct Liste{
void * debut;
void * fin;
}liste;
Fiche*CreerFiche(char Texte[] )
{
fiche* ptrfiche=(fiche*)malloc(sizeof (fiche));
if(ptrfiche!=NULL)
{
strcpy(ptrfiche->Nom,Texte);
ptrfiche->Suivante=NULL;
}
else
{
printf("Memoire pleine");
}
return ptrfiche ;
}
int main()
{
int arret;
char reponse[256];
fiche* ptrnouveau;
fiche* ptrdebut;
int nombre;
arret = 1;
ptrdebut = NULL;
ptrnouveau = NULL;
nombre = 0;
do{
printf("Entrer le nom de la fiche.\n\nEntrer ''Fin'' pour terminer le programme.\n\n");
gets (reponse);
printf("\n\n\n");
if (strcmp(reponse,"Fin"))
{
ptrnouveau = CreerFiche(reponse);
ptrnouveau->Suivante = ptrdebut;
ptrdebut = ptrnouveau;
nombre++;
}
else arret=0;
}while(arret);
if(nombre>1) printf("Vous avez cree %d fiches.",nombre);
else printf("Vous avez cree %d fiche.",nombre);
getchar();
}
Voilà, par contre, je n'ai pas réussi à faire en sorte que le programme m'affiche ce que j'ai entré.
En fait, je vais donner un exemple de ce que je voudrais
J'entre le nom de la première fiche : aaa
J'entre le nom de la deuxième fiche : bbb
...
J'entre le nom de la n-ième fiche : xxx
J'entre "Fin"
Le programme m'affiche alors :
Vous avez entré n fiches.
Nom de la fiche 1 : aaa
Nom de la fiche 2 : bbb
...
Nom de la fiche n : xxx
Voilà voilà
Quelqu'un pourrait-il m'aider à obtenir ce que je voudrais SVP ?
En vous remerciant.
-----