IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Est ce que ce code est correct ?


Sujet :

C

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 10
    Points
    10
    Par défaut Est ce que ce code est correct ?
    voilà le programme
    je programme sous Windows avec le compilateur Broland c++ version 5.0
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    #include <stdio.h>
    #include <conio.h>
    #include <alloc.h>
    #define max1 10
    #define max2 4
    #define max3 4
    typedef char chaine[max1];
    typedef struct
                 {
                  chaine NomEquipe, Tnomjoueur[max2],TnomStaff[max3];
                 }Equipe;
    Equipe CreerEquipe(Equipe);
    int main()
        {
        int nombreClub=0;
        int i=0;
     
        Equipe e1;
        printf("entrer le nombre de Club à saisir\n");
        scanf("%d",&nombreClub);
        Equipe *e=(Equipe*)malloc(nombreClub*sizeof(Equipe));
     for(i=0;i<nombreClub;i++)
        {
        e[i] = CreerEquipe(e1[i]);
        }
        getchar();
        return 0;
        }
    Equipe CreerEquipe(Equipe e)
                      {
                       int i=0;
                               printf("Nom equipe :\n");
                               scanf("%s",e.NomEquipe);
                               //-------------------------------------------------
                               printf("Nom d'entreneur :\n");
                               scanf("%s",e.Tnomjoueur[i]);
                               //-------------------------------------------------
                               printf("les noms des joueurs :\n");
                               for(i=1;i<max2;i++)
                                           {
                                            printf("Nom joueur n°%d est:\n",i);
                                            scanf("%s",e.Tnomjoueur[i]);
                                            }
                               //--------------------------------------------------
                               printf("les noms du staff téchnique : \n");
                               for(i=1;i<max3;i++)
                                           {
                                            printf("n°%d :\n",i);
                                            scanf("%s",e.TnomStaff[i]);
                                           }
     
                       return e;
                      }
    1.est ce que la fonction est juste
    2.j'ai pas pu l'appeler une erreur d'appelle
    3.j'ai fait une allocation j'aimerais bien la couriger
    4.j'ai un probleme d'application je comprent le cours mais quand j'applique j'aurai tjrs de pblm

    merci pour l'aide et à vous relire.

  2. #2
    Expert éminent sénior
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Points : 13 926
    Points
    13 926
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Equipe e1;
    ....
     for(i=0;i<nombreClub;i++)
        {
        e[i] = CreerEquipe(e1[i]);
    e1 n'est pas un tableau. On ne peut pas écrire e1[i]
    Publication : Concepts en C

    Mon avatar : Glenn Gould

    --------------------------------------------------------------------------
    Une réponse vous a été utile ? Remerciez son auteur en cliquant le pouce vert !

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    voilà ce que j'ai amilioré mais il y a quelque erreur en bas vous trouvez les erreurs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    #include <stdio.h>
    #include <conio.h>
    #define max1 10
    #define max2 4
    #define max3 4
    typedef char chaine[max1];
    typedef struct
                 {
                  chaine NomEquipe, Tnomjoueur[max2],TnomStaff[max3];
                 }Equipe;
    Equipe CreerEquipe();
    int main()
        {
        Equipe e;
        int nombreClub;
        int i=0;
        printf("entrer le nombre de Club à saisir\n");
        scanf("%d",&nombreClub);
    for(i=0;i<nombreClub;i++)
         e[i]=CreerEquipe();
     
        getchar();
        return 0;
        }
    Equipe CreerEquipe()
           {Equipe e;
            int i=0;
                   printf("Nom equipe :\n");
                   scanf("%s",e.NomEquipe);
                   //-------------------------------------------------
                   printf("Nom d'entreneur :\n");
                   scanf("%s",e.Tnomjoueur[i]);
                   //-------------------------------------------------
                   printf("les noms des joueurs :\n");
                   for(i=1;i<max2;i++)
                          {
                          printf("Nom joueur n°%d est:\n",i);
                          scanf("%s",e.Tnomjoueur[i]);
                          }
                   //--------------------------------------------------
                   printf("les noms du staff téchnique : \n");
                   for(i=1;i<max3;i++)
                          {
                          printf("n°%d :\n",i);
                          scanf("%s",e.TnomStaff[i]);
                          }
     
            return e;
            }
    les erreurs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    club.c(21.24):call to function 'CreerEquipe' with no prototype
    club.c(21.11):illegal structure operation
    club.c(25.06):'e' is declared but never usued
    club.c(49.18):imcompatible type version
    , think you

  4. #4
    Expert éminent sénior
    Avatar de diogene
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juin 2005
    Messages
    5 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 761
    Points : 13 926
    Points
    13 926
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Equipe CreerEquipe(void);
    Pour que ce soit un prototype, il faut énumérer le type des arguments ou mettre void si il n'y en a pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int main()
        {
        Equipe e;
    ...
         e[i]=CreerEquipe();
    Rien de changer e n'est pas un tableau et on ne peut pas écrire e[i]
    Publication : Concepts en C

    Mon avatar : Glenn Gould

    --------------------------------------------------------------------------
    Une réponse vous a été utile ? Remerciez son auteur en cliquant le pouce vert !

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    et la solution?

    je veux appeller la fonction plusieur fois pour saisir les informations d'un club

  6. #6
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    for(i=0;i<nombreClub;i++)
    e[i]=CreerEquipe();
    ce bout de code n' est pas correcte pusque e n' est n un tableau, ni un pionteur. Tu peux toujours faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    int nombreClub=0;
        int i=0;
     
        printf("entrer le nombre de Club à saisir\n");
        scanf("%d",&nombreClub);
        Equipe *e=(Equipe*)malloc(nombreClub*sizeof(Equipe));
     for(i=0;i<nombreClub;i++)
        {
        e[i] = CreerEquipe();
        }
    Pour ta deuxeme question, je ne pense pas avoir ben compris. Si tu ne veux pas sasir au clavier les nformations, il faut trouver alors d' autres sources d' entrée :fichier, reseau, db, ...

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 10
    Points
    10
    Par défaut
    merçi il est résou

Discussions similaires

  1. Est ce que ce code est correcte? vb6 ADO
    Par zidane2 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 29/09/2010, 23h14
  2. Est ce que ce code est du langage C ?
    Par christophe_halgand dans le forum Débuter
    Réponses: 6
    Dernier message: 27/07/2009, 10h47
  3. Est ce que ce code est optimisé.
    Par Andry dans le forum Langage
    Réponses: 4
    Dernier message: 13/03/2009, 22h06
  4. Réponses: 1
    Dernier message: 08/02/2007, 09h11
  5. [Dates] calcul de date est ce que mon code est bon?
    Par carmen256 dans le forum Langage
    Réponses: 2
    Dernier message: 09/06/2006, 11h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo