fork download
  1. #include <stdio.h>
  2. int is_uruu(int y){
  3. if(((y%4==0)&&(y%100!=0))||(y%400==0)){
  4. return 1;
  5. }
  6. else{
  7. return 0;
  8. }
  9. }
  10.  
  11. int maxday_of_month(int y, int m){
  12. if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
  13. return 31;
  14. else if(m==4||m==6||m==9||m==11)
  15. return 30;
  16. else{
  17. if(is_uruu(y)==1)
  18. return 29;
  19. else
  20. return 28;
  21. }
  22. }
  23.  
  24. int days_form(int y, int m, int d){
  25. int i, sum=0;
  26. for(i=1; i<m; i++){
  27. maxday_of_month(y, i);
  28. sum=sum+(maxday_of_month(y, i)-1);
  29. }
  30. sum=sum+1*(m-1);
  31. sum=sum+(d-1);
  32. return sum;
  33. }
  34. int main(void) {
  35. int y, m, d, x;
  36. scanf("%d,%d,%d", &y, &m, &d);
  37. x=days_form(y, m, d);
  38. printf("%d年1月1日と%d年%d月%d日の差は%d日です。", y, y, m, d, x);
  39.  
  40.  
  41. return 0;
  42. }
  43.  
Success #stdin #stdout 0.01s 5316KB
stdin
2112,1,2
stdout
2112年1月1日と2112年1月2日の差は1日です。