Prog C ... Je suis à la bourre ... j'ai trop de truc à faire

Prog C ... Je suis à la bourre ... j'ai trop de truc à faire - C - Programmation

Marsh Posté le 20-02-2004 à 15:18:04    


Bon Voilà le souci .. j'ai plusieurs prog à faire pour demain ( je m'en tape un sur les listes chainées en ce moment ) ..
mais là je suis trop à la bourre .. si ça branche qq de m'aider ça serai super sympa ... Merci d'avance à tout le monde  
 
/////////////////////////////////////////////////////////////
 
Soit le programme suivant pour gérer une liste de contacts:
struct contact
{
 char NOM[20];
 char PRENOM[20];
 int AGE;
 int TEL;
};
 
int main (void)
{
 char CHOIX;
 struct contact C;
 struct contact TC[50];
 int N=0;
 
 lire_tableau_contact("contact_list.txt", TC, &N);
 
 
 while(1)
 {
  printf("Tapez \n\
   a : pour ajouter une nouvelle contact \n\
   v : pour voir la liste de contacts \n\
   c : pour chercher une contact \n\
   q : pour quitter \n" );
 
  CHOIX = getch();
  if( CHOIX == 'q' )
   break;
 
  switch (CHOIX)
  {
  case 'a':
   C = demander_contact();
   ajouter_contact( C, TC, &N);
   break;
  case 'v':
   afficher_tableau_contact( TC, &N);
   break;
  case 'c':
   chercher_tableau_contact(TC, &N);
   break;  
  }
 }
 
 ecrire_tableau_contact("contact_list.txt", TC, &N);
 
 return 1;
}
 
 
Défini les fonctions suivantes:
 
1. struct contact demander_contact(  );
Remplir toutes les champs de la structure contact au clavier et retour la variable rempli.
 
2. void afficher_contact( struct contact C );
Affiche toutes les champs d'une structure contact donnée.
 
3. void modifier_contact( struct contact *C );
Demande au utilisateur si il va changer une des champs d'une structure contact transmis à la fonction par son adresse. Si la réponse est "oui", demande une nouvelle valeur pour le champ.
 
4. void copier_contact( struct contact *C1, struct contact *C2);
Copie toutes les champs de la structure C2 à C1.  
 
Note : Utilise la fonction strcpy( char * str1, char * str2) pour copier la chaîne de caractère str2 à str1
 
5. void ajouter_contact( struct contact C, struct contact* TC, int *N);
Ajouter la variable C à la fin du tableau TC. La contenu de pointeur N est égal à le nombre d'éléments initial dans TC. Mis à jour le nombre d'éléments.
 
Note : Suppose qu'il n'y a aucun risque d'excéder la taille maximale de TC.  
 
6. void supprimer_contact( int INDX, struct contact* TC, int *N);
Supprimer l'élément dans cas numéro "INDX" de tableau TC. Décale tout les éléments après l'élément supprime pour remplir le cas vide. Mis à jour le nombre d'éléments.
 
Note: Utilise la fonction copier_contact( struct contact *C1, struct contact *C2) pour décalage.
 
7. void afficher_tableau_contact( struct contact* TC, int *N);
Afficher N éléments du tableau TC.  
Utilisateur devrait pouvoir modifier ou supprimer un contact affiche.
 
8. void afficher_tableau_contact_avec_NOM( struct contact* TC, int *N, char *NOM);
Chercher et afficher les éléments du tableau TC lesquelles ont le champ NOM avec la même chaîne de caractères que l'argument NOM.
Utilisateur devrait pouvoir modifier ou supprimer un contact affiche.
 
Note : Utilise la fonction int strcmp( char *str1, char *str2) qui retour une valeur zéro si les deux chaînes sont identique.
 
9. void afficher_tableau_contact_avec_AGE( struct contact* TC, int *N, int AGE_MIN, int AGE_MAX);
Chercher et afficher les éléments du tableau TC dans lesquelles la valeur du champ AGE  est entre (AGE_MIN, AGE_MAX).
Utilisateur devrait pouvoir modifier ou supprimer un contact affiche.
 
 
 
10. void chercher_tableau_contact(struct contact* TC, int *N);
Demande au utilisateur une argument de recherche dans la tableau TC, soit par NOM, soit par AGE. Selon le choix demande un nom ou un intervalle d'age.
 
11. void ecrire_tableau_contact( char *NOM_FICHIER, struct contact* TC, int *N);
Ecrire le contenu de tableau TC dans un fichier texte. Le nom du fichier est donne avec l'argument NOM_FICHIER.
 
12. void lire_tableau_contact( char *NOM_FICHIER, struct contact* TC, int *N);
Lire un tableau de structure contact depuis un fichier écrit par la fonction au dessou

Reply

Marsh Posté le 20-02-2004 à 15:18:04   

Reply

Marsh Posté le 20-02-2004 à 15:20:09    

[:popcorn]


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 20-02-2004 à 15:23:28    

[:arhendal]

Reply

Marsh Posté le 20-02-2004 à 15:26:51    

bon.jour [:le kneu]

Reply

Marsh Posté le 20-02-2004 à 15:36:36    

Et les règles du forum ???  :ouch:

Reply

Marsh Posté le 20-02-2004 à 15:37:51    

on peut t'aider.
c'est possible.

Reply

Marsh Posté le 20-02-2004 à 20:25:44    

ben pour les règles je cale pas ...
.. et pis .. si qq peut m'aider pas de souci  

Reply

Marsh Posté le 20-02-2004 à 20:36:43    

[0D] De la même manière, les demandes de résolutions d'exercices ne seront pas acceptées s'il s'agit d'une demande de solution toute faite, sans effort manifeste du côté du demandeur. Cette décision a été prise étant donné le nombre croissant de ce type de demandes lors des périodes de reprise des cours ou d'approche des périodes d'examens. Merci aux membres du forum de ne pas donner des résolutions d'exercice lorsqu'il est clair que le demandeur n'a rien fait de son côté  
 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed