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 :

Tableau d'enregistrement de structure


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 18
    Par défaut Tableau d'enregistrement de structure
    Bonjour tout le monde je suis débutant en C et je voudrai créer un tableau d'enregistrement pour la structure "etudiant"{
    matricule: entier;
    nom:chaine;
    prenom:chaine;
    age:entier;
    filiere:chaine;
    };
    en fait je sais pas comment m'y prendre
    Je voudrais avoir une procédure enregistrer, une procédure affichage, une procédure supprimé, une procédure cherché et tout ca se passe dans un tableau

  2. #2
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 026
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    typedef struct
    {
     
     
    } Etudiant;
     
    Etudiant tab[10]; //table de 10 étudiant
    tab[0].nom = "koukou"; //nom de l'étudiant 0
    Essaye déjà de faire quelque chose avec cela.

  3. #3
    Expert confirmé
    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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tab[0].nom = "koukou"; //nom de l'étudiant 0
    C'est faux : tab[0].nom est un tableau et on ne peut jamais écrire tableau = quelque chose. C'est une confusion entre initialisation et affectation. On doit passer par un strcpy() ou une fonction similaire.

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 18
    Par défaut
    Là je suis vraiment confus pouvez me donner un exemple bien precis de correction de cet exo dans le cas où les info sont saisies à partir du clavier (nom,prenom,age et autre) . Comme je l'ai dit, je ne fais que débuter et quand un donne une réponse et un autre dit automatiquement que c'est faux, ça me perd dans mes idées. Je ne comprend plus rien là....

  5. #5
    Membre émérite Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Par défaut
    Sauf si Etudiant est déclaré ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    typedef struct
    {
     const char * nom;
      ...
    } Etudiant;
    Mais je ne recommande pas à l'auteur du post de faire cela dans un premier temps.

    D'ailleurs, d'habitude, on voit plutôt des choses de ce genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    typedef struct
    {
     char nom[10];
      ...
    } Etudiant;
    D'où la remarque de diogene je pense.

  6. #6
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 026
    Par défaut
    Nom n'est pas forcément un tableau, ça peut très bien être un pointeur char.
    Ici je n'ai fait qu'un exemple.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    char *nom != char nom[10];
    EDIT : grillé par Valefor^^

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 18
    Par défaut
    mais je voudrais que les informations soient enregistrées dans un tableau parce que pour le moment je ne maitrise pas les pointeurs

  8. #8
    Membre émérite Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Par défaut
    C'est bizarre comme cette histoire de liste d'étudiants est très en vogue en ce moment

    http://www.developpez.net/forums/d11...au-structures/
    http://www.developpez.net/forums/d11...me-structures/
    http://www.developpez.net/forums/d11...cture-pointee/

    Non, mais sérieusement, tu devrais trouver matière à t'inspirer dans ces sujets (qui ne sont pas si vieux que ça, et pour certains encore en première page).

  9. #9
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 18
    Par défaut
    Bah voila comment j'ai déclaré ma structure:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    struct etudiant{
    	int matricule;
    	char nom[20];
    	char penom[30];
    	int age;
    	char filiere[30];
    };
    1)Comment dois je déclarer mon tableau?
    2)Comment creer la procédure:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    void enregistrer(void){
     
    }

Discussions similaires

  1. Réponses: 4
    Dernier message: 23/03/2007, 09h40
  2. enregistrement de structure dans un fichier
    Par florette dans le forum C
    Réponses: 8
    Dernier message: 03/12/2006, 20h57
  3. [C#] Tableau de Hachage et structure
    Par Lambrosx dans le forum Windows Forms
    Réponses: 1
    Dernier message: 25/09/2006, 10h10
  4. Réponses: 7
    Dernier message: 21/12/2005, 16h44
  5. Réponses: 3
    Dernier message: 18/10/2005, 13h43

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