Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2411 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Exam d'info, Help

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Exam d'info, Help

n°1576286
marcuspopo​v
Posté le 18-06-2007 à 14:27:43  profilanswer
 

Salut ! désolé du dérangement, mais j'ai eu un exam a la fac, et en fait, on as pas eu la lecon dessus :(
c'est sur les Listes en "C".
Donc si quelqun pouvais m'expliquer un peut ou m'aider vite fait a faire l'exo, ça me permetrait de bien le capter pour la repeche (saletée xD)
 
Voila l'exam :
 
Questions :

Citation :


Implémentez la fonction initListe qui initialise la liste à NULL ;
Implémentez la fonction afficheListe qui affiche les éléments de la liste;
Ecrire la fonction ajouteDebut qui ajoute un élément en début de la liste;


 
Code :

Citation :


typedef struct ptelement
{ int             valeur ;
  ptelement    *suivant ; } element ;
 
typedef struct
{ element      *debut ; } Liste ;
 
void initListe (Liste * MaListe) { . . . };
void afficheListe (Liste * MaListe) { . . . };
void ajouteDebut (Liste * MaListe, int val) { . . . };
 
int main
{ Liste            MaListe ;
   initListe (&MaListe) ;
   ajouteDebut (&MaListe, 6) ; ajouteDebut (&MaListe, 4) ;
   afficheListe (&MaListe); } ;


 
 
 
 
 
Merci d'avance !
 
PoPoV

mood
Publicité
Posté le 18-06-2007 à 14:27:43  profilanswer
 

n°1576290
zecrazytux
Posté le 18-06-2007 à 14:28:51  profilanswer
 

ben vas y, fait :)


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1576291
_darkalt3_
Proctopathe
Posté le 18-06-2007 à 14:30:29  profilanswer
 

Google/Listes chainées


---------------
Töp of the plöp
n°1576297
marcuspopo​v
Posté le 18-06-2007 à 14:33:36  profilanswer
 

salut !
 
