Problem I: 函數---判斷某年某月某日是這一年中的第幾天

Problem I: 函數---判斷某年某月某日是這一年中的第幾天

Time Limit: 1 Sec??Memory Limit: 128 MB
Submit: 457??Solved: 194

Description

在主程序(main)中輸入某年某月某日,例如2012 9 18(年月日之間用空格隔開), 調用函數dayth來得到某年某月某日是這一年中是第幾天。????
注意 在利用dayth函數前要調用isValid_date函數來判斷日期是合法的。

dayth函數和isValid_date函數聲明如下:

int isValid_date(int year,int month,int day); //判斷日期(年月日)是否合法的函數聲明,如果日期合法返回1,如果不合法返回0

int dayth(int year,int month,int day); //獲取日期(年月日)是本年中的第幾天的函數聲明

在以下程序的基礎上,添加isValid_date函數和dayth函數的定義,使程序能夠正確執行。
提交時,只需要提交isValid_date函數和dayth函數的定義代碼即可。


#include <iostream>
using namespace std;

int isValid_date(int year,int month,int day); //判斷日期(年月日)是否合法的函數聲明,如果日期合法返回1,如果不合法返回0

int dayth(int year,int month,int day); //獲取日期(年月日)是本年中的第幾天的函數聲明

int main()
{
? int y,m,d; //定義3個變量分別來存放輸入的年、月、日
? cin>>y>>m>>d;
? if(isValid_date(y,m,d) ==0)
???? cout<<"not valid"<<endl;
? else
???? cout<<dayth(y,m,d)<<endl;
? return 0;
}

Input

一個日期(年 月 日)

Output

如果該日期和法則輸出該日期是本年中的第幾天,如果該日期不合法輸出提示信息

例如 輸入2002 3 1 輸出?60??????????????????? 輸入2008 2 30 輸出not valid

Sample Input

2002 3 1

Sample Output

60

HINT

#include <iostream> 
using namespace std; int isValid_date(int year,int month,int day); //判斷日期(年月日)是否合法的函數聲明,如果日期合法返回1,如果不合法返回0 int dayth(int year,int month,int day); //獲取日期(年月日)是本年中的第幾天的函數聲明 int main() 
{ int y,m,d; //定義3個變量分別來存放輸入的年、月、日 cin>>y>>m>>d; if(isValid_date(y,m,d)==0) cout<<"not valid"<<endl; elsecout<<dayth(y,m,d)<<endl; return 0; 
} 
int isValid_date(int year,int month,int day) 
{ if((year%4==0||year%100!=0)&&(year%400==0)) { if(month>12||month<1) return 0; if((month==2&&(day>29||day<1))) return 0; if((month==1||month==3||month==5||month==7||month==8||month==10||month==12)&&(day>31||day<1)) return 0; if((month==4||month==6||month==9||month==11)&&(day>30||day<1)) return 0; return 1; } else{ if(month>12||month<1) return 0; if((month==2&&(day>28||day<1))) return 0; if((month==1||month==3||month==5||month==7||month==8||month==10||month==12)&&(day>31||day<1)) return 0; if((month==4||month==6||month==9||month==11)&&(day>30||day<1)) return 0; return 1; } 
} 
int dayth(int year,int month,int day) { int a[12]={31,28,31,30,31,30,31,31,30,31,30,31},sum=0; for(int i=0;i<month-1;i++) { sum+=a[i]; } if(month>=1&&month<=12) { if((month==2)&&(day>=1&&day<=28)) { sum=sum+day; if(((year%4==0&&year%100!=0)||(year%400==0))&&(month>2)) return sum+1; else return sum; } if((month==1||month==3||month==5||month==7||month==8||month==10||month==12)&&(day<=31&&day>=1)) { sum=sum+day; if(((year%4==0&&year%100!=0)||(year%400==0))&&(month>2)) return sum+1; else return sum; } if((month==4||month==6||month==9||month==11)&&(day<=30&&day>=1)) { sum=sum+day; if(((year%4==0&&year%100!=0)||(year%400==0))&&(month>2)) return sum+1; else return sum; } } } 


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/536204.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/536204.shtml
英文地址,請注明出處:http://en.pswp.cn/news/536204.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Problem C: 括號匹配(棧和隊列)

Problem C: 括號匹配&#xff08;棧和隊列&#xff09; Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 76 Solved: 18[Submit][Status][Web Board]Description 假設一個表達式中只允許包含三種括號&#xff1a;圓括號“(”和“)”&#xff0c;方括號“[”和“]”和花括號“…

Problem D: 棧的基本運算(棧和隊列)

Problem D: 棧的基本運算&#xff08;棧和隊列&#xff09; Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 43 Solved: 15[Submit][Status][Web Board]Description 編寫一個程序&#xff0c;實現順序棧的各種基本運算&#xff0c;主函數已給出&#xff0c;請補充每一種方法…

Problem B: C語言習題 矩陣元素變換

Problem B: C語言習題 矩陣元素變換 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 942 Solved: 558[Submit][Status][Web Board]Description 將一個nn(2<n<10,n為奇數)的矩陣中最大的元素放在中心&#xff0c;4個角分別放4個最小的元素&#xff08;按從左到右、從上…

Problem D: 刪出多余的空格

Problem D: 刪出多余的空格 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 667 Solved: 308[Submit][Status][Web Board]Description 小平在給弟弟檢查英語作業時時&#xff0c;發現每個英語句子單詞之間的空格個數不等&#xff0c;請你編程幫他把句子中多余的空格去掉&am…

Problem D: 順序串的基本運算

Problem D: 順序串的基本運算 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 73 Solved: 28[Submit][Status][Web Board]Description 編寫一個程序&#xff0c;實現順序串的各種基本運算&#xff0c;主函數已給出&#xff0c;請補充每一種方法。 1、建立串s"abcdefgh…

