输入日期计算出星期几
来源:互联网 发布:最准确的平码公式算法 编辑:程序博客网 时间:2024/05/31 13:15
#include <iostream>
using namespace std;
int main()
{
int y,m,d;//定义变量y,m,d分别表示所求的那天的年月日
int mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};//定义数组记录平年十二个月每一月的天数
int n,N;//定义n记录在要求的那一年以前的闰年的个数,定义N记录从纪年开始到所求的那天经过的天数
cout<<"请按顺序输入所求的那天的年月日:"<<endl;//输出"请按顺序输入所求的那天的年月日:"
cin>>y>>m>>d;//输入所求的那天的年月日
if(y%400==0||(y%4==0&&y%100!=0))mon[1]=29;//若所求的那天所在年份是闰年,将数组中二月对应的天数数值改为29
n=(y-1)/4-((y-1)/100-(y-1)/400);//计算在要求的那天所在的年份之前有多少个闰年并赋给n
N=365*(y-1)+n;//计算在要求的那天所在的年份之前过了多少天并赋给N
for(int i=0;i<m-1;i++)
N+=mon[i];//将这一年中,要求的那天所在的月份之前的天数加给N
N+=d;//N再加上这个月度过的天数即得从纪年开始到所求的那经过的总天数
switch (N%7){//N对7 求余,由公元一年一月一日是星期一有以下结果
case 0: cout<<"这一天是星期日"<<endl;break;//若余数为0,则输出"这一天是星期日"
case 1: cout<<"这一天是星期一"<<endl;break;//若余数为1,则输出"这一天是星期一"
case 2: cout<<"这一天是星期二"<<endl;break;//若余数为2,则输出"这一天是星期二"
case 3: cout<<"这一天是星期三"<<endl;break;//若余数为3,则输出"这一天是星期三"
case 4: cout<<"这一天是星期四"<<endl;break;//若余数为4,则输出"这一天是星期四"
case 5: cout<<"这一天是星期五"<<endl;break;//若余数为5,则输出"这一天是星期五"
default: cout<<"这一天是星期六"<<endl;//若余数为6,则输出"这一天是星期六"
}
system("pause");
return 0;//结束程序
}
using namespace std;
int main()
{
int y,m,d;//定义变量y,m,d分别表示所求的那天的年月日
int mon[12]={31,28,31,30,31,30,31,31,30,31,30,31};//定义数组记录平年十二个月每一月的天数
int n,N;//定义n记录在要求的那一年以前的闰年的个数,定义N记录从纪年开始到所求的那天经过的天数
cout<<"请按顺序输入所求的那天的年月日:"<<endl;//输出"请按顺序输入所求的那天的年月日:"
cin>>y>>m>>d;//输入所求的那天的年月日
if(y%400==0||(y%4==0&&y%100!=0))mon[1]=29;//若所求的那天所在年份是闰年,将数组中二月对应的天数数值改为29
n=(y-1)/4-((y-1)/100-(y-1)/400);//计算在要求的那天所在的年份之前有多少个闰年并赋给n
N=365*(y-1)+n;//计算在要求的那天所在的年份之前过了多少天并赋给N
for(int i=0;i<m-1;i++)
N+=mon[i];//将这一年中,要求的那天所在的月份之前的天数加给N
N+=d;//N再加上这个月度过的天数即得从纪年开始到所求的那经过的总天数
switch (N%7){//N对7 求余,由公元一年一月一日是星期一有以下结果
case 0: cout<<"这一天是星期日"<<endl;break;//若余数为0,则输出"这一天是星期日"
case 1: cout<<"这一天是星期一"<<endl;break;//若余数为1,则输出"这一天是星期一"
case 2: cout<<"这一天是星期二"<<endl;break;//若余数为2,则输出"这一天是星期二"
case 3: cout<<"这一天是星期三"<<endl;break;//若余数为3,则输出"这一天是星期三"
case 4: cout<<"这一天是星期四"<<endl;break;//若余数为4,则输出"这一天是星期四"
case 5: cout<<"这一天是星期五"<<endl;break;//若余数为5,则输出"这一天是星期五"
default: cout<<"这一天是星期六"<<endl;//若余数为6,则输出"这一天是星期六"
}
system("pause");
return 0;//结束程序
}
0 0
- 输入日期计算出星期几
- 输入一个日期,求这一天是星期几,并且计算出是一年中的第几天
- 计算出生日是星期几
- 输入一个日期判断它是星期几
- 输入日期后自动显示星期几
- 显示输入的日期是星期几
- 输入某个日期,求出是星期几
- C++输入日期判断是星期几
- 输入任意日期计算星期几
- C++输入日期判断是星期几
- 计算出某年某月某日是星期几
- 输入一个日期判断是星期几 java
- 菜鸟成长记-根据输入的日期判断星期几
- 通过输入的字符串日期转换成星期几
- Java 输入一个日期,判断是星期几
- C#输入日期显示该日期当天为星期几
- 黑马程序员---------------------编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期, * 程序计算这一天是星期几,并且计算出是一年中的第几天
- 黑马程序员—编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期, *程序计算这一天是星期几,并且计算出是一年中的第几天。 */
- 指针的大小--sizeof问题
- 关于内核符号表
- struts2学习(word文档备注不能正常显示,如有错误,忘不吝指正)
- web.xml启动顺序
- PHP从零单排(十三)使用PHP显示MySQL数据库的数据
- 输入日期计算出星期几
- servlet和jsp学习(word文档备注不能正常显示,如有错误,忘不吝指正)
- 与服务器交互 不得太依靠服务器
- 基于TCP UDP 协议的聊天小DEMO
- 搭建SERVER2008上的IIS需要三部
- 如何用MATLAB绘制雷达图(戴布拉图、螂蛛网图、玫瑰图)
- Problem 4:Largest palindrome product
- oracle学习(word文档备注不能正常显示,如有错误,忘不吝指正)
- linux中各种压缩格式的压缩与解压缩命令参考