@zecrazytux : pas comprit xD
@_darkalt3_ : j'ai déja regarder, et je doit avouer, c'est assé flou :(
 
si je demande une petite correction c'est pour permetre de bien comprendre sur cet exemple auquel j'ai été confronter en exam
 
Merci d'avoir répondu vite
 
PoPoV

n°1576299
_darkalt3_
Proctopathe
Posté le 18-06-2007 à 14:35:30  profilanswer
 

marcuspopov a écrit :

salut !
 
@zecrazytux : pas comprit xD
@_darkalt3_ : j'ai déja regarder, et je doit avouer, c'est assé flou :(
 
si je demande une petite correction c'est pour permetre de bien comprendre sur cet exemple auquel j'ai été confronter en exam
 
Merci d'avoir répondu vite
 
PoPoV


Correction implique que tu proposes une solution qui sera corrigée.


---------------
Töp of the plöp
n°1576304
marcuspopo​v
Posté le 18-06-2007 à 14:38:13  profilanswer
 

je vai essayer de poster un truc mais bon, ça va pas aller loin ^^
si quelqun a une reponse au probleme ça peut aider, merci !
 
PoPoV (mode completement a l'ouest sur ce cour)

n°1576305
_darkalt3_
Proctopathe
Posté le 18-06-2007 à 14:48:08  profilanswer
 

Nan mais c'est écrit dans les règles, personne fera ton exo à ta place, mais il sera corrigé si tu fais une proposition et que tu y mets du tiens.


---------------
Töp of the plöp
n°1576311
marcuspopo​v
Posté le 18-06-2007 à 14:53:00  profilanswer
 

initListe (Liste * MaListe) {
ptelement=debut;
 
return NULL;
}
 
afficheListe (aucune idee)
 
ajouteDebut (Liste *MaListe, int val) {
 
nouveau =  (element*) malloc (sizeof (element) ) ;
 
if ( nouveau !=NULL){
nouveau->suivant=debut;
nouveau->debut=val;
}
 return debut;
}
 
edit : voila mon code, j'ai essayer avec un tuto que jai trouver sur le net , je sait, ça donne pas grand chose
 
@_darkalt3_ : pas de soucis :) de toute facon, il faut que je comprenne donc autant marquer tout mon possible


Message édité par marcuspopov le 18-06-2007 à 14:54:07
n°1576314
_darkalt3_
Proctopathe
Posté le 18-06-2007 à 14:58:21  profilanswer
 

Compile et teste ça.


---------------
Töp of the plöp
n°1576323
marcuspopo​v
Posté le 18-06-2007 à 15:13:21  profilanswer
 

tout bug :(

mood
Publicité
Posté le 18-06-2007 à 15:13:21  profilanswer
 

n°1576337
_darkalt3_
Proctopathe
Posté le 18-06-2007 à 15:54:51  profilanswer
 

Messages d'erreur ?
Arme toi de la doc pour tenter de les comprendre.


---------------
Töp of the plöp
n°1576352
marcuspopo​v
Posté le 18-06-2007 à 16:20:55  profilanswer
 

@_darkalt3_ :
voila ce que ça donne :
 

Citation :


Compilateur: Default compiler
Exécution de  gcc.exe...
gcc.exe "C:\Dev-Cpp\main.c" -o "C:\Dev-Cpp\main.exe"    -I"C:\Dev-Cpp\include"   -L"C:\Dev-Cpp\lib"  
C:\Dev-Cpp\main.c:6: error: syntax error before "ptelement"
C:\Dev-Cpp\main.c:6: warning: no semicolon at end of struct or union
C:\Dev-Cpp\main.c:6: warning: data definition has no type or storage class
C:\Dev-Cpp\main.c:9: error: syntax error before "element"
C:\Dev-Cpp\main.c:9: warning: no semicolon at end of struct or union
 
C:\Dev-Cpp\main.c:9: warning: data definition has no type or storage class
C:\Dev-Cpp\main.c: In function `main':
C:\Dev-Cpp\main.c:15: error: `MaListe' undeclared (first use in this function)
C:\Dev-Cpp\main.c:15: error: (Each undeclared identifier is reported only once
C:\Dev-Cpp\main.c:15: error: for each function it appears in.)
 
C:\Dev-Cpp\main.c: At top level:
C:\Dev-Cpp\main.c:23: error: syntax error before '*' token
C:\Dev-Cpp\main.c: In function `initListe':
C:\Dev-Cpp\main.c:24: error: `ptelement' undeclared (first use in this function)
C:\Dev-Cpp\main.c:24: error: `debut' undeclared (first use in this function)
C:\Dev-Cpp\main.c:26: warning: return makes integer from pointer without a cast
C:\Dev-Cpp\main.c: At top level:
C:\Dev-Cpp\main.c:30: error: syntax error before '*' token
 
C:\Dev-Cpp\main.c: In function `ajouteDebut':
C:\Dev-Cpp\main.c:32: error: `nouveau' undeclared (first use in this function)
C:\Dev-Cpp\main.c:32: error: syntax error before ')' token
C:\Dev-Cpp\main.c:35: error: `debut' undeclared (first use in this function)
 
Exécution terminée
 


 
Donc j'en déduit sertaines variables pas déclaré, mais appart ça, je ne voi aucune erreur :s
dailleur, comment faire pour que ces variables qui sont pourtant déclaré avant, soit reconnue?
 
exemple ici :
 
typedef struct ptelement  
{ int  valeur ;
  ptelement    *suivant ; }element ;
 
jai ce message d'erreur :  

Citation :


C:\Dev-Cpp\main.c:6: error: syntax error before "ptelement"
C:\Dev-Cpp\main.c:6: warning: no semicolon at end of struct or union
C:\Dev-Cpp\main.c:6: warning: data definition has no type or storage class
C:\Dev-Cpp\main.c:9: error: syntax error before "element"
C:\Dev-Cpp\main.c:9: warning: no semicolon at end of struct or union
 
C:\Dev-Cpp\main.c:9: warning: data definition has no type or storage class


 
voila :(
j'ai vraiment l'air d'un con mdr ça m'énerve, en plus faudrais que je comprenne bien pour ma repeche...
 
PoPoV

n°1576403
Elmoricq
Modérateur
Posté le 18-06-2007 à 17:10:24  profilanswer
 

Arme-toi également d'un dictionnaire d'anglais.

n°1576525
marcuspopo​v
Posté le 18-06-2007 à 21:27:25  profilanswer
 

je comprend ce que ça veu dire, mais je trouve pas les erreur, par exemple : erreur avant tel truc...probleme, je trouve pas le probleme :(
 
voila :(

n°1576528
Sve@r
Posté le 18-06-2007 à 21:49:39  profilanswer
 

marcuspopov a écrit :

je comprend ce que ça veu dire, mais je trouve pas les erreur, par exemple : erreur avant tel truc...probleme, je trouve pas le probleme :(
 
voila :(


 
Le problème d'une erreur de syntaxe, c'est que si tu fais une erreur en ligne 12, le compilo ne la comprned pas, il croit que la ligne n° 13 sera la suite et comme il ne pipe plus rien il s'arrête et te met "erreur ligne 13" alors qu'il faut aller regarder ligne 12.
 
De plus, si une ligne importante (par exemple une définition de fonction) est pas comprise, la fonction n'est pas définie et le compilo ne pipe plus rien aux 40 lignes suivantes. Tout ça pour dire que quand tu as une tétra chiée d'erreurs, regarde la PREMIERE, corrige-la et recompile. Ca peut te libérer d'un coup une grosse partie des suivantes...
 
Voici ton code. Regarde mes commentaires

initListe (Liste * MaListe) {
    ptelement=debut;
    return NULL;
}
// Erreur => Ta fonction n'a pas de type - D'où sort cette variable "ptelement" ???
 
afficheListe (aucune idee)
// Tu initialises une boucle avec un pointeur sur le premier élément
// Tu affiches cet élément et si cet élément n'est pas le dernier (pt->suivant != NULL), alors tu places ton pointeur sur le suivant et redo
 
ajouteDebut (Liste *MaListe, int val) {
 
     nouveau =  (element*) malloc (sizeof (element) ) ;
 
     if ( nouveau !=NULL){
        nouveau->suivant=debut;
        nouveau->debut=val;
    }
     return debut;
}
// Ici aussi faut un type à ta fonction - Accessoirement déclarer ses variables serait un plus...


 
PS: On ne se met pas au C la veille d'un exam...


Message édité par Sve@r le 18-06-2007 à 21:52:15

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1576751
_Reggae_
Posté le 19-06-2007 à 13:24:57  profilanswer
 

marcuspopov a écrit :

Salut ! désolé du dérangement, mais j'ai eu un exam a la fac, et en fait, on as pas eu la lecon dessus , c'est sur les Listes en "C".


http://www.siteduzero.com/tuto-3-9 [...] inees.html

 

Message cité 1 fois
Message édité par _Reggae_ le 19-06-2007 à 13:25:14
n°1577450
exhortae
Membre du Cartel des Médecins
Posté le 20-06-2007 à 22:01:30  profilanswer
 


 
 
+1 très bon tuto, jlai suivi en début d'année ça m'a donné un avantage certain en cours de C niveau liste (files, piles, arbres).

n°1577453
_darkalt3_
Proctopathe
Posté le 20-06-2007 à 22:05:27  profilanswer
 
n°1577615
_Reggae_
Posté le 21-06-2007 à 13:17:55  profilanswer
 


Ah tien, j'avais pas vu que Emmanuel avais terminer sa page sur les listes chainees ...
 

n°1594998
marcuspopo​v
Posté le 02-08-2007 à 15:28:13  profilanswer
 

merci beaucoup, désolé du retard de votre message !
merci ça ma bc aider pour les exams !

n°1595152
Sve@r
Posté le 02-08-2007 à 18:06:06  profilanswer
 

marcuspopov a écrit :

merci beaucoup, désolé du retard de votre message !
merci ça ma bc aider pour les exams !


Tiens ? Un revenant...  :bounce:


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Exam d'info, Help

 

Sujets relatifs
Menu flash...Help pour la fonction GeturlUrgent - Please Macro Help me !!!!!
Créer un prog qui créer un .txt avec info complet des PC (2)[HELP] Problème de Tableau
Fonction recursive, HelpHelp problème debogage avec mon jeu vba
Créer un prog qui créer un .txt avec info complet des PCHelp Programmation division binaire C
HELP !Huffman !! Help!!!
Plus de sujets relatifs à : Exam d'info, Help


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR