Programme enmagazinant des eleves (ou autres)

Contenu du snippet

Ce programme fonctionne avec des class et permet d'ajouter des l'eleves en leur attribuant un nom, un prenom, une classe et un lettre de classe. Il ya possibilité de supprimer des l'eleves ou de de modifier certaines informations sur les eleves.

Source / Exemple :


#include <iostream.h>
#include <stdlib.h>
#include <string.h>

class Pupil
 {
  public:
    char szPupilFirstName[70];//prenom de l'eleve
    char szPupilLastName[70]; //nom de l'eleve
    int nClasse;              //classe de l'eleve
    char nNumberClasse;       //lettre de la classe (ex: 3ieme a)
 };

/*Fonction principale-----------------------------------------------------------*/
void main()
{
int nPupilNumber=0;
int nMaxPupil=1000;

char ChMenuPrin[50];
help:
cout<<"list  : Consulter le listes de eleves\n";
cout<<"add   : ajouter un eleve a la liste\n";
cout<<"modif : modification des inormations d'un eleve\n";
cout<<"del   : Supprimer un eleve\n";
cout<<"help  : Aide sur les commendes\n";
cout<<"exit  : Quitter\n";
cout<<endl;

restart:
cout<<">>";
cin.getline(ChMenuPrin, 50);

/*Lister les eleves-------------------------------------------------------------*/
if (stricmp(ChMenuPrin, "list") == 0)
{
system("cls");
Pupil szPupil[nMaxPupil];
for(int i=0; i<nPupilNumber; i++){
cout<<"n "<<i<<"|"<<szPupil[i].szPupilLastName<<" "<<szPupil[i].szPupilFirstName
<<" || classe : "<<szPupil[i].nClasse<<"*"<<szPupil[i].nNumberClasse<<endl;
}
system("pause");system("cls");goto restart;
}

/*Ajout d'un eleve--------------------------------------------------------------*/
if (stricmp(ChMenuPrin, "add") == 0)
{
system("cls");Pupil szPupil[nMaxPupil];

 if(nPupilNumber<nMaxPupil)
 {
 cout<<"Entrez le nom de l\'eleve : ";                cin>>szPupil[nPupilNumber].szPupilLastName;
 cout<<"Entrez le prenom de l\'eleve : ";             cin>>szPupil[nPupilNumber].szPupilFirstName;
 cout<<"Entrez la classe de l\'eleve : ";             cin>>szPupil[nPupilNumber].nClasse;
 cout<<"Entrez le lettre de la classe de l\'eleve : ";cin>>szPupil[nPupilNumber].nNumberClasse;
 nPupilNumber++;
 }
system("cls");
goto restart;
}

/*Modification des informations-------------------------------------------------*/
if (stricmp(ChMenuPrin, "modif") == 0)
{
RestartModif:
char ChModif;
int nNumberForChange;
cout<<"Entrez le numero de l\'eleve dans la liste : ";cin>>nNumberForChange;
system("cls");
cout<<"Quel changement voulez vous faire\n";
cout<<"|1| nom de l\'eleve\n";
cout<<"|2| prenom de l\'eleve\n";
cout<<"|3| classe de l\'eleve\n";
cout<<"|4| lettre de la classe de l\'eleve\n";
cout<<"|q| quitter\n";
cin>>ChModif;
system("cls");
Pupil szPupil[nMaxPupil];

 switch(ChModif)
 {
 case '1' : cout<<"nouveau nom : ";             cin>>szPupil[nNumberForChange].szPupilFirstName;break;
 case '2' : cout<<"nouveau prenom : ";          cin>>szPupil[nNumberForChange].szPupilLastName; break;
 case '3' : cout<<"nouvelle classe : ";           cin>>szPupil[nNumberForChange].nClasse;         break;
 case '4' : cout<<"nouvelle lettre de classe : ";cin>>szPupil[nNumberForChange].nNumberClasse;   break;
 case 'q' : system("cls");goto restart;break;
 }

char ChRestartModif;
 while(true){
 cout<<"Souhaitez vous faire un autre changement O/N : ";cin>>ChRestartModif;
 if(ChRestartModif=='o' || ChRestartModif=='O'){goto RestartModif;}
 if(ChRestartModif=='n' || ChRestartModif=='N'){system("cls");goto restart;}
 }
}

/*Supprimer un eleve------------------------------------------------------------*/
if (stricmp(ChMenuPrin, "del") == 0)
{
system("cls");
int nDelNumber;
cout<<"Entrez le numero de l\'eleve a supprimer : ";cin>>nDelNumber;

nPupilNumber--;
Pupil szPupil[nMaxPupil];

 for(;nDelNumber<nPupilNumber; nDelNumber++)
 {szPupil[nDelNumber]=szPupil[nDelNumber+1];}

}

/*Aide sur les commandes--------------------------------------------------------*/
if (stricmp(ChMenuPrin, "help") == 0){system("cls");goto help;}

/*Quitter le programme----------------------------------------------------------*/
if (stricmp(ChMenuPrin, "exit") == 0){return 0;}

else{system("cls");goto restart;}

}

Conclusion :


Voici la liste total des commandes pour le programme :

list : Consulter le listes de eleves
add : ajouter un eleve a la liste
modif : modification des inormations d'un eleve
del : Supprimer un eleve
exit : Quitter

help : Aide sur les commandes

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.