日期類問題 今天是週幾以及今天是今年的第幾天

2021-08-18 11:09:20 字數 1372 閱讀 7179

ok,刷題繼續,這次是日期類問題。

首先明確:閏年是年份能被4整除且不能被100整除  或者 能被400整除的年份。

第乙個題:

輸入年、月、日,計算該天是本年的第幾天。

---**牛客網

輸入描述:

包括三個整數年(1<=y<=3000)、月(1<=m<=12)、日(1<=d<=31)
輸入:

1990 9 20

2000 5 1

輸出:

263122

解題思路:判斷是否是閏年,之後根據月份來計算天數。

**:

#includeusing namespace std;

int main()

; int number = 0;

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

for(int i = 1; i < month; i++)

number += day;

cout<第二個題:

輸入日期,判斷當前是星期幾

-----**王道考研機試指南

輸入:9 october 2001

14 october 2001

輸出:tuesday

sunday

解題思路:計算輸入日期與當前日期的天數差,然後根據當前的星期數,計算得到輸入日期的星期數。天數差可以提前計算得到,以乙個自己指定的日期為基數。分別計算兩個日期與基數的差,然後就可以得到兩個 日期的天數差。

#include#include#define yeap(x) x%400 == 0|| x%100!=0 && x%4==0?1:0//閏年為1,非閏年為0

using namespace std;

int dayofmonth[13][2] =;

char nameofmonth[13][20]=;

char nameofweekday[7][20]=;

struct date}}

};int buf[3001][13][32];

int main()

int d1,m1,y1;

char m[20];

while(scanf("%d%s%d",&d1,m,&y1)!=eof)

int days = buf[y1][m1][d1]-buf[2018][4][10];

days += 2;

puts(nameofweekday[(days%7+7)%7]);

}return 0;

}

以後再仔細弄吧,現在時間不太夠了~

oracle 判斷今天是星期幾

有人問怎麼判斷今天是星期幾?select to char sysdate,d from dual 很顯然這句並不能完成要求的功能,因為這只是顯示當前為本星期的第幾天,而老外把星期天當作每個星期的第一天,那麼變通的方法就是求前一天為該周的第幾天,不就相當於今天為星期幾了麼 select to char...

輸入今天是星期幾,求若干天後是星期幾

通過列舉變數的輸入輸出,列舉變數的值只能由賦值語句得到,不能用scanf函式直接讀入,必要時可以先輸入乙個整數,然後通過switch語句給列舉變數賦值。程式如下 include int main day char weekday 7 4 printf input today scanf d d sw...

今天是 年 月 日

今天是 年 月 日 禮拜二 現在 坐在辦公室,頭暈肚子痛,有點相當不舒服。昨晚睡覺前,看了會堇寫給敏的信,總覺的她那種損耗也忒明顯了,而且。點多下雨颳風了,很涼快,我趕緊抓緊時間睡覺。不知道睡到什麼時候,心中還是有恨,門再次立在面前,一狠心,穿過的門,一頭往下栽,等醒過來的時候,我發現我在西北大學門...