c++万年历

本文分享了使用C++设计的万年历程序,详细介绍了其设计思路和实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

c++万年历设计
下面给大家看一下小编自己设计的c++万年历

千万别忘了给赏

#include <iostream>
using namespace std;
class RL //日历类
{
public:
void Pri(); //打印函数
void Js(); //日历计算函数
void Sca(); //输出函数
private:
int year;
int mon;
int days;
int week;
};
void RL::Sca()
{
int y=1,m=1;
while(m==1&&y==1) //检测输入是否符合要求
{
cout<<"\n输入1920年以后的年和月,格式按 年 月"<<endl;
cin>>year>>mon; 
if(year>=1920&&mon>=1&&mon<=12)
{m=0;y=0;}
}
}
void RL::Js()
{
int yer=0,mo=0,das=0,i=0,d=0;
int day_tab[12]={31,28,31,30,31,30,31,31,30,31,30,31};
yer=year-1920;
mo=mon-1;
// days=0;
week=0;
for(i=0;i<mo;i++)
{
das=das+day_tab[i]; 
}
if(mo>=2&&((year%4==0&&year%100!=0)||year%400==0)) //这里的括号一定要到位,在这里就是
//因为括号的问题,调了有段时间
das+=1; //判断year是否为闰年,2月要加一天
for(i=1920;i<=year;i++) //计算1920年到year之间有多少个闰年
{
if((i%4==0&&i%100!=0)||i%400==0)
d++;
}
days=yer*365+das+d; //计算year month 到1920 1 1之间的天数
week=(days%7+4)%7; /
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值