begin process at 2012 02 10 03:37:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Pb d'affichage avec des listes doublement chianées


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb d'affichage avec des listes doublement chianées

mardi 16 mars 2004 à 14:19:19 | Pb d'affichage avec des listes doublement chianées

Orezza


Bonjour a tous,
voila je dois faire un petit analyseur syntaxique,
en ce moment j'en suis au prémice de mon code
et j'ai dejà un Big problem d'affichage au niveau
de ma liste doublement chainées du moins c ce ke je pense.

voilà mon code ci-dessous.


#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <stdlib.h>
#include "analyseur.h"

/* fonction permettant de rajouter un */
/* un non-terminal a la liste */


int encore(void) /* demande si on en veut encore */
{
printf("\tContinuer (O/N)\n");
printf("\tChoix:");

return(toupper(getche())=='O');
printf("\n\n");
}


void lecture(void)
{
struct symbol *precedent, *nouveau;

//on initialise le pointeur de tete
premier=(struct symbol*)malloc(sizeof(struct symbol));

printf("\tEntrer Le Non-Terminal\n");
printf("\t:");
scanf("%c",&premier->a);

printf("\n");

precedent=premier;

lecture2();

system("CLS");

while (encore2())
{
nouveau=(struct symbol *)malloc(sizeof(struct symbol));
precedent->suivant = nouveau;
precedent = nouveau;

system("CLS");

printf("\n\tSaisissez un autre non-terminal\t\n");
printf("\t:");
scanf("%s",&nouveau->a);

printf("\n");

lecture2();
}


precedent->suivant = NULL;
}

void affiche(struct symbol *debut, struct expression *debutz)
{
system("CLS");
printf("\nSoit la grammaire\n");

while( (debut != NULL) || (debutz != NULL) )
{
printf("\n\t\t\t%c -> %s ", debut->a, debutz->tab);
debut = debut->suivant;
debutz = debutz->suiv;
}

printf("\n\n");
}



**************************************

#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <stdlib.h>
#include "analyseur.h"

//liste chainées comprenant la
//grammaire proprement dite

int encore2(void) /* demande si on en veut encore */
{
system("CLS");
printf("\n\tSaisir un autre Non-Terminal(O/N)\n");
printf("\tChoix:");

return(toupper(getche())=='O');
printf("\n\n");
}


void lecture2(void)
{
struct expression *prec, *nouv;

//on initialise le pointeur de tete
prem=(struct expression*)malloc(sizeof(struct expression));

printf("\tSaisissez votre expression\n");
printf("\t:");
scanf("%s",&prem->tab);

printf("\n");

prec=prem;

while (encore())
{
nouv=(struct expression *)malloc(sizeof(struct expression));
prec->suiv = nouv;
prec = nouv;

system("CLS");

printf("\n\tSaisissez un autre terme\t\n");
printf("\t:");
scanf("%s",&nouv->tab);

printf("\n");
}

prec->suiv = NULL;
}

/*void affiche2(struct expression *debutz)
{
system("CLS");
printf("\n");

while(debutz != NULL)
{
printf("\n\t\t\t%c->\n", debutz->tab);
debutz = debutz->suiv;
}

printf("\n\n");
}*/

******************Header**************************

/* fichier d'entête */

#include <stdio.h>

/* structure de la premiere liste chainée */
/* contenant uniquement les non-terminaux */

struct symbol
{
char a ;
char first[30];
char follow[30];
struct *suivant;
struct *prem;
};

/* structure comprenant les expressions correspondant */
/* au non-terminaux */

struct expression
{
char tab[30];
struct *suiv;
};

//je declare un pointeur de type symbole
struct symbol *premier;
//je declare un poiteur de type expression
struct expression *prem;


//prototype des fonctions
int encore(void);
int encore2(void);
void lecture(void);
void lecture2(void);
void affiche(struct symbol *debut, struct expression *debutz);

******************Main************************

/* Fonction Principale */

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include "analyseur.h"


void main(void)
{

printf("Dominici Pierre-Francois\nFaivre Thomas\n");
printf("\n\t\t\t Analyseur Syntaxique\n");

printf("\n\n\t\t -!- Attention votre grammaire -!- ");
printf("\n\t-!- ne dois pas comporter de recursiviter gauche -!- ");
getch();
system("CLS");


lecture();
affiche(premier,prem);

}

Voila je vous ai mis le code complet afin ke vous puissiez le compilez et me dire pkoi 4 warning et regler mon pd d'affichage.

merci par avance de votre soutien.



Cette discussion est classée dans : printf, include, void, expression, struct


Répondre à ce message

Sujets en rapport avec ce message

pgcd [ par cherif2009 ] excusez moi voici le code #include #include #include void pgcd(); main() { pgcd(); } void pgcd() { int a,b,pg; printf("enter le premier entier"); scan Fonction recherche (listes chainées) [ par adri10 ] Bonjour à tous, Bon voilà j'ai un gros problème avec ma fonction recherche en liste chainées. Je pensais que mon programme était correct puisqu'en le erreur code [ par ucf662 ] [code=cpp]class point{ int x,y; public: void initialiser( int x1 , int y1 ) ; void deplacer( i génerateur des nombres aléatoire (GLC) [ par adola2003 ] bonjour, j`ai un devoir a remettre la semaine prochaine concernant le génerateur des nombres aléatoires LCG avec F<9 (facteur) I<5 (increment) M (modu programmation socket serveur client c/c++ [ par beni91 ] Bonsoir, je dois coder un serveur en c sous Windows avec comme compilateur borland mais j'ai des erreur que je n'arrive pas a résoudre. J'ai fait des Problème : conversion from constant void to void (GPIB) [ par twintornado ] Bonjour dans le cadre d'un stage je dois piloter des appareil avec un programme en C via une interface GPIB : voici mon code source : #include #in calculs tableau [ par 3463 ] Salut à tous !! J'ai besoin de votre aide [^^happy13] Voici mon programme : # include # include # include # include # include # include # incl Type considéré comme identificateur... :-/ [ par Virus721 ] Salut tout le monde ! Voila j'essaye de coder un petit "music player" en C++ avec Qt pour la GUI, et IrrKlang pour l'audio. J'ai lu et revérifié 50 f Dictionnaire de traduction [ par JSG19 ] Salut j'ai un dictionnaire a programmer a chaque fois que je programme soit j'ai le premier mot soit le dernier ou toute la liste de traduction donc Premiere prog en Smfl [ par tiouil ] Bonjour, je viens vous demander votre aide car voila une semaine que je corrige des erreurs et encore des erreurs et certaines persistent donc voila.


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,933 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales