用C写,给一个日期怎么得到该天是周几?不是用MFC。谢谢

解决方案 »

  1.   

    A=(y+[y/4]-[y/100]+[y/400]+x ) mod 7星期几:A(A=0 为星期 天!)
    公元年: y
    天数 :x 由当年月份和日期定,即距离当年初的天数。例:2001/3/1  x=31+28+1  )
      

  2.   

    /* 推算给定日期是星期几,假定输入是正确的数据 */
    #include 
    char *name[] = { "monday",
                     "tuesday",
                     "wednesday",
                    "thursday",
                    "friday",
                    "saturday",
                    "sunday"
                   };
    void main(){
      int d,m,y,a;
      printf("day: "); fflush(stdout);
      scanf("%d",&d);
      printf("month: "); fflush(stdout);
      scanf("%d",&m);
      printf("year: "); fflush(stdout);
      scanf("%d",&y);
    /* january and february are treated as month 13 and 14, */
    /* respectively, from the year before.                  */
      if ((m == 1) || (m == 2)){
        m += 12;
        y--;
      }
      a = (d + 2*m + 3*(m+1)/5 + y + y/4 - y/100 + y/400) % 7;
      printf("it's a %s.\n",name[a]);
    }
      

  3.   

    有错,这都是牛人写出来的,只要把fflush(stdout);语句去掉就可以直接执行了。