*分支-13. 计算天数
1 /* 2 * Main.c 3 * B13-分支-13. 计算天数 4 * Created on: 2014年6月12日 5 * Author: Boomkeeper 6 * 7 ******测试又是木有完全通过啊********* 8 */ 9 10 #include <stdio.h> 11 #include <stdlib.h> 12 13 #define JANUARY 31 14 #define FEBRUARY 28 15 #define MARCH 31 16 #define APRIL 30 17 #define MAY 31 18 #define JUNE 30 19 #define JULY 31 20 #define AUGUST 31 21 #define SEPTEMBER 30 22 #define OCTOBER 31 23 #define NOVEMBER 30 24 25 int day_of_year; 26 int year,month,day; 27 28 void output_leap_year() 29 { 30 if(month==1) 31 day_of_year=day; 32 if(month==2) 33 day_of_year=JANUARY+day; 34 if(month==3) 35 day_of_year=JANUARY+FEBRUARY+day+1; 36 if(month==4) 37 day_of_year=JANUARY+FEBRUARY+MARCH+day+1; 38 if(month==5) 39 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+day+1; 40 if(month==6) 41 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+day+1; 42 if(month==7) 43 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+day+1; 44 if(month==8) 45 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+day+1; 46 if(month==9) 47 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+day+1; 48 if(month==10) 49 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+SEPTEMBER+day+1; 50 if(month==11) 51 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+SEPTEMBER+OCTOBER+day+1; 52 if(month==12) 53 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+SEPTEMBER+OCTOBER+NOVEMBER+day+1; 54 55 printf("%i\n",day_of_year); 56 } 57 58 void output_non_leap() 59 { 60 if(month==1) 61 day_of_year=day; 62 if(month==2) 63 day_of_year=JANUARY+day; 64 if(month==3) 65 day_of_year=JANUARY+FEBRUARY+day; 66 if(month==4) 67 day_of_year=JANUARY+FEBRUARY+MARCH+day; 68 if(month==5) 69 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+day; 70 if(month==6) 71 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+day; 72 if(month==7) 73 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+day; 74 if(month==8) 75 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+day; 76 if(month==9) 77 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+day; 78 if(month==10) 79 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+SEPTEMBER+day; 80 if(month==11) 81 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+SEPTEMBER+OCTOBER+day; 82 if(month==12) 83 day_of_year=JANUARY+FEBRUARY+MARCH+APRIL+MAY+JUNE+JULY+AUGUST+SEPTEMBER+OCTOBER+NOVEMBER+day; 84 85 printf("%i\n",day_of_year); 86 } 87 int main() 88 { 89 char m,n; 90 91 scanf("%4i %c %2i %c %2i",&year,&m,&month,&n,&day); 92 printf("input successful\n%i %i %i\n",year,month,day); 93 94 if(month<=0 || day<=0) 95 exit(0); 96 if(month>12 || day>31) 97 exit(0); 98 99 if((year%4==0) && (year%400!=0)) 100 { 101 //闰年 102 output_leap_year(); 103 } 104 else 105 { 106 if(year%400==0) 107 { 108 //还是闰年 109 output_leap_year(); 110 } 111 else 112 { 113 //不是闰年 114 output_non_leap(); 115 } 116 } 117 118 return 0; 119 }
分类:
PAT( 程序设计基础)
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· DeepSeek火爆全网,官网宕机?本地部署一个随便玩「LLM探索」
· 开发者新选择:用DeepSeek实现Cursor级智能编程的免费方案
· 【译】.NET 升级助手现在支持升级到集中式包管理
· 独立开发经验谈:如何通过 Docker 让潜在客户快速体验你的系统
· Tinyfox 发生重大改版