我再发一个吧,交流。。。输入格式照楼主六位数字依次年月日#include "stdio.h" void main(){ int y,m,d,i,total=0; int a[12]={31,28,31,30,31,30,31,31,30,31,30,31}; printf("\nPlease input the date(eg:20071006):"); scanf("%4d%2d%2d",&y,&m,&d); if ((y%400==0) || (y%100!=0 && y%4==0)) a[1]=29; for(i=0;i#include #include void init(struct tm *dat,unsigned long int date){ long int day; ldiv_t fj; dat->tm_hour=23; dat->tm_min=59; dat->tm_sec=0; fj=ldiv(date,10000); dat->tm_year=fj.quot-1900; fj=ldiv(fj.rem,100); dat->tm_mon=fj.quot-1; dat->tm_mday=fj.rem; day=mktime(dat); dat=gmtime(&day);}int main(int argc, char* argv[]){ struct tm *dat; unsigned long int date; int y,m,d; dat=malloc(sizeof(struct tm)); scanf("%ld",&date); init(dat,date); printf("%d\n",dat->tm_yday+1); free(dat); system("pause"); return 0;}//---------------------------------------------------------------------------
|