Bonjour, j'ai réalisé un programme qui permet de trouver le signe du zodiaque en tapant le jour en chiffre et le mois en lettres. Le programme marche seulement j'ai 2 Warnings :
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
 
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 15
#define LG 12
 
struct signe {            /*Initialisation des paramètres de date*/
       int jour;
       char mois[N];
       char signe[N];
       };
 
struct signe zodiaque [LG]={      
        21, "decembre", "sagittaire",
        20, "janvier", "capricorne",
        19, "fevrier", "verseau",
        20, "mars", "poisson",
        20, "avril", "belier",
        21, "mai", "taureau",
        21, "juin", "gemeau",
        22, "juillet", "cancer",
        22, "aout", "lion",
        22, "septembre", "vierge",
        22, "octobre", "balance",
        22, "novembre", "scorpion"
        };
 
int main (void)
{
    int jour_n,i,id=0;
    char mois_n[N];
 
    do
    {
      puts ("Tapez votre date de naissance, jour en chiffres et mois en lettres :");
      scanf ("%d",&jour_n); 
      scanf ("%s",mois_n);  
 
      for (i=0; i<LG; i++) 
      {
          if ((!stricmp(mois_n,zodiaque[i].mois)))  
          {
             if (!stricmp(mois_n,zodiaque[11].mois) && (jour_n>22) && (jour_n<32)) 
             {
                  printf ("Vous etes nee le %d %s, votre signe du zodiaque est : %s",jour_n
                                                                                    ,mois_n
                                                                                    ,zodiaque[0].signe); 
                  id=1;                                                                  
                  break;
             }
             else if (jour_n<=zodiaque[i].jour)  
             {                             
                 printf ("Vous etes nee le %d %s, votre signe du zodiaque est : %s",jour_n
                                                                                 ,mois_n
                                                                                 ,zodiaque[i].signe);
                 id=1;  
                 break;
             }
             else if (jour_n<32) 
             {
                 printf ("Vous etes nee le %d %s, votre signe du zodiaque est : %s",jour_n
                                                                                  ,mois_n
                                                                                  ,zodiaque[i+1].signe);
                 id=1;                                                                 
                 break;
             }
 
          }
      }
 
    if (id==0) puts ("Cette date n'existe pas");
    }while ((jour_n>32) || (stricmp(mois_n,zodiaque[i].mois)));
 
    puts ("\n");
    system ("pause");
    return (0);
}
Voici donc les 2 warnings :
[Warning] missing braces around initializer
[Warning] (near initialization for `zodiaque[0]')
Je programme sous DEV C/C++.
Voilà merci d'avance pour votre aide.