星系炸弹

community_1691 2021-11-22 14:54:04

在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。

每个炸弹都可以设定多少天之后爆炸。

比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。

有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。

以下程序实现了这一功能,请你填补空白处内容:

提示: json 先判断是否为闰年,这会影响2月份是28还是29,如果是闰年,2月份是29,如果不是,就是28

#include <stdio.h>

int main()
{
    int monthDays[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    int days = 1000;
    int year = 2014, month = 11, day = 9;
    int i;

    for (i = 0; i < days; i++)
    {
        day++;
        if (day > monthDays[month - 1])
        {
            day = 1;
            month++;
            if (month > 12)
            {
                month = 1;
                year++;
                ____________________;
            }
        }
    }

    printf("%d-%d-%d\n", year, month, day);

    getchar();
    return 0;
}

返回练习题答题页面

...全文
983 30 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
6546546456 2023-11-01
  • 打赏
  • 举报
回复 2
闰年判断应该放上面吧
CSDN-Ada助手 2023-12-26
  • 举报
回复 2
@6546546456 是的,你是对的。闰年判断应该放在指定日期之前,这样在计算日期的时候可以考虑到是不是闰年。
m0_72395837 2023-03-02
  • 打赏
  • 举报
回复

太简单了,只看了选项就能答出来

CSDN-Ada助手 2023-04-28
  • 举报
回复
@m0_72395837 那很好呀,证明你已经掌握了这个知识点。不过还是要多加练习,才能更加熟练地应用它。加油!
Mikasa_Lee 2023-03-01
  • 打赏
  • 举报
回复


#include"stdio.h"
int main(void){
    int months[] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
    int year = 2014,month = 11,day = 9;
    
    
    for(int i = 0;i < 1000;i++){
        day++;
        if(day > months[month]){
            day = 1;
            month++;
        }if(month > 12){
            month = 1;
            year++;
        }
        
        if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)){
            months[2] = 29;
        }else months[2] = 28;
    }
    printf("%d.%d.%d\n",year,month,day);    // 2017.8.5
    
    return 0;
}
CSDN-Ada助手 2023-04-28
  • 举报
回复
@Mikasa_Lee 这个程序的功能是计算2014年11月9日放置的贝塔炸弹1000天后爆炸的日期。程序中使用了一个月份数组来存储每个月份的天数,然后进行循环计算日期。在每次日期加一后,判断是否需要进位月份和年份,并且在进位月份时根据当前年份判断二月份的天数。总体思路是正确的,代码也比较简洁。
南宁合法公民 2024-01-09
  • 举报
回复
@Mikasa_Lee 这里 if (day 大于 months[month - 1])
2301_76458114 2023-02-13
  • 打赏
  • 举报
回复
2017年8月五日
CSDN-Ada助手 2023-02-14
  • 举报
回复
@2301_76458114 可以静下来认真思考下, 应该不难理解
上邪。。。 2023-01-04
  • 打赏
  • 举报
回复
我怎么感觉题目里if(mouth>12) 下面应该跟mouth=0;呢?
FB478 2023-01-07
  • 举报
回复
@上邪。。。 没错吧,mouth是月份,当超过12个月份时,它要重置为1,表示一月份
指针不指南吗 2023-02-04
  • 举报
回复
@FB478 跟我一起学 嘴巴mouth 月份monrh
指针不指南吗 2023-02-04
  • 举报
回复
@指针不指南吗 month🤣
4条回复
克莱因蓝日落 2022-10-08
  • 打赏
  • 举报
回复 1
记一下笔记。这题考的是2月有多少天,可以延伸想闰年的判断条件 ①能被四百整除的年份是闰年; ②能被4整除且除以100余数不为0的年份为闰年。 ①和②是||关系,满足其一即可判定为闰年。 是这样吗?有错请指出,谢谢大佬
  • 举报
回复
@克莱因蓝日落 是这样
☞秃头小王☜ 2022-09-13
  • 打赏
  • 举报
回复
这题知识点在于判断当前年份是闰年还是平年。闰年能被400整除或者说能被4整除,且不能被100整除。闰年二月份29天,平年二月份28天
Mr_chuck 2022-07-27
  • 打赏
  • 举报
回复 1

刷题,评论即为笔记。这题比较友好关键是判断闰年平年,即使你不知道如何判断也应该知道闰年的二月多一天为29天,从选项来看只需要找到29 ,28 即可

软泡芙 2022-07-15
  • 打赏
  • 举报
回复 3

四年一闰;百年不闰,四百年再闰

lichaohua! 2022-07-14
  • 打赏
  • 举报
回复 1

public static void main(String[] args) throws ParseException {
        function("2014-11-9",1000);
    }
    public static void function(String date,long sum) throws ParseException {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        //计算date的毫秒值
        long time = dateFormat.parse(date).getTime();
        //计算sum的毫秒值
        sum = sum*24*60*60*1000;
        //以date+sum的毫秒值创建Date
        Date dateTime = new Date((time + sum));
        //Date转String
        String s = dateFormat.format(dateTime);
        System.out.println(s);
    }
维度与空间 2022-06-26
  • 打赏
  • 举报
回复
29 30
  • 打赏
  • 举报
回复 1

妥妥的细节,当我考虑闰年的判断条件时,他考的是闰年有28天还是29天,还是30天,又或者31天???

雪狼之夜 2022-04-27
  • 打赏
  • 举报
回复

感觉是没必要计算闰年啊,时间戳计算不就可以了。我的解题(js实现)
https://blog.csdn.net/xuelang532777032/article/details/124318063#5_155

  • 打赏
  • 举报
回复 1
就简简单单的考了一个怎么判断闰年: 整百年份除以400,没有余数就是闰年;非整百年份除以四,没有余数就是闰年。
易小侠 2022-01-16
  • 打赏
  • 举报
回复

28,29

smallegg52 2022-01-09
  • 打赏
  • 举报
回复
只有一个选项是28跟29的,这题啊,这题是脑筋急转弯
ToTensor 2021-12-16
  • 打赏
  • 举报
回复

有没有高手给讲解一下 星系炸弹 这道题?

20

社区成员

发帖
与我相关
我的任务
社区管理员
  • community_1691
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