Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
数据都没问题!!为什么还是没法让我睡呢??各位,救救我吧#include"stdio.h" #include "malloc.h" #include "string.h" #include "stdlib.h" #define compare(a) if (strcmp(a,month)==0) #define cmpr(c,b) if(c==b) int input(char *all,char *day,char *month,char *year); void copy(char *from,char *to); int analyse1(char *day,char *month,char *year); void main() { int num; int i; char **Total; char **day; char **month; char **Tzo_month; char **year; int DaySum; int i_day; int i_year; int i_month; int left; char* str; scanf("%d",&num); getchar(); Tzo_month=(char **)malloc(10*num); Total=(char **)malloc(10*num); day=(char **)malloc(10*num); month=(char **)malloc(10*num); year=(char **)malloc(10*num); for (i=0;i<num;i++) { Tzo_month[i]=(char *)malloc(90); Total[i]=(char *)malloc(200); day[i]=(char *)malloc(30); month[i]=(char*)malloc(60); year[i]=(char*)malloc(60); gets(Total[i]); input(Total[i],day[i],month[i],year[i]); } printf("%d\n",num); for (i=0;i<num;i++) { DaySum=analyse1(day[i],month[i],year[i]); i_year=DaySum/260; left=DaySum%260; i_day=left%13+1; i_month=left%20; { cmpr(i_month,0) str="imix"; cmpr(i_month,1) str="ik"; cmpr(i_month,2) str="akbal"; cmpr(i_month,3) str="kan"; cmpr(i_month,4) str="chicchan"; cmpr(i_month,5) str="cimi"; cmpr(i_month,6) str="manik"; cmpr(i_month,7) str="lamat"; cmpr(i_month,8) str="muluk"; cmpr(i_month,9) str="ok"; cmpr(i_month,10) str="chuen"; cmpr(i_month,11) str="eb"; cmpr(i_month,12) str="ben"; cmpr(i_month,13) str="ix"; cmpr(i_month,14) str="mem"; cmpr(i_month,15) str="cib"; cmpr(i_month,16) str="caban"; cmpr(i_month,17) str="eznab"; cmpr(i_month,18) str="canac"; cmpr(i_month,19) str="ahau"; copy(str,Tzo_month[i]); } printf("%d %s %d\n",i_day,Tzo_month[i],i_year); } for (i=0;i<num;i++) { free(Tzo_month[i]); Tzo_month[i]=NULL; free(Total[i]); Total[i]=NULL; free(day[i]); day[i]=NULL; free(month[i]); month[i]=NULL; free(year[i]); year[i]=NULL; } free(Tzo_month); Tzo_month=NULL; free(Total); Total=NULL; free(day); day=NULL; free(month); month=NULL; free(year); year=NULL; } int input(char *all,char *day,char *month,char *year) { int i; int j; int k; for (i=0;all[i]!='.';i++) { day[i]=all[i]; } day[i]=0; for (j=i+2;all[j]!=' ';j++) { month[j-i-2]=all[j]; } month[j-i-2]=0; for (k=j+1;all[k]!=0;k++) { year[k-j-1]=all[k]; } year[k-j-1]=0; return 0; } int analyse1(char *day,char *month,char *year) { int i_sum; int i_month; int i_day=atoi(day); int i_year=atoi(year); compare("pop") i_month=1; compare("no") i_month=2; compare("zip") i_month=3; compare("zotz") i_month=4; if(strcmp("tzec",month)==0) i_month=5; if(strcmp("xul",month)==0) i_month=6; if(strcmp("yoxkin",month)==0) i_month=7; if(strcmp("mol",month)==0) i_month=8; if(strcmp("chen",month)==0) i_month=9; if(strcmp("yax",month)==0) i_month=10; compare("zac") i_month=11; compare("ceh") i_month=12; compare("mac") i_month=13; compare("kankin") i_month=14; compare("muan") i_month=15; compare("pax") i_month=16; compare("koyab") i_month=17; compare("cumku") i_month=18; compare("uayet") i_month=19; i_sum=i_year*365+(i_month-1)*20+i_day; return(i_sum); } void copy(char *from,char *to) { int i; for (i=0;from[i]!=0;i++) { to[i]=from[i]; } to[i]=0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator