Bonjour à tous,

Je commence le C donc désolé d'avance pour cette question

J'ai créé un petit programme de test et tout fonctionne parfaitement, mais j'aurais aimé que dans mon message de fin il y ait le nom du mois qui s'affiche au lieu de l'index.
Bien sûr je sais le faire en virant l'enum, mais je tiens à savoir comment faire en le gardant? Est-ce possible?

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
#include <stdio.h>
 
int main(void)
{
  typedef enum {Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec} Month;
 
  typedef struct rainmonth
  {
    Month month;
    unsigned int rain;
  }RainMonth;
 
  unsigned int i;
  RainMonth maxmonth = {0};
  const RainMonth rainfall[12] = {{Jan,23}, {Feb,19}, {Mar,27}, {Apr,38}, {May,33}, {Jun,24}, {Jul,20}, {Aug,18}, {Sep,26}, {Oct,30}, {Nov,26}, {Dec,22}};
 
  for(i=0;i<12;i++)
  {
    if(rainfall[i].rain>maxmonth.rain)
    {
      maxmonth.month = rainfall[i].month;  
      maxmonth.rain = rainfall[i].rain; 
    }
  }                           
 
  printf("The month with the maximum rainfall is the month of %d with a rainfall of %u\n", maxmonth.month, maxmonth.rain);
 
  printf("\nPress ENTER to exit...");
  getchar();
  return 0;
}
Output: The month with the maximum rainfall is the month of 3 with a rainfall of 38

Or je voudrais que ca affiche Apr au lieu de 3
J'ai essayé en mettant %s au lieu du %d mais ca plante

Par ailleurs, si vous avez d'autres remarques n'hésitez pas!
Merci d'avance,
Romain