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 :

probleme c (des erreurs ?? oû ?? pourquoi? )


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 15
    Par défaut probleme c (des erreurs ?? oû ?? pourquoi? )
    bonjour !
    je suis un nouveaux et je suis un débutant en C++ .
    Mais j'ai un probleme dans un de mes programmes ...
    Jetez y un p'tit coup d'oeil et dite moi les ereurs !!! la correction !


    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
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    /* ce prog a été concu par l'as de trefle */
    /* c'est un questionnaire ! */
    #include <stdio.h>    
    #include <string.h>
    #include <time.h>
     
    void main (void)
    {
    printf("happy game\n");
    int a ;
    char b[99] ;
    int buf ;
    unsigned int lpti ;
    printf("qu'est ce qu'il y a entre ciel et terre ? ") ;
    scanf( "%s" , b ) ;
    	for(a=0 ; a<1 ; a=1+a)
    	{
    	if(strcmp (b,"et")==0)
    		{
    		printf("bravo") ;
                    }
    	else
            {
    		printf("perdu") ;
            }
    	}
    printf("\n qui est un génie ??? \n " ) ;
    scanf("%s" , b ) ;
    if(strcmp (b,"flo")==0 ) 
    	  {	 
    	  printf("bien , je suis tout a fait d'accor ac toi !!!\n je vois que tu es très intelligent \n") ;
    	  }
    	  else
    	  {
    	  printf("non , non tu te trompes c 'est flo le génie \n") ;
    	  }
    printf(" Que dit une blonde recevant une crotte d'oiseau sur la tête ? \n ")   ;
    scanf("%s" , b  ) ;
    if(strcmp(b,"Heureusement, les vaches ne volent pas " ) ==0 )
    	{
    	printf("c'est ca ") ;
    	}
    	else
    	{
    	printf(" Heureusement, les vaches ne volent pas") ;
            }
    }
     
    /* clock example: countdown */
     
    void wait ( int seconds )
    {
     
      clock_t endwait;
      endwait = clock () + seconds * CLK_TCK ;
      while (clock() < endwait) {}
    }
     
    int main ()
    {
      int n;
      printf ("que va t'il se passer dans 30 secondes ??? \n");
      for (n=30; n>0; n--)
      {
        printf ("%d\n",n);
        wait (1);
      }
      printf ("et ben il se passe rien!!!\n");
      return 0;
    }
     
    void love (void) 
    {
     
     
     
    printf("quel est le prenom de ma nana \n ") ;
    scanf("%s",b ) ;
    if(strcmp(b , "lea")  == 0 )
    	{
    	printf("bien bien") ;
    	}
    	else
            {
            printf("non c 'est pas encore ca ") ;
    	}
     
    }
    merci !!!!

  2. #2
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par défaut
    Merci d'utiliser la balise Code...

    Et à première vue, c'est plus du C que du C++...

    Edit : tu dois avoir des messages d'erreur avec ton compilateur, non ?

  3. #3
    Rédacteur

    Avatar de khayyam90
    Homme Profil pro
    Architecte de système d’information
    Inscrit en
    Janvier 2004
    Messages
    10 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Janvier 2004
    Messages : 10 371
    Par défaut
    c'est du C, je déplace dans le forum qui va bien

  4. #4
    Membre chevronné
    Avatar de joellel
    Profil pro
    Inscrit en
    Février 2003
    Messages
    234
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Février 2003
    Messages : 234
    Par défaut
    Citation Envoyé par as-de-trefle
    : j'ai un probleme dans un de mes programmes ...
    Quel est le symptôme du problème?
    Erreur de compilation, d'exécution?
    Aide-nous un peu

  5. #5
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    Citation Envoyé par joellel
    Quel est le symptôme du problème?
    Erreur de compilation, d'exécution?
    Aide-nous un peu
    Pour la compilation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    main.c:8: warning: return type of 'main' is not `int'
    main.c: In function `main':
    main.c:10: warning: ISO C90 forbids mixed declarations and code
    main.c:12: warning: unused variable `buf'
    main.c:13: warning: unused variable `lpti'
    main.c: At top level:
    main.c:60: error: conflicting types for 'main'
    main.c:8: error: previous definition of 'main' was here
    main.c: In function `love':
    main.c:78: error: `b' undeclared (first use in this function)
    main.c:78: error: (Each undeclared identifier is reported only once
    main.c:78: error: for each function it appears in.)
    Process terminated with status 1 (0 minutes, 3 seconds)
    Pourquoi ? Mauvaise lecture de ton cours de C (ou très mauvais cours à bruler de suite).

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 398
    Par défaut
    Sans compter les multiples utilisations de scanf("%s") ---> Utilise fgets() à la place.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Membre éprouvé

    Inscrit en
    Juin 2004
    Messages
    1 397
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 1 397
    Par défaut
    Moi ce qui me choque directement, c'est que tu as deux main() !!!

    A partir de là, le compilateur avec les bonnes options te sortira des erreurs, à toi de les corriger au fur et à mesure...

  8. #8
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Bon, j'ai grosso modo la même chose que gege :

    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
     
    test.c:8: warning: return type of 'main' is not 'int'
    test.c: In function 'main':
    test.c:13: warning: unused variable 'lpti'
    test.c:12: warning: unused variable 'buf'
    test.c: At top level:
    test.c:52: warning: no previous prototype for 'wait'
    test.c: In function 'wait':
    test.c:55: error: 'CLK_TCK' undeclared (first use in this function)
    test.c:55: error: (Each undeclared identifier is reported only once
    test.c:55: error: for each function it appears in.)
    test.c: At top level:
    test.c:60: error: conflicting types for 'main'
    test.c:8: error: previous definition of 'main' was here
    test.c:73: warning: no previous prototype for 'love'
    test.c: In function 'love':
    test.c:78: error: 'b' undeclared (first use in this function)
    Bon, mes remarques :

    - Indentation affreuse
    - deux main, c'est impossible (par de surcharge possible en C qui plus est sur la fonction main.)
    - tu mélanges déclaration et instructions (ton premier printf n'est pas correct, sauf en C99 mais je doute que tu en sois conscient).
    - tu utilises scanf pour lire une chaine, il faut que tu utilises fgets, c'est plus sur et plus logique (car ta lecture n'a rien de formatée).
    - tu utilises des accents dans l'affichage de tes chaînes, ça n'est pas portable.
    - tu utilises des construction plutôt bizarres : for(a=0 ; a<1 ; a=1+a)
    - tu n'a semble t'il pas compris certaines choses en matière d'algo (regarde le while de ta fonction wait, je ne suis pas sur que tu ais saisie le mode de fonctionnement)

  9. #9
    Membre confirmé Avatar de skip78
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 247
    Par défaut
    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
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    #include <stdio.h>   
    #include <stdlib.h> 
    #include <string.h>
    #include <time.h>
     
    void love();
    void fin();
    void wait(int seconds);
     
    int main(int argc, char *argv[])
    {
        /* déclaration des variables */
        int a ;
        char b[99] ;
        int buf ;
        //unsigned int lpti ; // Sert à QUOI ?
     
        printf("qu'est ce qu'il y a entre ciel et terre ?\n") ;
        scanf( "%s" , b ) ;
     
        //for(a=0 ; a<1 ; a=1+a){ //completement useless
        if(strcmp (b,"et")==0) printf("bravo\n\n") ;
        else printf("perdu\n\n") ;
     
        printf("\nqui est un genie ??? \n " ) ; //surement pas toi ^^
        fflush(stdin); //vide le buffer memoire
        scanf("%s" , &b ) ;
        if(strcmp (b,"flo")==0 ) printf("bien , je suis tout a fait d'accord ac toi !!!\n je vois que tu es tres intelligent \n\n") ;
        else printf("non , non tu te trompes c 'est flo le genie \n\n") ;
     
        printf("Que dit une blonde recevant une crotte d'oiseau sur la tete ? \n ")   ;
        fflush(stdin);
        scanf("%s" , &b  ) ;
        if(strcmp(b,"Heureusement, les vaches ne volent pas" ) ==0 ) printf("c'est ca\n\n") ;
        else printf("Heureusement, les vaches ne volent pas\n\n") ;
     
        //appel des deux fonctions
        love();
        fin();
     
        system("pause");
        return(0);
    }
     
    /* clock example: countdown */
     
    void wait ( int seconds ){
      clock_t endwait;
      endwait = clock () + seconds * CLK_TCK ;
      while (clock() < endwait) {}
    }
     
    void fin(){
      int n;
      printf ("que va t'il se passer dans 30 secondes ??? \n");
      for (n=30; n>0; n--)
      {
        printf ("%d\n",n);
        wait (1);
      }
      printf ("et ben il se passe rien!!!\n");
    }
     
    void love () {
      char b[99] ;
      do{
        printf("quel est le prenom de ma nana ?\n ") ;
        fflush(stdin);
        scanf("%s",&b ) ;
        if(strcmp(b , "lea")  == 0 ) printf("bien bien") ;
        else printf("non c 'est pas encore ca \n") ;
      }while(strcmp(b , "lea")) ;
    }

Discussions similaires

  1. Probleme récupération des erreurs
    Par BILLANT dans le forum VBScript
    Réponses: 0
    Dernier message: 28/01/2009, 18h15
  2. Réponses: 3
    Dernier message: 19/09/2007, 17h11
  3. [cvBlobsLib]Probleme à l'execution avec des erreurs LNK2019
    Par Jim_Nastiq dans le forum Bibliothèques
    Réponses: 2
    Dernier message: 01/03/2007, 14h40
  4. Réponses: 2
    Dernier message: 06/07/2006, 08h22
  5. [Struts Validator] probleme affichage des erreurs
    Par Morpheus2144 dans le forum Struts 1
    Réponses: 7
    Dernier message: 24/01/2006, 15h25

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