Bienvenue sur le wiki du site www.K1der.net. Se wiki contiendra les differents projets des differents membres, ainsi que des aides pour l’utilisation du site et des services proposés.

Bonne lecture.

Code donnée par la prof :

#include <stdio.h>
#include <stdafx.h>
#include <conio.h>
#include <string.h>
 
#define maxlog 1000
#define maxuser 50
 
 
typedef struct{
           char nomUtilisateur[10];
           char dateCnx[12];
           char heureCnx[10];
           char typeCnx;
              } stConnect;
typedef struct{
           char nomUtilisateur[10];
           int duree;
              } stDuree;
//prototypes
bool chargerTabConnect(char [],stConnect [],int*);
void initTab(stDuree [],int *) ;
int chercher_deconnexion(int,stConnect[],int);
int calcul_duree(int,int,stConnect[],int);
int prochaine_connexion (int,stConnect[],int);
int chercher_utilisateur (int,stConnect[],int,stDuree[],int);
 
stConnect tabConnect[maxlog];
stDuree tabDurees[maxuser];
int nbConnect,nbUser;
 
void main()
{
    char nomFichier[10];
 
    bool erreur;
    int i;
    printf ("nom du fichier a lire: ");
    scanf("%10s", nomFichier);
    erreur= chargerTabConnect(nomFichier,tabConnect,&nbConnect);
    if (!erreur)
    {
       initTab(tabDurees,&nbUser) ;
       for (i=0;i<nbUser;i++)
        printf("%10s  %d \n",tabDurees[i].nomUtilisateur,tabDurees[i].duree);
 
    }
    
    // a completer
   getch();
    
 
}
 
 
bool chargerTabConnect(char nom[],stConnect tabCnx[],int *pn)
 {
   // recuperation des donnees  a partir d'un fichier
   FILE *Fconnect;
   bool err;
   stConnect elt;
 
   *pn=0;
   err=false;
 
   Fconnect=fopen(nom,"r");
   if (Fconnect==NULL)
  	{
          printf("erreur ouverture\n");
          err=true;
    }
   else {
         fread(&elt,sizeof(elt),1,Fconnect);
         while (!feof(Fconnect))
           {
             *pn=*pn+1;
             tabCnx[*pn]=elt;
             fread(&elt,sizeof(elt),1,Fconnect);
           }
        }
    fclose(Fconnect);
    return err;
 
 }
 
void initTab(stDuree tabDurees[],int *pn)
{
    int i, j;
    char nom[10];
    bool trouve;
    *pn=0;
    for (i=1;i<=nbConnect;i++)
      {
        strcpy(nom,tabConnect[i].nomUtilisateur);
        j=0;
        trouve=false;
        while (j<nbUser && !trouve)
	   {
	     if (strcmp(nom,tabDurees[j].nomUtilisateur)==0)
                  {trouve=true;}
             j++;
           }
        if (!trouve ){
	       strcpy(tabDurees[nbUser].nomUtilisateur,nom );
               tabDurees[nbUser].duree=0;
	       *pn=*pn+1;
        }
     }
 }
 
 
int chercher_deconnexion(int i,stConnect tabConnect[maxlog] ,int nbConnect)
{
    // a completer
}
 
int calcul_duree(int i,int j,stConnect tabConnect[maxlog],int nbConnect)
{
    // a completer
}
 
int prochaine_connexion (int i,stConnect tabConnect[maxlog] ,int nbConnect)
{
    // a completer
}
 
int chercher_utilisateur (int i,stConnect tabConnect[maxlog] ,int nbConnect,
    stDuree tabDurees[maxuser],int nbUser)
{
    // a completer
}
 
 
 

Outils personnels