零、欸嘿!

英雄哪里出来《C语言入门100例》传送门

https://bbs.csdn.net/forums/hero?category=0&typeId=17913https://bbs.csdn.net/forums/hero?category=0&typeId=17913本题知识回顾

【第19题】给出一个字符串代表日期,问它是这一年的第几天 | 我和闰年有个约会_英雄哪里出来-CSDN博客难度:★★☆☆☆,我和闰年有个约会https://blog.csdn.net/WhereIsHeroFrom/article/details/118272497每天会开启一篇试读文章,每日坚持打卡就可以一直白嫖哦

一、题目

1185. 一周中的第几天

难度简单38

给你一个日期,请你设计一个算法来判断它是对应一周中的哪一天。

输入为三个整数:daymonth 和 year,分别表示日、月、年。

您返回的结果必须是这几个值中的一个 {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}

示例 1:

输入:day = 31, month = 8, year = 2019
输出:"Saturday"

力扣https://leetcode-cn.com/problems/day-of-the-week/二、解题

思路:就是算1970年1月1日到给定的日期一共多少天,然后对7求余,就知道是周几了,

注意(1)由日历得1970年1月1日是周4 所以前边算总数时先加上4

然后就是平年闰年,平年365,闰年366,平月闰月,平2月28,闰2月29,就可以了

(2)闰年就是  模4为0,模100不为零  或者模400为0的年份

char * dayOfTheWeek(int day, int month, int year){ //给定年,月,日int A[13]={0,31,59,90,120,151,181,212,243,273,304,334,365};//平年365天int B[13]={0,31,60,91,121,152,182,213,244,274,305,335,366}; //闰年366天int num=4;//这个根据日历得到1970年1月1日是周四,所以前边先加上4(就是从周日开始0.1.2.3.4嘛)for(int i=1971;i<=year;++i){if((i-1)%4==0&&(i-1)%100||(i-1)%400==0){  //先看年份 判断接下来一年时平年还是闰年num+=366;    //闰年加366}else num+=365;  //平年加365}if(year%4==0&&year%100||year%400==0){   //再看月份 判断平\润年num+=B[month-1]+day-1;//2月的话就加上1月的日子,以此类推,所以数组下标是[month-1],}              //然后加上day-1,为啥-1呢,就是1970年1月1的话num==4+1-1==4,求余正好是4对应周 //4如果不-1,就多出了一天else num+=A[month-1]+day-1;  num%=7; //求余 char *week[]={"Sunday","Monday", "Tuesday","Wednesday","Thursday","Friday","Saturday"};return week[num]; //返回对应的星期
}

三、结果

[万人千题] 《C语言入门100例》(第19例) 日期——题1(C语言)(超简单)相关推荐

  1. [万人千题] 《C语言入门100例》(第19例) 日期——题2(C语言)(超简单)

    零.欸嘿! 英雄哪里出来<C语言入门100例>传送门 https://bbs.csdn.net/forums/hero?category=0&typeId=17913https:/ ...

  2. 万人千题 | 九日集训 | 英雄算法联盟合伙人 | 三年之约 | B站直播早起粉丝团

    图中红色字为动态数字,会随时修改 文章目录 一.万人千题 1.简介 2.详述 二.九日集训 1.简介 2.参与人群 2.如何参与 3.集训周期 4.集训内容 5.如何参加 三.英雄算法联盟合伙人 1. ...

  3. 万人千题第一阶段报告【待继续总结】

    学习内容概况 目的:找编程和做题的手感 具体训练内容:万人千题第一阶段题库(思维导图),同时还有一些之前做过的题 练习后总结 具体细节之后补充为文字版,概况思维导图如下: 编程细节 位运算使用技巧 d ...

  4. 【万人千题】《第一阶段:算法零基础抱团打卡》学习路线指引

      博主会带领大家首先进行<算法零基础100讲>的训练,每天把一些知识点巩固后做完相应练习题,和群友一起打卡,今天是打卡 第三天.具体玩法本文会进行详细介绍. 打卡地址 社区:万人千题 前 ...

  5. 【万人千题】结对编程排位赛(第一期) 第二周 排名公布,冠军成功卫冕,啊这……

      博主会带领大家进行 <C语言入门100例> 和 <算法零基础100讲>的训练,每天把一些知识点巩固后做完相应练习题,和群友一起打卡,如果身边有志同道合之人,也可一起加入,今 ...

  6. 万人千题打卡第六期——习题题解

    描述: 给定一个整数,写一个函数来判断它是否是 3 的幂次方.如果是,返回 true :否则,返回 false . 整数 n 是 3 的幂次方需满足:存在整数 x 使得 n == 3x 来源:力扣(L ...

  7. 【万人千题】誓要成为刷题界的卷王王中王

    <暗里刷题>(改编自<暗里着迷>)   兄弟们,由于需要,得开始接触二次元了,明年想办法进驻b站.承诺会更新算法系列视频教程,十年内保证更新完所有算法视频.有兴趣的可以提前关注 ...

  8. 【Go语言入门100题】044 稳赢 (15 分) Go语言 | Golang

    [题解][PTA团体程序设计天梯赛] L1-044 稳赢 (15 分) Go语言|Golang 大家应该都会玩"锤子剪刀布"的游戏:两人同时给出手势,胜负规则如图所示: 现要求你编 ...

  9. 【Go语言入门100题】022 奇偶分家 (10 分) Go语言 | Golang

    [题解][PTA团体程序设计天梯赛] L1-022 奇偶分家 (10 分) Go语言|Golang 给定N个正整数,请统计奇数和偶数各有多少个? 输入格式: 输入第一行给出一个正整N(≤1000):第 ...

最新文章

  1. TensorFlow分布式(多GPU和多服务器)详解
  2. 一种缘于积木游戏的思维
  3. Matplotlib绘图库初探
  4. java.lang包中的常用类
  5. python 爬虫面试题_Python爬虫面试题
  6. Ribbon_窗体_实现Ribbon风格的窗体
  7. iis7 上传限制问题
  8. shell,perl,python
  9. 超强性能,秒级存储,华为云GeminiDB for Cassandra 正式商用了
  10. Codeforces Round #456 (Div. 2)
  11. 动漫品牌“爆笑虫子”宣布与xNFT Protocol战略合作,开发NFT数字卡牌游戏
  12. 侦听键盘,将data写入文件data.out(成功版本)
  13. cad刷新快捷键_47个CAD快捷键+50个技巧,了解这些CAD操作,你就偷着乐吧
  14. 经纬度一度等于多少米
  15. Python 对象烤地瓜
  16. 第四周项目1---建立单链表
  17. VC/MFC拖动窗口任意位置移动窗口
  18. ECDH 密钥交换举例(ECDH Key Exchange - Examples)
  19. python用input输入字典_输入字典python_python输入字典_python用input输入字典 - 云+社区 - 腾讯云...
  20. 【ThreeJS基础教程-初识Threejs】1.5 选择合适的相机与相机切换

热门文章

  1. Windows 上安装 PostgreSQL教程
  2. java中如何表示负数?
  3. 计算机软件版本号是什么意思,WDDM是什么意思 如何查看自己电脑的WDDM版本号?...
  4. 经验分享之二:单片机懵懂的入门
  5. 大数据开发架构——调度系统的分类解析
  6. wireshark使用及作用
  7. 对于笔记本电脑,新手该怎么保养?
  8. JAVA语言运算符有哪些?
  9. 树莓派入门(一)之树莓派简介
  10. css建画布,css画布