大佬幫忙看看哪里錯了
請使用switch語句和if...else語句,計算2008年8月8日這一天,是該年中的第幾天。
程序分析:
? 以5月1日為例,應該先把前4個月的天數加起來,然后再加上1天即本年的第幾天。
特殊情況:
? 在計算閏年的時候,2月是29天
#include <stdio.h>
int main()?
{?
? ? // 定義需要計算的日期?
? ? int year = 2008;
? ? int month = 8;
? ? int day = 8;
? ? int big month=31;//1,3,5,7,8,10,12月
? ? int small month=30;//4,6,9,11月
? ? //天數
? ? int mun;
? ? //檢測是否為閏年的狀態位
? ? int flag;
??
? ? switch(month){
? ? ? ? //1月
? ? ? ? case 1:
? ? ? ? ? ? ?mun=big month;
? ? ? ? ? ? ?break;
? ? ? ? case 2:
? ? ? ? //1,2月
? ? ? ? ? ? ?mun=big month+28;
? ? ? ? ? ? ?break;
? ? ? ? case 3:
? ? ? ? //1,2,3
? ? ? ? ? ? ?mun=(big month*2)+28;
? ? ? ? ? ? ?break;
? ? ? ? case 4:
? ? ? ? //1,2,3,4月
? ? ? ? ? ? ?mun=(big month*2)+28+small month;
? ? ? ? ? ? ?break;
? ? ? ? case 5:
? ? ? ? //1,2,3,4,5月
? ? ? ? ? ? ?mun=(big month*3)+28+small month;
? ? ? ? ? ? ?break;
? ? ? ? case 6:
? ? ? ? //1,2,3,4,5,6月
? ? ? ? ? ? ?mun=(big month*3)+28+(small month*2);
? ? ? ? ? ? ?break;
? ? ? ? case 7:
? ? ? ? //1,2,3,4,5,6,7月
? ? ? ? ? ? ?mun=(big month*4)+28+(small month*2);
? ? ? ? ? ? ?break;
? ? ? ? case 8:
? ? ? ? //1,2,3,4,5,6,7,8月
? ? ? ? ? ? ?mun=(big month*5)+28+(small month*2);
? ? ? ? ? ? ?break;
? ? ? ? case 9:
? ? ? ? //1,2,3,4,5,6,7,8,9月
? ? ? ? ? ? ?mun=(big month*5)+28+(small month*3);
? ? ? ? ? ? ?break;
? ? ? ? case 10:
? ? ? ? //1,2,3,4,5,6,7,8,9,10月
? ? ? ? ? ? ?mun=(big month*6)+2month+(small month*3);
? ? ? ? ? ? ?break;
? ? ? ? case 11:
? ? ? ? //1,2,3,4,5,6,7,8,9,10,11月
? ? ? ? ? ? ?mun=(big month*6)+28+(small month*4);
? ? ? ? ? ? ?break;
? ? ? ? case 12:
? ? ? ? //1,2,3,4,5,6,7,8,9,10,11,12月
? ? ? ? ? ? ?mun=(big month*7)+28+(small month*4);
? ? ? ? ? ? ?break;
? ? ? ? default:
? ? ? ? ? ? ?printf("一年當中只有12個月");
? ? ? ? ? ? ?break;
? ? }
? ? //計算天數
? ? mun+=day;
? ??
? ? //當改年為閏年時,將狀態位設置成1,否則為0
? ? if(year%400==0||(year%4==0 && year%100!=0))
? ? ? ? ?flag=1;
? ? else
? ? ? ? ?flag=0;
? ? ? ? ?
? ? //即改年為閏年,2月為29天? ??
? ? if(flag==1&&month>2)
? ? ? ? ?mun+=1;
? ? ? ? ?
? ? printf("%d年%d月%d日是改年的第%d天",year,month,day,mun);
return 0;
}
2022-02-15
滴滴滴
2022-02-11
在線等,感謝指導