begin process at 2012 02 11 18:33:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

tableau de structures type pointeur


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

tableau de structures type pointeur

dimanche 4 mai 2003 à 13:16:16 | tableau de structures type pointeur

chocho

Merci d'avoir répondu à ma demande d'aide.
Voici la source sur laquelle je coince:
#include<iostream.h>
#include<string.h>
#define maxlist 10




int indicecourant;
struct abonne
{
char *nom;
char *ville;
char *annee;
};

struct abonne abon1[maxlist]={{"toto","paris","2003"},{"riri","rouen","2001"},{"henry","lille","2000"},{"fred","evry","2003"}};
void menuab();
void menucons();
void creation();
int rechercher();
int suppression();
void consultind();
void consultcol();
char quitter();

void main()
{
indicecourant=3;
inittab();
menuab();
}


void menuab()
{
int choix;
cout<<"\t\tMENU ABONNES"<<endl;
cout<<"\t1: CREATION"<<endl;
cout<<"\t2: SUPPRESSION"<<endl;
cout<<"\t3: CONSULTATION"<<endl;
cout<<"\t0: POUR QUITTER"<<endl;
cout<<"\tQuelle option choisissez-vous?"<<endl;
cin>>choix;
switch (choix)
{
case 1:creation();
break;
case 2:suppression();
break;
case 3:menucons();
break;
case 0:quitter();
break;
}
}

void menucons()
{
int choix;
cout<<"\t\tMENU CONSULTATION"<<endl;
cout<<"\t1:AFFICHER UN ABONNE"<<endl;
cout<<"\t2:AFFICHER LA LISTE DES ABONNES"<<endl;
cout<<"\tQuelle option choisissez-vous?"<<endl;
cin>>choix;
switch (choix)
{
case 1:consultind();
case 2:consultcol();
break;
}
menuab();
}

void creation()
{
if(indicecourant==maxlist-1)
{
cout<<"le tableau d'abonnés est plein, impossible de rajouter un nouvel abonné"<<endl;
}
else
{
indicecourant++;
cout<<"\tindicecourant="<<indicecourant<<endl;
cout<<"\tAjout d'un abonné"<<endl;
cout<<"\tSaisissez le nom de l'abonné"<<endl;
cin>>abon1[indicecourant].nom;
cout<<"\tSaisissez la ville de résidence de l'abonné"<<endl;
cin>>abon1[indicecourant].ville;
cout<<"\tSaisissez l'année du premier abonnement"<<endl;
cin>>abon1[indicecourant].annee;

}
menuab();
}

int rechercher()
{
int i,indice=-1;
char nomrecherche[20];
cout<<"\tQuel est le nom de l'abonné à rechercher?"<<endl;
cin>> nomrecherche;
for(i=0;i<indicecourant;i++)
{

if (strcmp(abon1[i].nom, nomrecherche) == 0)
{
indice=i;
}
}
return (indice);

}

int suppression()
{
char *nomsup;
int i,indice=-1;
cout<<"\tSuppression d'un abonné"<<endl;
indice=rechercher();
if(indice==-1)
{
cout<<"le nom sélectionné n'est pas un abonné!"<<endl;
}
else
{
for(i=indice;i<indicecourant-1;i++)
{
abon1[i].nom=abon1[i+1].nom;
abon1[i].ville=abon1[i+1].ville;
abon1[i].annee=abon1[i+1].annee;
}
}
indicecourant=indicecourant-1;
menuab();
}

void consultind()
{
int indice=-1;
indice=rechercher();
if(indice==-1)
{
cout<<"le nom sélectionné n'est pas un abonné!"<<endl;
}
else
{
cout<<"\tNOM \tVILLE \tANNEE"<<endl;
cout<<"\t"<<abon1[indice].nom<<"\t "<<abon1[indice].ville<<"\t "<<abon1[indice].annee<<endl;
}
menuab();
}


void consultcol()
{
int i;
cout<<"\tNOM \tVILLE \tANNEE"<<endl;
for(i=0;i<indicecourant;i++)
{
cout<<"\t"<<abon1[i].nom<<"\t "<<abon1[i].ville<<"\t "<<abon1[i].annee<<endl;
}
menuab();
}

