Exercice en c

noel46 Messages postés 1 Date d'inscription samedi 19 janvier 2008 Statut Membre Dernière intervention 19 janvier 2008 - 19 janv. 2008 à 20:56
Heni1 Messages postés 1 Date d'inscription mardi 20 mars 2007 Statut Membre Dernière intervention 28 février 2008 - 28 févr. 2008 à 23:17
bonjour
voici mon programme qui demande nom, prenom, sexe et date et doit faire ensuite 140186JOBNAT

si une fille né le 14 janvier 1984; JOBE Natalie

j'ai u  problème pour former "140186JOBNAT"

on pourrait m'aider ?
merci

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define NOM 25
#define SEXE 2

int nom ( char *nom)
int prenom(char *prenom )
int sexe(char *sexe )
int jour(int *jourN)
int mois( char *moisN)
int annee ( int *anneeN);

void matricule (char *nom,char *prenom,char *sexe)

void main (void)

{
    char nom[NOM],char prenom[NOM],char sexe [SEXE];
    int jourN,anneeN;
    char moisN;

    
    //matricule1= matricule();
}

int dnom (char *pnom)
{
    int nbelem;
    fflush(stdin);
    
    for( nbelem=0;nbelem < (NOM-1) && *nom != '\n';nbelem++,nom++)
    {
        

            do
            {
                printf(" entrez votre nom de famille\n");
                *nom=getchar();
                touppper(*nom);

            }while((*nom<'A') || (*nom > 'Z') && (*nom =! '-'));
        
            (*nom-1)='\0';
    }
    return nom

}

int prenom (char *prenom)

{
    int nbelem;
    fflush(stdin);
    for( nbelem=0;nbelem < (NOM-1) && *prenom != '\n';nbelem++,prenom++)
    {
        

            do
            {    
                printf(" entrez votre nom de prenom\n");
                *prenom=getchar();
                touppper(*prenom);

            }while((*prenom<'A') || (*prenom> 'Z') && (*prenom =! '-'));
       
            (*prenom - 1)='\0';
    }

return pprenom

}

int demande_sexe(char *sexe)
{
    int nbelem;
    fflush (stdin);
    for(nbelem=0;nbelem<(NOM-1) && *sexe !='n';nbelem++,sexe++)
    {
        do
        {
            printf("un homme ou une femme : tapez M/F\n");
            *psexe=getchar();
            toupper(*sexe);

        }while ((*sexe =! 'M') || (*sexe =!'F'));

        return sexe

}

int jour(int *jourN)

{
    int c=1;
    
    while(c==1)
    {
        
        do
        {
            printf("Entrez le jour de votre naissance: ");
            scanf("%d",&jourN);

        }while(jourN<1 || jourN>31);
    }
}

int mois(char *moisN)
{
    
    int c=1,mois[12];
    
    
  
    
    while(c==1)
    {
        do
        {
            printf("Entrez le mois de votre naissance: ");
            scanf("%c",&moisN);

        }while((moisN<1) || (moisN>12));

    }

}

int annee (int anneeN)

{

    int c=1;
    
    while (c==1)
    {
        do
        {
            printf("Entrez l'annee de votre naissance: ");
            scanf("%d",&anneeN);

        }while(anneeN>1900);
    }

}

        
/*void matricule(char *nom,char *prenom,char *sexe, int *jourN,int *anneeN, char *moisN)
{
    
    int n;
    

    
    char *strncpy (char *copie, char *nom,int 4);
    
    
    }

}

2 réponses

SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
19 janv. 2008 à 21:15
int nom ( char *nom)
int prenom(char *prenom )
int sexe(char *sexe )
int jour(int *jourN)
int mois( char *moisN)
int annee ( int *anneeN);

void matricule (char *nom,char *prenom,char *sexe)

Il te manque les ; après les prototypes.

Tu utilises des variables avec une porté limité à main dans tes autres fonction

 char nom[NOM],char prenom[NOM],char sexe [SEXE];

Déclaration complètement invalide.

while ((*sexe =! 'M') || (*sexe =!'F'));

=! ???
!=

Ma recommandation: Ouvre un livre de C avant d'aller plus loin.

C++ (@++)<!--
0
Heni1 Messages postés 1 Date d'inscription mardi 20 mars 2007 Statut Membre Dernière intervention 28 février 2008
28 févr. 2008 à 23:17
Salut tt le monde ... !
0
Rejoignez-nous