Probleme affichage structure

lil_adriano Messages postés 42 Date d'inscription vendredi 26 janvier 2007 Statut Membre Dernière intervention 16 juin 2008 - 3 mai 2008 à 06:07
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 - 5 mai 2008 à 23:10
Slt tous le monde j'ai un souci avec l'affichage de mes structures. je dois faire la gestion d'une pizzeria.j'ai cree les structure et quelques procedures pour teste, je compile tous est ok mais c'est l'affiche des enregistrements qui me pose probleme.
pour afficher l'enregistrement pizza il y a pas de probleme mais l'affichage des enregistrements ingredient qui me pose probleme rien ne s'affiche.
et au passage je voudrais savoir comment on initialise des structure avec structure imbriqué.
merci de votre d'avance!
voici mon code:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>

struct ingredient
 {
      
       char nom_ing[20];
       int qtt_ing;
       };
      
struct tp_pizza
{
       int num_tp_pizza;
       char nom_tp_pizza[20];
       };
      
struct pizza
{
      
       char nom_pizza[20];
       struct ingredient ing_pizza[10];
       struct tp_pizza typ_pizza;
}pizza1;

struct facture
{
       int num_fact;
       struct pizza n_pizza;
};

void saisirpizza(char newpizza[]/*,int indice,char newpizza[]*/, int ingid)
{
     char in;
     int rep,i,f;
     rep=1;
     f=0;
     printf("Creation d'un pizza\n");
     printf("Quel est le nom de votre pizza??\n");
     scanf("%s",&pizza1.nom_pizza);
     printf("Nom pizza %s",pizza1.nom_pizza);
     printf("\nCombien d'ingrédient veux-u entre?(6 max)");
     scanf("%d",&rep);
     while( f<rep)
     {
            printf("\nVotre ingredient sera ??\n");
            scanf("%s",&pizza1.ing_pizza[ingid].nom_ing);
            ingid++;
            f++;
           
     }
    
 }
 
void affpizzas(struct pizza tabpizza[],int indice,char nompizza[20],int ingid)
{
     int i,j,g;
    
    
         printf("Nom pizza %s\nComposition : ", pizza1.nom_pizza);
         for (g=1;g<ingid;g++)
         {
             printf("%s ",pizza1.ing_pizza[g].nom_ing);
         }
         printf("\n");
    
}

void affpizza(struct pizza tabpizza[],int indice,char nompizza[20])
{
     int i,j,ingid;
    
     for (i=1;i<indice;i++)
     {
         if (tabpizza[i].nom_pizza == nompizza)
         {
               affpizzas( tabpizza, indice, nompizza, ingid);
         }
     }
 }
 

void ajoutpizza(struct pizza tabpizza[],int indice,char newpizza[], int ingid)
{
     int i;
     saisirpizza(newpizza,ingid);
     // tabpizza[indice] = newpizza[i];
      indice=indice+1;
}
 main()
{
             
     int indic=0,ingi=0;
     char newpizz[20],nompizza[20];
     pizza tabpiz[30];
     printf("bienvenue dans la pizzeria RICO");
     ajoutpizza( tabpiz, indic, newpizz, ingi);
     affpizzas( tabpiz, indic, nompizza, ingi);
     system("pause");
}

3 réponses

SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
3 mai 2008 à 14:55
for (i=1;i]
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
3 mai 2008 à 14:56
Oups
"ça ne passe en C++"
Je voulais dire
ça passe en C++

C++ (@++)<!--
0
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
5 mai 2008 à 23:10
Petite correction, pour les structures imbriquées, ceci fonctionne:

struct toto {
    struct {
       int j;
    } tete;
    int i;
};

Cependant, je ne peux tester qu'avec gcc pour l'instant. J'ignore si ça fonctionnera avec VC++.

C++ (@++)<!--
0
Rejoignez-nous