為什么時(shí)先12到1呢,先1到12為什么是錯(cuò)誤的
#include <stdio.h>
int main()?
{?
? ? /* 定義需要計(jì)算的日期 */
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? int sum=day;
? ? int run=0;
? ? if ((year%400==0)||((year%4==0)&&(year/100!=0))){
? ? ? ? run=1;
? ? }
? ??
? ? switch(month){
? ? ? ? case 12: sum+=30;
? ? ? ? case 11: sum+=31;
? ? ? ? case 10: sum+=30;
? ? ? ? case 9: sum+=31;
? ? ? ? case 8: sum+=31;
? ? ? ? case 7: sum+=30;
? ? ? ? case 6: sum+=31;
? ? ? ? case 5: sum+=30;
? ? ? ? case 4: sum+=31;
? ? ? ? case 3: if(run){
? ? ? ? ? ? sum+=29;
? ? ? ? }else{
? ? ? ? ? ? sum+=28;
? ? ? ? };
? ? ? ? case 2: sum+=31;
? ? ? ? case 1: sum+=0;break;
? ? ? ? default: printf("wrong input");
? ? }
? ??
? ? printf("%d年%d月%d日是該年的第%d天",year,month,day,sum);
? ? return 0;
}
2016-10-20
我這個(gè)代碼到底哪里錯(cuò)了呢?
include <stdio.h>
int main()?
{?
? ? int year = 2008;
? ? int month = 8;
? ? int day ? = 8;
? ? switch(day)
? ? {
? ? ? ? case 1 : day+=31; break;
? ? ? ? case 2:?
? ? ? ? if(2008%400==0||2008%4==0&&2008%100!=0)
? ? ? ? {
? ? ? ? ? ? day+=29;
? ? ? ? ? else
? ? ? ? ? ? day+=28;
? ? ? ? }?
? ? ? ??
? ? ? ? case 3 : day+=31; break;
? ? ? ? case 4 : day+=30; break;
? ? ? ? case 5 : day+=31; break;
? ? ? ? case 6 : day+=30; break;
? ? ? ? case 7 : day+=31; break;
? ? ? ? case 8 : day+=31; break;
? ? ? ? case 9 : day+=30; break;
? ? ? ? case 10 :day+=31; break;
? ? ? ? case 11: day+=30; break;
? ? ? ? case 12: day+=31; break;}
printf("2008年8月8日是第%d天");
? ??
2016-10-19
先12到1:計(jì)算的是8及其以下的(即87654321)
先1到12:計(jì)算的是8及其以上的(即89101112)