將Julian曆法中的日轉換成月和日

 將Julian曆法中的日轉換成月和日

 
#include<stdio.h>
 
int a[15]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i,x;
 
int fun(int *p,int x) {
if(x>=366||x<1) {
printf("Eorr!\n");
return 0;
}
else {
for(i=1;x>a[i]+1;i++)
x-=a[i];
a[13]=i;
a[14]=x;
return 1;
}
}
 
int main() {
while(scanf("%d",&x)) {
i=fun(a,x);
if(i>0)
printf("%d月%d日\n",a[13],a[14]);
}
return 0;
}
 
未考慮閏年,因爲題目沒給出具體定義。x>a[i]是每個月的天數+1正好控制爲該月最後一天
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章