Besoin d'aide sur pointeur sur structure et tableau
Fermé
jhonbouda
Messages postés25Date d'inscriptionsamedi 21 juin 2014StatutMembreDernière intervention30 décembre 2014
-
12 oct. 2014 à 11:08
slt je dois rendre le projet suivant:
On souhaite gérer une base de données d'inscriptions pour l'organisation d'un congrès qui
dure une journée. Les organisateurs proposent aux participants de s'inscrire pour des
repas, ainsi que pour l'hébergement en hôtel.
Un participant peut s'inscrire indépendamment aux 2 repas proposés : déjeuner (15 euros)
et/ou dîner (35 euros) ou aucun. Il n'est pas obligé de prendre un hôtel.
S'il en prend un, il peut choisir parmi 2 types d'hôtels différents : 2 étoiles (75 euros) ou 3
étoiles (100 euros).
Un participant peut venir accompagné de son conjoint. Dans ce cas, la réservation d'hôtel
est identique mais lorsqu'un repas est sélectionné alors il faut en compter 2.
1)Créer un nouveau type Participant qui inclut son nom (chaîne de caractères : tableau de
20 caractères), son prénom (chaîne de caractères : tableau de 30 caractères), ainsi que
toutes les autres informations nécessaires à son inscription selon les critères définis ci-
dessus. On privilégiera une structure contenant un nombre minimal de champs.
2)Créer un nouveau type TabPart qui est un tableau de 100 éléments de type Participant.
3)Créer une fonction Nb2Etoilesqui, pour un argument de type TabPart donné, affiche le
nom et le prénom des personnes qui ont choisi de réserver un hôtel 2 étoiles. On
pourra utiliser la fonction Printf avec pour format %s pour l'affichage des chaînes de
caractères nom et prénom.
4)Créer une fonction NbDej qui, pour un argument de type TabPart donné, retourne le
nombre de déjeuners à prévoir.
5)Créer une fonction Montant qui calcule, pour un Participant donné en argument, le
montant de sa facture.
besoin d'aide pour le pointeur qui doit pointer sur la structure et remplir le tableau tabpart
code source:
#include <stdlib.h>
#include <stdio.h>
#define hotel2etoil 1
#define hotel3etoil 2
#define aucunhotel 3
#define p1person 4
#define p2person 5
#define dejeuner 6
#define diner 7
#define dejeuneetdiner 8
#define aucunrepas 9
// creation de types
typedef struct participant Participant;
struct participant
{
char nom[20];
char prenom[30];
unsigned int nbreclient;
unsigned int hotel;
unsigned int repas;
};
struct participant tab[100];
/*typedef struct tabpart TabPart;
struct tabpart
{
Participant tab[100];
};*/
// variables globales
Participant*ptr;
//fonctions
void choixhotel(unsigned int hotel )
{
int i;
printf("Quelle hotel choisissez vous?");
printf("1=hotel2etoile\t 2=hotel3etoile\t 3=aucunhotel");
scanf("%d",&i);
switch(i)
{
case hotel2etoil : system(cls);
hotel=75;
print("hotel 2etoile");
system(cls);
break;
case hotel3etoil : system(cls);
hotel=100;
printf("hotel 3etoile");
system(cls);
break;
case aucunhotel : system(cls);
hotel=0;
printf("aucun hotel");
system(cls);
break;
}
}
void choixrepas(unsigned int repas,unsigned int nbreclient )
{
int p,r;
printf("nobre de personne");
scanf("%d",&p);
switch(p)
{
case p1person : system(cls);
nbreclient=1;
printf("1 personne");
system(cls);
break;
case p2person : system(cls);
nbreclient=2;
printf("2 personnes");
system(cls);
break;
}
printf("quelle repas desirez vous ");
printf(" dejeune\n diner\n dejeune et diner \n aucun\n");
scanf("%d",&r);
switch(r)
{
case dejeuner : system(cls);
if (p==2)
{
repas=2*15;
}
else
{
repas=15;
}
print("dejeune");
system(cls);
break;
case diner : system(cls);
if (p==2)
{
repas=2*75;
}
else
{
repas=75;
}
print("diner");
system(cls);
break;
case dejeuneetdiner : system(cls);
if (p==2)
{
repas=2*(15+75);
}
else
{
repas=(15+75);
}
print("dejeune et diner");
system(cls);
break;
case aucunrepas : system(cls);
repas=0;
printf("aucun repas");
system(cls);
break;
}
}
Nb2Etoiles
Nb3Etoiles
int calculMontant( unsigned int hotel,unsigned int repas)
{
return hotel+repas;
}
/*void interface0()
{
printf("1=inscription");
printf("2=informations");
}
void interfaceinscription()
{
printf("3=reservation hotel");
printf("4=reservation repas");
}
void interfaceinfos()
{
printf("5=afficher info client2*");
printf("6=afficher info client3*");
printf("7=afficher info repas");
printf("8=montant conso");
}
int main()
{
printf("Bienvenu dans le menu des reservations");
free();
return 0;
}*/
A voir également:
Besoin d'aide sur pointeur sur structure et tableau