écrire ds 1 file aprés remplisssage d'1 liste
scarface15
-
scarface15 -
scarface15 -
Bonjour,
voila je travaille maintenant sur la création d'un fichier "txt" ou je met aprés la création de ma liste les élément de cette , mais après l'exécution je ne trouve rien .......donc voila mon code aidez moi merci ......@+
#include <stdio.h>
#include <stdlib.h>
typedef struct Element_Liste
{
char* marque_auto;
struct Element_Liste *suivant;
}Element;
//la création d'une nouvelle liste
void creation_liste(Element *nouveau_element)
{
char* marque=(char*)malloc(20*sizeof(char));
printf("vous etes sur le point de creer une nouvelle liste \n\n");
printf("cette liste va contenir vos marques automobiles de type caractere \n \n");
printf("******faites entrez une marque:******\n\n");
scanf("%s",marque);
fflush(stdin);
nouveau_element->marque_auto=marque;
nouveau_element->suivant = NULL;
}
Element* ajout_liste(Element * liste)
{
Element *element;
//allocation d'un nouveau espace pour le nouveau element ajouter au début de la liste
char* marque_a_ajouter=(char*)malloc(20*sizeof(char));
scanf("%s",marque_a_ajouter);
element =(Element*)malloc (sizeof (Element));
element->marque_auto = marque_a_ajouter;
element->suivant = liste;
return element;
}
void affiche(Element *liste)
{
printf("votre liste contient les marques automobiles suivantes : \n \n");
do
{
printf("%s\n",liste->marque_auto);
liste=liste->suivant;
}
while((liste!=NULL));
printf("\n");
printf("merci,au revoir \n\n");
}
void ajout_a_la_fin_liste(Element *liste)
{
//déclaraion
Element *element;
//allocation d'un nouveau espace pour le nouveau element ajouter au début de la liste
char* marque_a_ajouter=(char*)malloc(20*sizeof(char));
//le saut d'une ligne
printf("\n");
//l'ajout d'un nouveau element au début de notre liste déja créer
printf("vous etes sur le point d'ajouter un nouveau element a la fin de votre liste de marques automobile : \n");
printf("\n");
printf("******faites entrez une nouvelle marque:******\n");
scanf("%s",marque_a_ajouter);
element =(Element*)malloc (sizeof (Element));
element->marque_auto = marque_a_ajouter;
element->suivant = NULL;
while(liste->suivant != NULL)
{
liste = liste->suivant;
}
liste->suivant=element;
}
Element* ajout_au_debut_liste(Element * liste)
{
Element *element;
//allocation d'un nouveau espace pour le nouveau element ajouter au début de la liste
char* marque_a_ajouter=(char*)malloc(20*sizeof(char));
//le saut d'une ligne
printf("\n");
//l'ajout d'un nouveau element au début de notre liste déja créer
printf("vous etes sur le point d'ajouter un nouveau element au debut de votre liste de marques automobile : \n\n");
printf("******faites entrez une nouvelle marque:******\n\n");
scanf("%s",marque_a_ajouter);
element =(Element*)malloc (sizeof (Element));
element->marque_auto = marque_a_ajouter;
element->suivant = liste;
return element;
}
int Longueur_liste(Element* nouveau)
{
int count=0;
while (nouveau != NULL) {
count++;
nouveau =nouveau->suivant;
}
return count;
}
int main(int argc, char **argv)
{
FILE* fichier = NULL;
Element *liste=(Element*)malloc (sizeof (Element));
int choix;
int condition;
int creation;
int longueur;
int condition_ajout;
printf(" ====bienvune sur notre programme==== \n\n");
printf("======== Liste De Marques Automobiles =========\n\n");
printf("voulez vous creer une nouvelle liste de marques automobiles ? \n\n");
printf("1=oui,2=non ? \n\n");
printf("tapez votre choix : \t");
scanf("%d", &creation);
printf("\n");
fichier = fopen("liste_de_marques_automobiles.txt", "w");
if (fichier != NULL)
{
if (creation==1)
{
creation_liste(liste);
printf("\n");
printf("voulez vous ajouter d'autres elements a votre liste ? \n");
printf("1=oui,2=non ? \n\n");
printf("tapez votre choix : \t");
scanf("%d", &condition);
printf("\n");
while (condition == 1)
{
printf("entrez une autre marque : \n");
liste=ajout_liste(liste);
printf("\n");
printf("voulez vous ajouter d'autres elements a votre liste ? \n");
printf("1=oui,2=non ? \n\n");
printf("tapez votre choix : \t");
scanf("%d", &condition);
printf("\n");
}
//ajouter un élément au debut ou a la fin si je veut
printf("voulez vous ajouter un autre element au debut/fin de votre liste ? \n ");
printf("1=oui,2=non ? \n");
printf("tapez votre choix : \t");
scanf("%d", &condition_ajout);
printf("\n");
while (condition_ajout == 1)
{
printf("entrer votre choix dans le menu d'ajout suivant : \n");
//demande du choix de l’utilisateur
printf("======= Menu des choix -ajout- ===== \n \n");
printf("1:ajouter un nouveau element au debut de votre liste. \n");
printf("2:ajouter un nouveau element a la fin de votre liste. \n \n");
printf("entrer votre choix \n");
scanf("%d",&choix);
//me donne le choix entre l'ajout au début de cette liste ou a la fin
switch (choix)
{
case 1:
liste=ajout_au_debut_liste(liste);
break;
case 2:
ajout_a_la_fin_liste(liste);
break;
default :
printf("vous n'avez pas fait de choix \n \n");
}
printf("voulez vous ajouter un autre element au debut/fin de votre liste ? \n ");
printf("1=oui,2=non ? \n");
printf("tapez votre choix : \t");
scanf("%d", &condition_ajout);
printf("\n");
}
//il me permet de calculer la longueur de ma liste depuis la création
longueur=Longueur_liste(liste);
//il me permet d'afficher les element de toute ma liste depuis la création
printf("votre liste contient : %d marque (s) automobile (s) ",longueur);
printf("\n");
affiche(liste);
}
else
{
printf("\n");
printf("merci,au revoir \n\n");
}
// On l'écrit dans le fichier
fprintf(fichier,"bonjour",liste);
fclose(fichier);
}
system("pause");
return 0;
}
voila je travaille maintenant sur la création d'un fichier "txt" ou je met aprés la création de ma liste les élément de cette , mais après l'exécution je ne trouve rien .......donc voila mon code aidez moi merci ......@+
#include <stdio.h>
#include <stdlib.h>
typedef struct Element_Liste
{
char* marque_auto;
struct Element_Liste *suivant;
}Element;
//la création d'une nouvelle liste
void creation_liste(Element *nouveau_element)
{
char* marque=(char*)malloc(20*sizeof(char));
printf("vous etes sur le point de creer une nouvelle liste \n\n");
printf("cette liste va contenir vos marques automobiles de type caractere \n \n");
printf("******faites entrez une marque:******\n\n");
scanf("%s",marque);
fflush(stdin);
nouveau_element->marque_auto=marque;
nouveau_element->suivant = NULL;
}
Element* ajout_liste(Element * liste)
{
Element *element;
//allocation d'un nouveau espace pour le nouveau element ajouter au début de la liste
char* marque_a_ajouter=(char*)malloc(20*sizeof(char));
scanf("%s",marque_a_ajouter);
element =(Element*)malloc (sizeof (Element));
element->marque_auto = marque_a_ajouter;
element->suivant = liste;
return element;
}
void affiche(Element *liste)
{
printf("votre liste contient les marques automobiles suivantes : \n \n");
do
{
printf("%s\n",liste->marque_auto);
liste=liste->suivant;
}
while((liste!=NULL));
printf("\n");
printf("merci,au revoir \n\n");
}
void ajout_a_la_fin_liste(Element *liste)
{
//déclaraion
Element *element;
//allocation d'un nouveau espace pour le nouveau element ajouter au début de la liste
char* marque_a_ajouter=(char*)malloc(20*sizeof(char));
//le saut d'une ligne
printf("\n");
//l'ajout d'un nouveau element au début de notre liste déja créer
printf("vous etes sur le point d'ajouter un nouveau element a la fin de votre liste de marques automobile : \n");
printf("\n");
printf("******faites entrez une nouvelle marque:******\n");
scanf("%s",marque_a_ajouter);
element =(Element*)malloc (sizeof (Element));
element->marque_auto = marque_a_ajouter;
element->suivant = NULL;
while(liste->suivant != NULL)
{
liste = liste->suivant;
}
liste->suivant=element;
}
Element* ajout_au_debut_liste(Element * liste)
{
Element *element;
//allocation d'un nouveau espace pour le nouveau element ajouter au début de la liste
char* marque_a_ajouter=(char*)malloc(20*sizeof(char));
//le saut d'une ligne
printf("\n");
//l'ajout d'un nouveau element au début de notre liste déja créer
printf("vous etes sur le point d'ajouter un nouveau element au debut de votre liste de marques automobile : \n\n");
printf("******faites entrez une nouvelle marque:******\n\n");
scanf("%s",marque_a_ajouter);
element =(Element*)malloc (sizeof (Element));
element->marque_auto = marque_a_ajouter;
element->suivant = liste;
return element;
}
int Longueur_liste(Element* nouveau)
{
int count=0;
while (nouveau != NULL) {
count++;
nouveau =nouveau->suivant;
}
return count;
}
int main(int argc, char **argv)
{
FILE* fichier = NULL;
Element *liste=(Element*)malloc (sizeof (Element));
int choix;
int condition;
int creation;
int longueur;
int condition_ajout;
printf(" ====bienvune sur notre programme==== \n\n");
printf("======== Liste De Marques Automobiles =========\n\n");
printf("voulez vous creer une nouvelle liste de marques automobiles ? \n\n");
printf("1=oui,2=non ? \n\n");
printf("tapez votre choix : \t");
scanf("%d", &creation);
printf("\n");
fichier = fopen("liste_de_marques_automobiles.txt", "w");
if (fichier != NULL)
{
if (creation==1)
{
creation_liste(liste);
printf("\n");
printf("voulez vous ajouter d'autres elements a votre liste ? \n");
printf("1=oui,2=non ? \n\n");
printf("tapez votre choix : \t");
scanf("%d", &condition);
printf("\n");
while (condition == 1)
{
printf("entrez une autre marque : \n");
liste=ajout_liste(liste);
printf("\n");
printf("voulez vous ajouter d'autres elements a votre liste ? \n");
printf("1=oui,2=non ? \n\n");
printf("tapez votre choix : \t");
scanf("%d", &condition);
printf("\n");
}
//ajouter un élément au debut ou a la fin si je veut
printf("voulez vous ajouter un autre element au debut/fin de votre liste ? \n ");
printf("1=oui,2=non ? \n");
printf("tapez votre choix : \t");
scanf("%d", &condition_ajout);
printf("\n");
while (condition_ajout == 1)
{
printf("entrer votre choix dans le menu d'ajout suivant : \n");
//demande du choix de l’utilisateur
printf("======= Menu des choix -ajout- ===== \n \n");
printf("1:ajouter un nouveau element au debut de votre liste. \n");
printf("2:ajouter un nouveau element a la fin de votre liste. \n \n");
printf("entrer votre choix \n");
scanf("%d",&choix);
//me donne le choix entre l'ajout au début de cette liste ou a la fin
switch (choix)
{
case 1:
liste=ajout_au_debut_liste(liste);
break;
case 2:
ajout_a_la_fin_liste(liste);
break;
default :
printf("vous n'avez pas fait de choix \n \n");
}
printf("voulez vous ajouter un autre element au debut/fin de votre liste ? \n ");
printf("1=oui,2=non ? \n");
printf("tapez votre choix : \t");
scanf("%d", &condition_ajout);
printf("\n");
}
//il me permet de calculer la longueur de ma liste depuis la création
longueur=Longueur_liste(liste);
//il me permet d'afficher les element de toute ma liste depuis la création
printf("votre liste contient : %d marque (s) automobile (s) ",longueur);
printf("\n");
affiche(liste);
}
else
{
printf("\n");
printf("merci,au revoir \n\n");
}
// On l'écrit dans le fichier
fprintf(fichier,"bonjour",liste);
fclose(fichier);
}
system("pause");
return 0;
}
A voir également:
- écrire ds 1 file aprés remplisssage d'1 liste
- Liste déroulante excel - Guide
- .Dat file - Guide
- Host file - Guide
- .Bin file - Guide
- Ecrire en gras sur whatsapp - Guide
4 réponses
Salut,
// On l'écrit dans le fichier
fprintf(fichier,"bonjour",liste);
Tu dois faire une boucle en partant de début vers la fin de la liste et insérer les éléments dans le fichier.
// On l'écrit dans le fichier
fprintf(fichier,"bonjour",liste);
Tu dois faire une boucle en partant de début vers la fin de la liste et insérer les éléments dans le fichier.
alors voila ma boucle le l'ai mis a la fin du programme mais ca ne marche pas :
fichier = fopen("liste_de_marques.txt", "w");
while(liste->suivant != NULL)
{
while (fichier != NULL)
{
fprintf(fichier"bonjour,voici votre liste de marques auto",liste->marque_auto);
}
}
fclose(fichier);
.................@+
fichier = fopen("liste_de_marques.txt", "w");
while(liste->suivant != NULL)
{
while (fichier != NULL)
{
fprintf(fichier"bonjour,voici votre liste de marques auto",liste->marque_auto);
}
}
fclose(fichier);
.................@+