1w天后的生日数

题目:

        CCC老师的生日是YY年MM月DD日,他想知道自己出生后第一万天纪念日的日期(出生日算第0天)


输入:

        输入有多行,格式为YY MM DD 其中1949<=YY<=2006,日期绝对合法。

输出:

        输出有多行。即CCC老师生日第一万天以后的日期,格式为 “Y-M-D”。


eg:

输入:

1979 4 16

输出:

2006-9-1

思路:这个题是关于天数的计算,但闰年平年天数不同,所以要先判断是否为闰年,再根据天数进行加法运算,一次递进,增加年与月,最后得出答案

#include<bits/stdc++.h>
using namespace std;

//判断是否为闰年 
int check(int n)        
{
    if((n % 4 == 0 && n % 100 != 0) || ( n % 400 == 0))
    return 1;
    return 0;
    }
    
//进入主函数 
int main()
{ 
    //初始化每一个月 二月mon[1]先初始化为0  
    int mon[12] = {31 ,0 ,31 ,30 ,31 ,30 ,31 ,31 ,30 ,31 ,30 ,31};
    //y为年,m为月,d为天 
    int y ,m ,d;
    while(cin >> y >> m >> d)
    {
        for(int i = 1 ; i <= 10000 ; i++)
        {
            d++;
            //判断是否为闰年
            if(check(y))    
			//闰年二月29天     
                mon[1] = 29; 
            else
            //平年2月28天 
                mon[1] = 28;
            if(d > mon[m-1])
            {
                d %= mon[m-1];
                m++;
            }
            if( m > 12 )
            {
                y++;
                m %= 12;
            }
        }
        cout << y << '-' << m << '-' << d << endl; 
    }
    return 0;
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
对于Excel提醒生日的小程序,你可以使用Excel的宏功能来实现。下面是一个简单的示例程序,可用于提醒即将到来的生日。 1. 打开Excel并创建一个新的工作表。 2. 在第一列输入员工姓名(A列)和生日日期(B列)。 3. 在开发选项卡中,点击“Visual Basic”打开VBA编辑器。 4. 在VBA编辑器中,插入一个新的模块。 5. 在模块中输入以下代码: ```vba Sub BirthdayReminder() Dim rng As Range Dim cell As Range Dim todayDate As Date Dim birthDate As Date Dim daysLeft As Integer todayDate = Date '设置需要提醒的天数 Const reminderDays As Integer = 7 '设置数据范围 Set rng = Range("B2:B" & Cells(Rows.Count, "B").End(xlUp).Row) '遍历日期列 For Each cell In rng If IsDate(cell.Value) Then birthDate = CDate(cell.Value) daysLeft = DateDiff("d", todayDate, birthDate) '检查是否在提醒天数范围内 If daysLeft >= 0 And daysLeft <= reminderDays Then MsgBox "员工 " & cell.Offset(0, -1).Value & " 的生日将在 " & daysLeft & " 天后到来!" End If End If Next cell End Sub ``` 6. 关闭VBA编辑器。 7. 在Excel中,按下Alt + F8打开宏对话框。 8. 选择“BirthdayReminder”宏,并点击“运行”。 该程序将遍历日期列(B列),并检查是否在提醒天数范围内(在示例中为7天)。如果是,则弹出一个消息框提醒员工的生日即将到来,并显示剩余的天数。 你可以根据需要进行修改和定制,例如更改提醒天数、添加更多的提醒方式等。注意,该程序假定生日日期以日期格式输入,并且数据从第二行开始。 希望这个示例对你有所帮助!如有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

糊涂苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值