Datei: p7-1.c


    1   /*
    2    *      p7-1.c
    3    *      Beispielprogramm 1, Abschnitt 7
    4    */
    5   
    6   static int day_tab[2][13] = {
    7     { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 },
    8     { 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
    9   };
   10   
   11   /* Tag im Jahr aus Monat und Tag bestimmen */
   12   int day_of_year(int year, int month, int day)
   13   {
   14     int i, leap;
   15     
   16     leap = year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
   17     for (i = 1; i < month; i++)
   18       day += day_tab[leap][i];
   19     return (day);
   20   
   21   } /* day_of_year() */
   22   
   23   /* Monat und Tag aus Tag im Jahr */
   24   void month_day(int year, int yearday, int *pmonth, int *pday)
   25   {
   26     int i, leap;
   27     
   28     leap = year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
   29     for (i = 1; yearday > day_tab[leap][i]; i++)
   30       yearday -= day_tab[leap][i];
   31     *pmonth = i;
   32     *pday = yearday;
   33   
   34   } /* month_day() */


Erzeugt von c2html 1.01