//輸入年、月、日,確定這壹天是壹年中的哪壹天。
int getDaysByMonth(int m,int d,char flag)
{
int c;
If(flag=='r'){//閏年
if(m = = 2){//二月是29天。
return(31+d);
} else if(m & amp;gt;2){
c = 0;
m = m-1;
for(;m & ampgt;0;m -)
{
if(m = = 1 | | m = = 3 | | m = = 5 | | m = = 7 | | m = = 8 | | m = = 10 | | m = = 12){
c+= 31;
}else if(m==2){
c+= 29;
}否則{
c+= 30;
}
}
返回c+d;
}否則{
返回d;
}
}else{//平年
if(m = = 2){//二月是28天。
return(31+d);
} else if(m & amp;gt;2){
c = 0;
m = m-1;
for(;m & ampgt;0;m -)
{
if(m = = 1 | | m = = 3 | | m = = 5 | | m = = 7 | | m = = 8 | | m = = 10 | | m = = 12){
c+= 31;
}else if(m==2){
c+= 28;
}否則{
c+= 30;
}
}
返回c+d;
}否則{
返回d;
}
}
}
void main()
{
int y,m,d,count = 1;
Printf("請輸入年、月、日(如2017-01-01):");
scanf("%d-%d-%d ",& ampy & amp;m & amp;d);
while(((((y % 4 = = 0 & amp;& ampy%100!= 0)| |(y % 400 = = 0))& amp;& amp(m = = 2))& amp;& ampd & ampgt;29)||
(y%400!= 0 & amp& ampy%4!= 0 & amp& ampm = = 2 & amp& ampd & ampgt;28)||
((m = = 1 | | m = = 3 | | m = = 5 | | m = = 7 | | m = = 8 | | m = = 10 | | m = = 12)& amp;& ampd & ampgt;31)||
((m = = 4 | | m = = 6 | | m = = 9 | | m = = 11)& amp;& ampd & ampgt;30)){
Printf("請輸入年、月、日(如2017-01-01):");
scanf("%d-%d-%d ",& ampy & amp;m & amp;d);
}
//先判斷是不是閏年。
if((y % 4 = = 0 & amp;& ampy%100!=0)||(y%400==0)){//閏年
count=getDaysByMonth(m,d,' r ');
}else{//平年
count=getDaysByMonth(m,d,' n ');
}
Printf("%d-%02d-%02d是今年的第%d天\n ",y,m,d,count);
putchar(' \ n ');
}
擴展數據:
包括用法:
#include命令是壹種預處理命令,可以將其他源代碼內容插入到指定位置;能識別出壹段只在特定條件下才會被編譯的程序代碼;妳可以定義壹個具有類似標識符功能的宏,並且在編譯時,預處理器會用其他文本替換這個宏。
插入頭文件的內容
#include命令告訴預處理器將指定頭文件的內容插入到預處理器命令的相應位置。有兩種方法可以指定要插入的頭文件:
1 、# include & amplt;文件& ampgt;
2.#包含“文件名”
如果需要包含stdlib.h或實現版本提供的頭文件,應該使用第壹種格式。如下例所示:
#包含& amplt;math.h & ampgt;//壹些數學函數的原型,以及相關的類型和宏。
如果需要包含為程序開發的源文件,應該使用第二種格式。
用#include命令插入的文件通常具有擴展名。該文件包括函數原型、宏定義和類型定義。通過使用#include命令,任何源文件都可以使用這些定義。如下例所示:
#include"myproject.h"//當前項目中使用的函數原型、類型定義和宏。
您可以在#include命令中使用宏。如果使用宏,宏的替換結果必須確保生成正確的#include命令。示例1顯示了這樣壹個#include命令。
#include命令中的示例1宏
#ifdef _DEBUG_
#定義MY_HEADER"myProject_dbg.h "
#否則
#定義MY_HEADER"myProject.h "
#endif
#包含我的標題
當上述程序代碼進入預處理時,如果已經定義了_DEBUG_ macro,預處理程序將插入myProject_dbg.h的內容;如果尚未定義,插入myProject.h的內容