Flux rss
Collection CommentÇaMarche.net
Rechercher : dans
Par :

Création liste chainée en C

lisandra, le mercredi 4 mai 2005 à 22:23:36 
 Signaler ce message aux modérateurs

Bonjour à tous,


Je dois écrire une procédure qui permet de créer une liste. Cette procédure peut par exemple se comporter comme suit :
− Demander à l’utilisateur la longueur désirée de la liste : c’est à dire la cardinalité
− Tant que l’on n’a pas atteint cette cardinalité, on créera un maillon et on affectera une valeur au champ donne : cette valeur sera déterminée par l’utilisateur
− Une fois la cardinalité atteinte, la procédure s’arrête
Pour vérifier que notre précédente procédure fonctionne on écrira également une procédure itérative void affiche(t_Liste l) ; qui affiche les éléments de la liste l.

J'avoue que je ne m'en sors pas alors si quelqu'un pouvais m'aider à faire ce programme, je lui en serait très reconnaissant.

Merci beaucoup à tous et à bientot j'espere....

Lisandra

Configuration: Pc portable
Windows xp

1

crack1, le jeudi 5 mai 2005 à 09:25:14
  • +1

Salut,

c pas très dur, envoie moi ton adresse et je t'enverrai un document word t'explicant le fonctionnement d'une liste. Mon adresse est: benson_ondo@hotmail.com

Répondre à crack1

12

hayet, le mardi 6 juin 2006 à 10:09:09

A ce que je peu triée une liste chainée

Répondre à hayet

2

crack1, le jeudi 5 mai 2005 à 09:34:58

ça fait pas serieux de demader l'adresse mail, bon voici un exemple de code:
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <alloc.h> /*ou stdlib.h*/
struct page {int val; struct page *suivant; };
struct page *premier;

int encore(void) /* demande si on en veut encore*/
{
printf("encore (O/N) ? ");
return(toupper(getche())= ='O');
}
void lecture(void)
{
struct page *precedent,*nouveau;
premier=(struct page *)malloc(sizeof(struct page));
puts("entrez votre premier entier");
scanf("%d",&premier->val);
precedent=premier;
while (encore())
{
nouveau=(struct page *)malloc(sizeof(struct page));
precedent->suivant=nouveau;
precedent=nouveau;
puts("\nentrez votre entier");
scanf("%d",&nouveau->val);
}
precedent->suivant=NULL;
}
void affiche(struct page *debut)
{
printf("\nliste : ");
while(debut!=NULL)
{
printf("%d ",debut->val);
debut=debut->suivant;
}
printf("\n");
}
int main(void)
{
lecture();
affiche(premier);
}

si tu as d'autres questions, on est a ta disposition

Répondre à crack1

3

poppyn73, le jeudi 5 mai 2005 à 14:12:42

J'ai essayer de compiler ton code et il y a deux erreurs ! Qu'en penses-tu ?


