用c語言編寫一程式,使用者輸入日期,計算該日是今年的第幾天

時間 2021-07-09 16:25:12

1樓:會飛的小兔子

#include"stdio.h"

#include"stdlib.h"

intmain()

intday,month,year,sum,leap;

printf("\npleaseinputyear,month,day\n");

scanf("%d,%d,%d",&year,&month,&day);

switch(month)/*先計算某月以前月份的總天數*/

case1:sum=0;break;

case2:sum=31;break;

case3:sum=59;break;

case4:sum=90;break;

case5:sum=120;break;

case6:sum=151;break;

case7:sum=181;break;

case8:sum=212;break;

case9:sum=243;break;

case10:sum=273;break;

case11:sum=304;break;

case12:sum=334;break;

default:printf("dataerror\n");break;

sum=sum+day;/*再加上某天的天數*/

if(year%400==0||(year%4==0&&year%100!=0))/*判斷是不是閏年*/

leap=1;

else

leap=0;

if(leap==1&&month>2)/*如果是閏年且月份大於2,總天數應該加一天*/

sum++;

printf("itisthe%dthday.\n",sum);

return0;

擴充套件資料

c語言輸入任意一個日期的年、月、日的值,求出是星期幾並輸出。

#include

voidmain()

inty,m,d,c,s,w;

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

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

if(m==1)c=d;

elseif(m==2)c=31+d;

elseif(m==3)c=31+28+d;

elseif(m==4)c=31+28+31+d;

elseif(m==5)c=31+28+31+30+d;

elseif(m==6)c=31+28+31+30+31+d;

elseif(m==7)c=31+28+31+30+31+30+d;

elseif(m==8)c=31+28+31+30+31+30+31+d;

elseif(m==9)c=31+28+31+30+31+30+31+31+d;

elseif(m==10)c=31+28+31+30+31+30+31+31+30+d;

elseif(m==11)c=31+28+31+30+31+30+31+31+30+31+d;

elseif(m==12)c=31+28+31+30+31+30+31+31+30+31+30+d;

if(m>2)

elseif(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)

case0:printf("星期日");break;

case1:printf("星期一");break;

case2:printf("星期二");break;

case3:printf("星期三");break;

case4:printf("星期四");break;

case5:printf("星期五");break;

case6:printf("星期六");break;

printf("\n");

2樓:陽光上的橋

程式的核心是判斷是否閏年,以及判斷每個月的天數,完整程式如下:

int mdays(int y,int m)main()

printf("%d\n",days);

}程式在turboc下執行幾次的介面如下:

enter year month day:2008 1 22enter year month day:2008 2 233enter year month day:

2008 3 261

用c語言編寫一程式,接收從鍵盤上輸入的整數i,將陣列迴圈左移i位

思路 可以定義兩個陣列a和b,以及整數i,陣列a用來存放原始資料,陣列b用來存放移動過後的資料,依次把a的第i位到結束位置的數存放到b中,再把a的0位置到i位置數存放到b中,最終的b就是陣列迴圈左移i位的最終結果。參考 include include int main b 6 i,j i 2 for...

用C語言編寫“背單詞程式”,用C語言編寫如下程式?

董俊錕 include include include struct word 定義一個word的結構體,裡面的兩個成員分別放英語單詞和相應的漢語翻譯 int point 0 統計分數的 int count1 0 測試的次數 void tianjia struct word str 100 int ...

用C語言編寫程式資料結構,用C語言編寫程式 資料結構 20

第5 題 include include define max 256 typedef int list max typedef int elemtype typedef int status define overflow 1 define ok 1 define list init size 8...