char quitter()
{

cout<<"\tMerci d'avoir utilisé ce petit programme"<<endl;

}
lundi 5 mai 2003 à 09:43:10 | Re : tableau de structures type pointeur

highcobra

C'est quoi ton pb exactement ???

High_Cobra ;)



-------------------------------
Réponse au message :
-------------------------------

> Merci d'avoir répondu à ma demande d'aide.
> Voici la source sur laquelle je coince:
> #include<iostream.h>
> #include<string.h>
> #define maxlist 10
>
>
>
>
> int indicecourant;
> struct abonne
> {
> char *nom;
> char *ville;
> char *annee;
> };
>
> struct abonne abon1[maxlist]={{"toto","paris","2003"},{"riri","rouen","2001"},{"henry","lille","2000"},{"fred","evry","2003"}};
> void menuab();
> void menucons();
> void creation();
> int rechercher();
> int suppression();
> void consultind();
> void consultcol();
> char quitter();
>
> void main()
> {
> indicecourant=3;
> inittab();
> menuab();
> }
>
>
> void menuab()
> {
> int choix;
> cout<<"\t\tMENU ABONNES"<<endl;
> cout<<"\t1: CREATION"<<endl;
> cout<<"\t2: SUPPRESSION"<<endl;
> cout<<"\t3: CONSULTATION"<<endl;
> cout<<"\t0: POUR QUITTER"<<endl;
> cout<<"\tQuelle option choisissez-vous?"<<endl;
> cin>>choix;
> switch (choix)
> {
> case 1:creation();
> break;
> case 2:suppression();
> break;
> case 3:menucons();
> break;
> case 0:quitter();
> break;
> }
> }
>
> void menucons()
> {
> int choix;
> cout<<"\t\tMENU CONSULTATION"<<endl;
> cout<<"\t1:AFFICHER UN ABONNE"<<endl;
> cout<<"\t2:AFFICHER LA LISTE DES ABONNES"<<endl;
> cout<<"\tQuelle option choisissez-vous?"<<endl;
> cin>>choix;
> switch (choix)
> {
> case 1:consultind();
> case 2:consultcol();
> break;
> }
> menuab();
> }
>
> void creation()
> {
> if(indicecourant==maxlist-1)
> {
> cout<<"le tableau d'abonnés est plein, impossible de rajouter un nouvel abonné"<<endl;
> }
> else
> {
> indicecourant++;
> cout<<"\tindicecourant="<<indicecourant<<endl;
> cout<<"\tAjout d'un abonné"<<endl;
> cout<<"\tSaisissez le nom de l'abonné"<<endl;
> cin>>abon1[indicecourant].nom;
> cout<<"\tSaisissez la ville de résidence de l'abonné"<<endl;
> cin>>abon1[indicecourant].ville;
> cout<<"\tSaisissez l'année du premier abonnement"<<endl;
> cin>>abon1[indicecourant].annee;
>
> }
> menuab();
> }
>
> int rechercher()
> {
> int i,indice=-1;
> char nomrecherche[20];
> cout<<"\tQuel est le nom de l'abonné à rechercher?"<<endl;
> cin>> nomrecherche;
> for(i=0;i<indicecourant;i++)
> {
>
> if (strcmp(abon1[i].nom, nomrecherche) == 0)
> {
> indice=i;
> }
> }
> return (indice);
>
> }
>
> int suppression()
> {
> char *nomsup;
> int i,indice=-1;
> cout<<"\tSuppression d'un abonné"<<endl;
> indice=rechercher();
> if(indice==-1)
> {
> cout<<"le nom sélectionné n'est pas un abonné!"<<endl;
> }
> else
> {
> for(i=indice;i<indicecourant-1;i++)
> {
> abon1[i].nom=abon1[i+1].nom;
> abon1[i].ville=abon1[i+1].ville;
> abon1[i].annee=abon1[i+1].annee;
> }
> }
> indicecourant=indicecourant-1;
> menuab();
> }
>
> void consultind()
> {
> int indice=-1;
> indice=rechercher();
> if(indice==-1)
> {
> cout<<"le nom sélectionné n'est pas un abonné!"<<endl;
> }
> else
> {
> cout<<"\tNOM \tVILLE \tANNEE"<<endl;
> cout<<"\t"<<abon1[indice].nom<<"\t "<<abon1[indice].ville<<"\t "<<abon1[indice].annee<<endl;
> }
> menuab();
> }
>
>
> void consultcol()
> {
> int i;
> cout<<"\tNOM \tVILLE \tANNEE"<<endl;
> for(i=0;i<indicecourant;i++)
> {
> cout<<"\t"<<abon1[i].nom<<"\t "<<abon1[i].ville<<"\t "<<abon1[i].annee<<endl;
> }
> menuab();
> }
>
> char quitter()
> {
>
> cout<<"\tMerci d'avoir utilisé ce petit programme"<<endl;
>
> }
mercredi 7 mai 2003 à 02:46:29 | Re : tableau de structures type pointeur

