Saisir le contenu d un fichier texte dans une liste chainee

Fermé
yedez Messages postés 69 Date d'inscription dimanche 3 novembre 2013 Statut Membre Dernière intervention 28 avril 2015 - 21 déc. 2013 à 22:19
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 29 déc. 2013 à 11:40
Bonjour, 





On souhaite charger le contenu d'un fichier texte dans une liste en  double chainage (chainage avant et chainage arrière) et effectuer des traitements sur la liste.

La structure de la liste est la suivante :
Struct liste
{
DATA d ;
Struct liste *next ;
Struct liste *prev;
};
Typedef struct liste LISTE;
Le type DATA contient deux champs :
* une chaine de caractère qui contiendra le contenu d'une ligne du fichier texte.
* Le numéro de la ligne du fichier.
Struct data
{
char *s ;
int ligne;
} ;
Typedef struct data DATA ;

On vous demande d'écrire un programme qui permet de charger le contenu d'un fichier texte dans une liste en double chainage

voila mon code de cette fct void charger_liste(LISTE **first,FILE *f)
{
int l=0;
char k[100],code[20];LISTE *p;

f=fopen("f.txt","r+")
while (fgets(k,100,f))
{
sscanf(k,%(strlen(k))s,code);
p=(LISTE*) malloc (sizeof(LISTE));

(p->d).ligne=l++;
strcpy((p->d).s,code);
fseek(f,strlen(k),SEEK_SET);
p->next=*first;
*first=p;
}
le compilateur s arrete au niveau de sscanf (moi meme je sais que c est faux mais j ai pas su comment peut je remplir la liste ligne par ligne ) aidez moi s il vous plait :)
            
                
A voir également:

4 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
29 déc. 2013 à 11:40
sscanf(k,%(strlen(k))s,code);
Pas besoin de rajouter strlen(k) ici. Mets simplement sscanf(k,"%s",code);
1
yedez Messages postés 69 Date d'inscription dimanche 3 novembre 2013 Statut Membre Dernière intervention 28 avril 2015 2
28 déc. 2013 à 21:29
any help please 

                
0
vaudzibir Messages postés 61 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 30 décembre 2013 3
Modifié par vaudzibir le 28/12/2013 à 22:04
L'idée d'un forum, c'est de s'entraider, et non de faire le travail des autres. Je te conseille de voir du côté du Site du zéro.
0
yedez Messages postés 69 Date d'inscription dimanche 3 novembre 2013 Statut Membre Dernière intervention 28 avril 2015 2
28 déc. 2013 à 22:53
merci pour le conseil mai je ne crois que je n tavias pas demande de repondre a l enonce nn !! je vous ai donne mon code et ge demande si ca repond a l enonce ou nn si nn ou se  localise ma faute exactement et merci :)

                
0
vaudzibir Messages postés 61 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 30 décembre 2013 3
28 déc. 2013 à 23:06
Excuse moi,j'ai du me planter de fenêtre .. Je retire ce que j'ai dit :) je vais voir ce que t'as fait et je te redis ça
0