Université Ibn Zohr Programmation C - SMI4
Faculté des Sciences d’Agadir Année Universitaire 2021-2022
Département d’Informatique
Mini-Projet en Langage C
« Gestion de location de voitures »
L’objectif est de développer une application pour la gestion d’une agence de location de voitures. Cette
dernière permettra de réaliser toutes les opérations nécessaires pour la gestion des clients (locataires),
la gestion des voitures et la gestion des locations. Toutes les données manipulées sont enregistrées
dans des fichiers « Voitures », « Clients » et « ContratsLocations » et sont structurées de la manière
suivante :
typedef struct Voiture typedef struct contratLocation typedef struct Client
{ { {
int idVoiture; float numContrat; int idClient;
char marque[15]; int idVoiture; char nom[20];
char nomVoiture[15]; int idClient; char prenom[20];
char couleur[7]; date debut; int cin;
int nbplaces; date fin; char adresse[15];
int prixJour; int cout; int telephone;
char EnLocation[4]; } contrat; }client;
} voiture;
1- Menu Principal :
Permet de faire le choix entre : 1) accéder
au menu de gestion des locations ; 2)
accéder au menu de gestion de la liste des
voitures enregistrées ; 3) accéder au menu
de gestion des clients ; et 4) quitter
l’application.
2- Menu Gestion Voitures :
Permet de faire le choix entre : 1) afficher
la liste des voitures déjà enregistrées dans
le fichier « Voitures » ; 2) ajouter une
nouvelle voiture dans le fichier
« Voitures »; 3) modifier les informations
concernant une voiture déjà enregistrée ;
4) de supprimer une voiture du fichier
« Voitures » et 5) retourner au menu
principal.
Pr. BELAQZIZ Salwa 1/2
3- Menu Location :
Permet de faire le choix entre : 1)
visualiser les informations
contenues dans un contrat à partir
de son numéro (l’attribut
numContrat) ; 2) louer une
nouvelle voiture, ce qui permettra
d’abord de demander au client de
saisir ses informations (nom,
prénom) et les informations sur la
voiture qu’il souhaite louer. Deux
vérifications seront ensuite
effectuées. La première est la
vérification du client et de la
voiture, si ils sont déjà enregistrés
dans les fichiers « Clients » et « Voitures » (s’ils ne sont pas disponibles, un message sera affiché
demandant au client d’enregistrer ses propres informations à travers le menu « Gestion clients » ou
bien un message pour l’informer que la voiture demandée n’existe pas). La deuxième vérification
concerne la disponibilité de la voiture demandée. Il s’agit de vérifier si elle n’a pas été déjà louée par
un autre client. Si c’est le cas, un message sera affiché informant le client que la voiture n’est pas
disponible, sinon la voiture sera louée, ce qui implique d’abord de changer la valeur de l’attribut
« EnLocation » dans la structure « Voiture », de « Non » à « Oui » et aussi de créer un nouveau contrat
de location en demandant au client de saisir les informations nécessaires selon la structure
« contartLocation »; 2) retourner une voiture déjà louée, ce qui implique de changer la valeur de
l’attribut « EnLocation » dans la structure « Voiture », de « Oui » à « Non » et de supprimer le contrat
de location ; 3) modifier le contrat de location si le client souhaite modifier les informations sur le
contrat tel que la date de reour ; 4) supprimer un contrat si la voiture louée est rendue et 5) retourner
au menu principal.
4- Menu Gestion Clients :
Permet de faire le choix entre : 1)
afficher la liste des clients déjà
enregistrées dans le fichier
« Clients » ; 2) ajouter un nouveau
client dans le fichier « Clients »; 3)
modifier les informations
concernant un client déjà
enregistré ; 4) de supprimer un
client du fichier « Clients » et 5)
retourner au menu principal.
Pr. BELAQZIZ Salwa 2/2