CoreBreaker

void creation()
{
if(indicecourant==maxlist-1)
{
cout<<"le tableau d'abonnés est plein, impossible de rajouter un nouvel abonné"<<endl;
}
else
{
char s[81]= {0};
indicecourant++;
cout<<"\tindicecourant="<<indicecourant<<endl;
cout<<"\tAjout d'un abonné"<<endl;
cout<<"\tSaisissez le nom de l'abonné"<<endl;
cin>>s;
abon1[indicecourant].nom=strdup(s);
memset(s, 0, 80);
cout<<"\tSaisissez la ville de résidence de l'abonné"<<endl;
cin>>s;
abon1[indicecourant].ville=strdup(s);
memset(s, 0, 80);
cout<<"\tSaisissez l'année du premier abonnement"<<endl;
cin>>s;
abon1[indicecourant].annee=strdup(s);
}
menuab();
}


Core Breaker



Cette discussion est classée dans : int, cout, indice, abon1, indicecourant


Répondre à ce message

Sujets en rapport avec ce message

Pas compris les arguments [ par Bog ] Bonjour.Voila à chaque fois que je me lance dans un projet de programmation C++, je suis tjrs bloqué par certaines choses, surtout les arguments, et c Pas compris les arguments [ par Bog ] Bonjour.Voila à chaque fois que je me lance dans un projet de programmation C++, je suis tjrs bloqué par certaines choses, surtout les arguments, et c Dans le genre prenant........ [ par Xs ] oui !c 'est trés chiant !j'explique mon pb : j'ai un code source, fais par moi-meme, et dedans, je veux que l'on saisisse des renseignement comme le l implicit declaration of function `int getchar(...)' [ par cognac ] À chaque fois que j'utilise getch(); j'obtien le message suivant:getch();Voici mon programme (en fait mon exercice):#include //bibliotheque d'entree Reference pour arguments de fonction! [ par CoxJoe ] Hello,Voila mon code qui est tres simple :# include # include using namespace std;// fonction pour entrer des lettresvoid getchar(char& name[]){ cout une fiche de renseignement [ par cabarrus ] je cherche à faire un programme qui demande des renseignements pour pouvoir ensuite les affiché comme une fiche d'identité!!!voici monprogramme mais m Pobleme de debutant bas niveau [ par zzzzzz ] #include ?iostream.h? /* pour cout cin */int a;int factorielle(int n) { if(n==0) { return 1; } else { return n*factorielle(n-1); }}void main() c++ algo [ par altay ] L'analyste programmeur a 3 dimensionest ce que quelqu'un pourrait me faire l'algo de ce code merci d'avance :#pragma hdrstop#include #include algo C++ [ par altay ] L'analyste programmeur a 3 dimensionest ce que quelqu'un pourrait me faire l'algo de ce code merci d'avance :#pragma hdrstop#include #include Gestion d'entrées/sorties sur fichier [ par macrow ] Bonjour, Voici mon source : #include #include #include #include #include //********************************************


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 0,234 sec (3)

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