骨牌鋪方格

骨牌鋪方格 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 46495 Accepted Submission(s): 22470 Problem Description在2n的一個長方形方格中,用一個1 2的骨牌鋪滿方格,輸入n ,輸出鋪放方案的總數.例如n3時…

遞歸思想完成n皇后問題

已經很長時間不敲代碼了&#xff0c;感覺自己越來與頹廢&#xff0c;所以現在又想做回一名苦逼的程序員&#xff0c;開啟自己的代碼之路。 我是根據視頻敲的&#xff0c;沒有題目&#xff0c;先看個四皇后問題吧。 所謂4皇后問題就是求解如何在44的棋盤上無沖突的擺放4個皇后棋…

POJ1163 數字三角形

1.題目信息&#xff08;http://poj.org/problem?id1163&#xff09; The TriangleTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 30397 Accepted: 17973 Description 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5(Figure 1) Figure 1 shows a number tri…

virtualbox的USB識別

VirtualBox識別USB教程 作者&#xff1a;Vincent June 13, 2017 在Virtualbox虛擬機配置面板中打開USB設備選項&#xff0c;分別勾選上“啟動USB控制器”“啟用usb2.0控制器”選項&#xff0c;如果有錯誤去https://www.virtualbox.org/wiki/Downloads 下載相應版本的插件包&a…

ubuntu實現簡單的劃詞工具

ubuntu實現簡單的劃詞工具 由于ubuntu下面沒有比較好用的劃詞翻譯工具&#xff0c;而且本人比較喜歡有道詞典&#xff0c;雖然ubuntu下有deepin版本的有道詞典包&#xff0c;可是總是會有bug&#xff0c;卡死等等。所以自己參考別人寫了一個小工具&#xff0c;涉及shell和pyth…

動態規劃進階題目之滑雪

Problem F: 動態規劃進階題目之滑雪 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 4 Solved: 3[Submit][Status][Web Board]Description Michael喜歡滑雪百這并不奇怪&#xff0c; 因為滑雪的確很刺激。可是為了獲得速度&#xff0c;滑的區域必須向下傾斜&#xff0c;而且當…

修改win10我的文檔下載等移動別處

win10移動我的文檔&#xff0c;下載等到其他盤符辦法 解決辦法 1.選擇我的文檔&#xff0c;鼠標右鍵選擇屬性&#xff0c;在工具欄選擇位置&#xff0c;然后選擇想移動到哪里的盤符即可&#xff0c;如圖&#xff1a;2.操作完后選擇應用->確定&#xff0c;就這么簡單。

神奇的口袋

2755:神奇的口袋查看 提交 統計 提示 提問總時間限制: 10000ms 內存限制: 65536kB描述有一個神奇的口袋&#xff0c;總的容積是40&#xff0c;用這個口袋可以變出一些物品&#xff0c;這些物品的總體積必須是40。John現在有n個想要得到的物品&#xff0c;每個物品的體積分別是a…

Ubuntu16.04LTS修改開機動畫

ubuntu16.04LTS修改開機動畫 ubuntu自帶的開機動畫實在是很不滿美觀&#xff0c;但是又不想重寫&#xff0c;怎么辦&#xff1f; 接下來交你們一招。 1.開機動畫文件夾 Ubuntu14.04的開機動畫在/usr/share/plymouth文件夾內 2.下載開機動畫 兩種方式&#xff1a; 從Ubun…

Qt的Xml操作QDomDocument

Qt的Xml操作QDomDocument Qt對于Xml的支持是很好的&#xff0c;一些我們需要的操作應有盡有&#xff0c;下面簡單介紹一下怎樣使用。主要有以下幾點使用&#xff1a; 寫xml到文件讀xml添加節點到xml刪除xml中某節點信息修改xml中某節點信息 準備工作 .pro加入QT xml需要in…

2815:城堡問題

2815:城堡問題 查看提交統計提示提問 總時間限制: 1000ms 內存限制: 65536kB描述1 2 3 4 5 6 7 #############################1 # | # | # | | ######---#####---#---#####---#2 # # | # # # # ##---#####---#####---#####---#3 # …

冒泡排序法函數

文章目錄冒泡排序法的函數實現使用教程冒泡排序法的函數實現 話不多說上代碼&#xff0c;拿去直接用。 // 冒泡排序函數 /* * brief sort * param array為數組名稱&#xff0c;length為數組的長度&#xff0c;order為1或0,1代表從小到大排序 * 0代表從大到小排序…

boost序列化(Serialization)

本文章轉載自 http://m.blog.csdn.net/zj510/article/details/8105408 程序開發中&#xff0c;序列化是經常需要用到的。像一些相對高級語言&#xff0c;比如JAVA, C#都已經很好的支持了序列化&#xff0c;那么C呢&#xff1f;當然一個比較好的選擇就是用Boost&#xff0c;這個…

java基礎經典練習題

【程序1】 題目&#xff1a;古典問題&#xff1a;有一對兔子&#xff0c;從出生后第3個月起每個月都生一對兔子&#xff0c;小兔子長到第三個月后每個月又生一對兔子&#xff0c;假如兔子都不死&#xff0c;問每個月的兔子總數為多少&#xff1f; //這是一個菲波拉契數列問題 p…

ubuntu下wps不能輸入中文

ubuntu下wps不能輸入中文 原因是因為fcitx環境的原因&#xff0c;想了解fcitx的可以看這篇文章&#xff0c;鏈接。 使用腳本解決 將下面的腳本復制到新建的文件中&#xff0c;chmod加權限&#xff0c;然后執行即可。 #! /bin/bash #--------------------------------------…