fork download
  1. #include <stdio.h>
  2.  
  3. struct Date{
  4. int day;
  5. int month;
  6. int year;
  7. };
  8.  
  9. int before(struct Date d1,struct Date d2){
  10. if(d1.year < d2.year){
  11. return 1;
  12. }
  13. else if(d1.year > d2.year){
  14. return 0;
  15. }
  16. else{
  17. if(d1.month < d2.month){
  18. return 1;
  19. }
  20. else if(d1.month > d2.month){
  21. return 0;
  22. }
  23. else{
  24. if(d1.day < d2.day){
  25. return 1;
  26. }
  27. else if(d1.day >= d2.day){
  28. return 0;
  29. }
  30. }
  31. }
  32. }
  33.  
  34. int within30days(struct Date d1,struct Date d2){
  35. long d1Days,d2Days;
  36. d1Days = d1.year*12*30+d1.month*30+d1.day;
  37. d2Days = d2.year*12*30+d2.month*30+d2.day;
  38. if(d1Days>d2Days){
  39. if(d1Days<=d2Days+30)
  40. return 1;
  41. }
  42. else{
  43. if(d2Days<=d1Days+30)
  44. return 1;
  45. }
  46. return 0;
  47. }
  48.  
  49. int main(void) {
  50. struct Date d1,d2;
  51. int a,b;
  52.  
  53. printf("Enter d1.day:");
  54. scanf("%d",&d1.day);
  55. printf("Enter d1.month:");
  56. scanf("%d",&d1.month);
  57. printf("Enter d1.year:");
  58. scanf("%d",&d1.year);
  59.  
  60. printf("Enter d2.day:");
  61. scanf("%d",&d2.day);
  62. printf("Enter d2.month:");
  63. scanf("%d",&d2.month);
  64. printf("Enter d2.year:");
  65. scanf("%d",&d2.year);
  66.  
  67. a = before(d1,d2);
  68. printf("before() output: %d",a);
  69.  
  70. b=within30days(d1,d2);
  71. printf("within30days() outout: %d",b);
  72.  
  73. return 0;
  74. }
  75.  
Success #stdin #stdout 0s 9432KB
stdin
11 2 2017 11 3 2016
stdout
Enter d1.day:Enter d1.month:Enter d1.year:Enter d2.day:Enter d2.month:Enter d2.year:before() output: 0within30days() outout: 0