creation_listechainee.c: In function `encore':

creation_listechainee.c:14: error: syntax error before '=' token

make.exe: *** [creation_listechainee.o] Error 1

Execution terminated

Répondre à poppyn73

4

crack1, le jeudi 5 mai 2005 à 14:19:47

Attend j'installe devc++, ça faisait un bout de temps que je programme pas en c

Répondre à crack1

5

crack1, le jeudi 5 mai 2005 à 14:26:01

C encore moi, enleve l'espace entre les deux == dans la fonction encore().
mais je pense que le plus important est de comprendre la logique.

Répondre à crack1

6

crack1, le jeudi 5 mai 2005 à 14:28:40

Si tu es sur windows avec devc++, il te faudra ajouter:
system("pause") a la fin du main()

Répondre à crack1

7

poppyn73, le jeudi 5 mai 2005 à 15:51:38

T'as raison ! C'était dans l'instruction :
return(toupper(getche())= ='O');

Il ne reste plus qu'une erreur due au manque du fichier d'en-tête alloc.c
je n'ai que 32 fichiers d'en-têtes !

\Dev-Cpp\Packages\creation_listechainee.c C:\Dev-Cpp\Packages\C alloc.h: No such file or directory.

Répondre à poppyn73

8

crack1, le jeudi 5 mai 2005 à 15:57:58

Essai de le mettre en commentaire, il se peut qu'il y ai maintenant un autre include. ça devrait fonctionner

Répondre à crack1

9

lisandra, le jeudi 5 mai 2005 à 20:21:12

Coucou,

Merci à tous de m'aider, c'est vraiment sympa....
Gros bisous....

Répondre à lisandra

10

lisandra, le jeudi 5 mai 2005 à 20:28:54

C encore moi, alors voila g une erreur sur le system pause je comprends pas... g ecrit system("PAUSE"); a la fin du main et ca me met :
46 C:\Documents and Settings\Anto\Bureau\main.c syntax error before string constant
46 C:\Documents and Settings\Anto\Bureau\main.c [Warning] data definition has no type or storage class
C:\Documents and Settings\Anto\Bureau\Makefile.win [Build Error] [main.o] Error 1

pourtant le programme est bon ya pa d'autre erreur....
???

Répondre à lisandra

11

lisandra, le jeudi 5 mai 2005 à 20:58:00
  • +1

Il y avait juste une accolade en trop....

voici la procedure :

#include <stdio.h>
#include <conio.h>
#include <ctype.h>
/* #include <alloc.h> ou stdlib.h*/
struct page {int val; struct page *suivant; };
struct page *premier;

int encore(void)
{
printf("encore (O/N) ? ");
return(toupper(getche())=='O');
}
void lecture(void)
{
struct page *precedent,*nouveau;
premier=(struct page *)malloc(sizeof(struct page));
puts("entrez votre premier entier");
scanf("%d",&premier->val);
precedent=premier;
while (encore())
{
nouveau=(struct page *)malloc(sizeof(struct page));
precedent->suivant=nouveau;
precedent=nouveau;
puts("\nentrez votre entier");
scanf("%d",&nouveau->val);
}
precedent->suivant=NULL;
}
void affiche(struct page *debut)
{
printf("\nliste : ");
while(debut!=NULL)
{
printf("%d ",debut->val);
debut=debut->suivant;
}
printf("\n");
}
int main(void)
{
lecture();
affiche(premier);


system("PAUSE");
return 0;
}

Merci encore a tout ceux qui m'ont aider...

Lisandra

Répondre à lisandra

13

rachid, le lundi 5 novembre 2007 à 11:17:41

Bonjour
j'ai le plaisier de vous demander de me anvayer une documentation sur les listes chainées et la fonction éclatée
merci d'avance

Répondre à rachid

14

raaachid, le samedi 29 décembre 2007 à 11:25:21

Heu ouais bien sur tu a dautres requettes dans ce genre a nous formuler?
Bye

Répondre à raaachid

15

lami20j, le samedi 29 décembre 2007 à 11:30:39

Salut,

c'est une requête assez normale ;-)

Pour rachid

tu peux regarder dans la FAQ CCM Listes simplement chaînées
lami20j

Répondre à lami20j

16

adnene1987, le lundi 28 janvier 2008 à 12:46:23

Cherchez nous des cours bidagogique de liste chainée en C piles et files svp
adnene400@yahoo.fr

Répondre à adnene1987

17

lami20j, le lundi 28 janvier 2008 à 13:12:44
Répondre à lami20j

18

 mawti, le mardi 25 mars 2008 à 18:24:29

Donnez-moi svp un site pour le language c(cours+exercices corrigées)

Répondre à mawti
[C] Parcours d'une liste chainee (Résolu) Bonjour, dans le cadre de l'amélioration d'un programme de pendu pour l'école, je dois manipuler une liste chainée (en langage C). Avant de bousiller le programme, sachant que je ne maitrisais pas trop les liste chainées, j'ai créé un petit programme... www.commentcamarche.net/forum/affich-3818674-c-parcours-d-une-liste-chainee
Creation d'une liste chainee en java Bonjour, j'ai un problème de créer une liste chaine en java et de devlopper ces methgode ListeVide(),nbElement(), insererEnteteListe(),insererEnfinListe(),insertaprer(element precedent ,object objet) www.commentcamarche.net/forum/affich-5617241-creation-d-une-liste-chainee-en-java
Listes chainées en C++ Salut à tous je veux améliorer mes connaissances en utilisant les listes chainées en C++; pour cela je veux quelq'un me donne un site des exercices avec solutions de ce dernier merci d'avance www.commentcamarche.net/forum/affich-1911657-listes-chainees-en-c
Liste simplement chaînéeLISTES SIMPLEMENT CHAINÉES Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la liste IV. Opérations sur les listes chaînées A. Initialisation B. Insertion d'un élément dans la liste 1. Insertion... www.commentcamarche.net/faq/sujet-7444-liste-simplement-chainee
Création d’un listener au niveau du serveur OraclePour créer un listener au niveau d’un serveur de base de données Oracle il suffit d’éditer les fichiers listener.ora tnsnames.ora au niveau du répertoire $ORACLE_HOME/network/admin. Pour démarrer le listener il faut utiliser la commande snrctl start www.commentcamarche.net/faq/sujet-18005-creation-d-un-listener-au-niveau-du-serveur-oracle
Cours des files et pile et listes chainéesbonjour , je cherche un cours de langage c qui contient des parties bien detaillé sur les piles les files et les listes chainées.... et merci a tous les personnes qui veulent m'aidez d'apprendre cette partie www.commentcamarche.net/forum/affich-2532032-cours-des-files-et-pile-et-listes-chainees
Listes chainées : problemesBonjour, Je realise un programme, ayant pour but la réalisation d'une liste chainée en c++. Ce programme comporte deux classe avec cette arborescence : main.cpp |__Pile.cpp |__Pile.h |__Noeud.cpp |__Noeud.h La compilation marche, mais le programme... www.commentcamarche.net/forum/affich-11303221-listes-chainees-problemes
Liste chainé en javaBonjours tout le monde voila j'ai un petit probleme en java, je souhaite faire une liste chainé d'objet . Cette partie j'arrive a la faire, mais le truc c'est que je voudrais afficher les attribut de mon objet Client en utilisant la methode... www.commentcamarche.net/forum/affich-2996194-liste-chaine-en-java
[Brève] Créer sa propre chaîne TVWorldTV propose de créer sa propre chaîne TV en ligne . L'internaute est maître de son contenu, il crée son propre logo de chaîne et affiche ses vidéos en plein écran. Le site n'héberge pas de vidéos, il ne renvoie en fait que sur des liens de vidéos... www.commentcamarche.net/actualites/breve-creer-sa-propre-chaine-tv-4364143-actualite.php3
Langage C - Les listes chaînéesLa notion de structure autoréferrentielle Une structure autoréferrentielle (parfois appelée structure récursive) correspond à une structure dont au moins un des champs contient un pointeur vers une structure de même type. De cette façon on crée... www.commentcamarche.net/contents/c/cliste.php3
Les objets en langage C++La création d'objets En C++, il existe deux façons de créer des objets, c'est-à-dire d'instancier une classe : de façon statique de façon dynamique La création statique La création statique d'objets consiste à créer un objet en lui affectant un... www.commentcamarche.net/contents/cpp/cppobjet.php3
Langage C - Les chaînes de caractèresQu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne... www.commentcamarche.net/contents/c/cstring.php3