當前位置:首頁 » 編程語言 » c語言代碼年月日
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言代碼年月日

發布時間: 2023-03-12 21:44:30

c語言輸入年份和天數輸出對應的年月日

C語言輸入年份和天數輸出對應的年月日的源代碼如下:

#include<iostream>

intday(int&year,int&month);

intmain()

{

intyear{};

intmonth{};

std::cout<<"請輸入年和月(空格隔開):";

std::cin>>year>>month;

std::cout<<"該月天數:"<<day(year,month)<<' ';

return0;

}

(1)c語言代碼年月日擴展閱讀

1、C++ 標准庫沒有提供所謂的日期類型。C++ 繼承了 C 語言用於日期和時間操作的結構和函數。為了使用日期和時間相關的函數和結構,需要在 C++ 程序中引用 <ctime> 頭文件。

2、有四個與時間相關的類型:clock_t、time_t、size_t和tm。類型 clock_t、size_t 和 time_t 能夠把系統時間和日期表示為某種整數。

❷ C語言編程序實現如下功能:輸入任意一個日期的年、月、日的值,求出是星期幾並輸出。

用蔡勒公式即可:

#include<stdio.h>

intmain()

{

inty,m,d,c,w;

printf("輸入年月日(空格間隔):");

scanf("%d%d%d",&y,&m,&d);

if(m==1||m==2)

{//判斷月份是否為1或2y--;m+=12;}

c=y/100;

y=y-c*100;

w=(c/4)-2*c+(y+y/4)+(13*(m+1)/5)+d-1;

while(w<0)w+=7;

w%=7;

if(w==0)printf("星期日");

elseprintf("星期%d",w);

return0;

}

方法二:

#include

void main ()

{

int y,m,d,c,s,w;

printf("請輸入8位年月日,以空格隔開:");

scanf("%d%d%d",&y,&m,&d);

if (m==1) c=d;

else if (m==2) c=31 d;

else if (m==3) c=31 28 d;

else if (m==4) c=31 28 31 d;

else if (m==5) c=31 28 31 30 d;

else if (m==6) c=31 28 31 30 31 d;

else if (m==7) c=31 28 31 30 31 30 d;

else if (m==8) c=31 28 31 30 31 30 31 d;

else if (m==9) c=31 28 31 30 31 30 31 31 d;

else if (m==10) c=31 28 31 30 31 30 31 31 30 d;

else if (m==11) c=31 28 31 30 31 30 31 31 30 31 d;

else if (m==12) c=31 28 31 30 31 30 31 31 30 31 30 d;

if (m>2)

{if (y0==0) {if (y@0==0) c=c 1;}

else if (y%4==0) c=c 1;}

s=(y-1)*365 (y-1)/4-(y-1)/100 (y-1)/400 c;

w=s%7;

switch (w)

{

case 0: printf("星期日");break;

case 1: printf("星期一");break;

case 2: printf("星期二");break;

case 3: printf("星期三");break;

case 4: printf("星期四");break;

case 5: printf("星期五");break;

case 6: printf("星期六");break;

printf("
");

}

}

(2)c語言代碼年月日擴展閱讀:

C語言日期函數,日期處理函數:

定義一個表示日期的結構體類型,再分別定義函數完成下列功能:計算某一天是對應年的第幾天,這一年一共多少天;計算兩個日期之間相隔的天數。兩個日期由鍵盤輸入。

演算法思想:

設定結構體類型表示日期類型名為 Date,利用 typedef 將其定義為日期型類型名,有三個整型類型的成員分別表示年、月、日。

設定函數計算輸入的日期是這一年的第幾天。函數的形參為日期型變數,函數體中設定整型數組存放每個月的天數,二月份的天數為 28 天。

設定函數判斷年份是否為閏年以決定二月份的天數。根據輸入的日期月份,在數組中將相應的月份天數求和,假日曰期即為天數。

設定函數完成兩個日期的比較,比較形參 d 和 s 兩個日期的大小。首先比較年,同年的比較月,同月的比較日。變數 start 保存輸入的小的日期年份,end 保存輸入日期大的年份,然後計算兩個日期之間的天數。

程序由 6 個函數構成,yearday() 函數計算某年的天數,monthday() 函數計算某年二月份的天數,dayofyeaK() 函數計算某日期是某年的第幾天。

cmpdate() 函數比較兩個日期的大小,interday() 函數計算兩個日期之間的天數。

dayofyear() 函數調用 monthday() 函數,interday() 函數調用 cmpdate() 函數。

yearday() 函數、dayofyear() 函數;主函數調用 yearday() 函數、dayofyear() 函數、interday() 函數。

❸ C語言中如何把月日年輸出為年月日

這要看原來的程序中,月日年是怎麼組織的?如果分別存放在三個變數中,那麼只要把這三個變數的輸出順序交換一下就可以了。
例如,
int y,m,dm,d;
printf("請輸入月 日 年:");
scanf("%d%d%d",&m,&d,&y);
printf("%d年%d月%d日",y,m,d);

❹ C語言程序,輸入年月日算出當天星期幾

先做一個函數,計算1900年1月1日到該天的天數,然後用膜除求出星期幾並輸出。

具體代碼如下:

#include<stdio.h>
#include<stdlib.h>

intDay(inty,intm,intd);

intmain(intargc,char*argv[]){
inti;//循環變數
intyear,month,day;//讀取用戶輸入的年月日
intdays;//儲存從1900-1-1到該天的天數
intweek=0;//儲存求余後的星期
//字元串組合輸出星期
charb[]={"星期"};
charc[7][4]={"日","一","二","三","四","五","六"};

loop:printf("請輸入年月日:(空格分隔) ");
scanf("%d%d%d",&year,&month,&day);
days=Day(year,month,day);
//增強程序的健壯性
if(days==-1)
{
printf("輸入格式有誤,");
fflush(stdin);//防止用戶輸入字母等其他非數字字元
gotoloop;
}
else
{
week=days%7;//用求余計算星期幾
printf("%d年%d月%d日是%s%s ",year,month,day,b,c[week]);
}
system("pause");
return0;
}

//函數功能:輸入年月日,輸出1900-1-1到該天的天數,-1位輸入不合法
intDay(inty,intm,intd)
{
inti;
intr=0;//儲存1900到該天的閏年個數
inta[]={31,28,31,30,31,30,31,31,30,31,30};//m給每出月的天數

if(y>=1900&&m>0&&m<13&&d>0&&d<32)
{
for(i=1900;i<=y;i++)//計算閏年的個數
{
if(i%400==0||i%100!=0&&i%4==0)
r++;
}
for(i=0;i<m-1;i++)//統計當年1月1日到當月的天數
{
d+=a[i];
}
if((y%400==0||y%100!=0&&y%4==0)&&m<3)//如果當年是閏年但不到二月就不能算進去
r--;
return365*(y-1900)+r+d;
}
else
return-1;
}

❺ c語言中年月日之類的代碼

int year = 1230;
int month = 4;
int day = 46;
int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if(year%4==0&&year%100!=0||year%400==0)
a[2]++;
if(month>12||month<1||day<1||day>a[month])
{
printf("date error!\n");
return 0;
}

❻ C語言 年月日

定義個結構數組,分別保存年月日
兩個變數,一個保存生日一個保存當前日期
然後兩個變數相減

❼ c語言編寫程序從鍵盤輸入年份和月份,計算出這一年的這一個月有多少天

#include<stdio.h>

int main()

{

int year,month,days,day;

printf("請輸入年月日");

scanf("%d-%d-%d",&year,&month,&days);

switch(month)

{

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12: day=31;break;

case 4:

case 6:

case 9:

case 11:day=30;break;

case 2:

if(year%4==0&&year%100!=0||year%400==0)

day=29;

else

day=28;break;

default :printf("error ");

}

printf("這個月有%d天",day);

}

❽ 編寫一個c語言程序,輸入一個年月日,輸出這個日期是這一年的第幾天。(考慮閏年)

請分別輸入年月日三個數值,計算出這是這一年的第幾天?
(提示:要考慮閏年和2月的情況)
*/


#include <stdio.h>


void main()
{
int year=0,month=0,day=0,i=0,sum=0;
while(1)
{
printf("請輸入年份:");


scanf("%d",&year);


printf("請輸入月份:");


scanf("%d",&month);


printf("請輸入日期:");


scanf("%d",&day);




i=0;//i變數是為了控制月和日的格式是否輸入正確;


switch(month)//判斷每個月的日期是否輸入正確;

sum=i+day;

printf("%d年%d月%d日是%d年的第%d天 !",year,month,day,year,sum);


}