本文共 1548 字,大约阅读时间需要 5 分钟。
翻阅笔记系列
看以前的笔记,感觉就是 我以前还了解过这个。。。int year;scanf("%d",&year);bool bFlag = year%(year%100?4:400)?false:true;if(true == bFlag){ //是闰年}else{ //非闰年}
方法1:推荐
//得到每月的天数:#define MONTH 12int GetDaysCount(const int year, const int month){ char days[MONTH] = { 31,28,31,30,31,30,31,31,30,31,30,31}; if (month == 2) { bool bFlag = year%(year%100?4:400)?false:true; if ( bFlag == 1) //29 { days[1] = 29; } } return days[month-1];}
方法2:
/////////////得到每月的天数//////////////////// int a ; int year = 2016; scanf("%d",&a); //如果是2月的话判断闰年 if (a == 2 ) { bool bfalg = year%(year%100?4:400)?false:true; if (bfalg) { printf("29\n"); } else { printf("28\n"); } } else { bool bfalg = (a%2)?(a<8):(a>=8); if (bfalg) { printf("31\n"); } else { printf("30\n"); } }
方法3: 推荐
//方法3:更易理解 int days; switch (a) { case 2: { bool bfalg = year%(year%100?4:400)?false:true; if (bfalg) { days = 29; } else { days = 28; } break; } case 4: case 6: case 9: case 11: days = 30; break; default: //1,3,5,7,8,10,12 days = 31; break; }/////////////////////////////////
转载地址:http://vokmi.baihongyu.com/