C++:这天星期几?
https://blog.csdn.net/NGUever15/article/details/88878223
这天星期几?
文章目录
- 这天星期几?
- 问题描述
- 测试样例
- 问题分析
- 先验知识:
- 判断是否为闰年的函数实现
- 解题思路
- 运行效果
问题描述
要求实现函数whatDay来计算这个月的1号是星期几并返回(周一到周日分别返回整数1到7)。其中该函数的参数为两个整数:年和月。
提示:由于判断是否闰年有多个地方需要用到,故已把该功能单独实现为一个函数。
测试样例
测试输入:
2016 1
预期输出:
2016年1月1日是星期5
测试输入:
2017 7
预期输出:
2017年7月1日是星期6
问题分析
先验知识:
已知公元1年1月1日是星期一
判断是否为闰年的函数实现
int leapYear(int y)
{if(y % 4 == 0 && y % 100 != 0 || y % 400 == 0)return 1;return 0;
}
提示
闰年的条件为:
能被4整除但不能被100整除 ,或者能被400整除。
解题思路
- 计算出这几天距离公元1年1月1日多少天
- 用天数模7计算星期几。
首先考虑年份:
闰年+366;平年+365;
if(year!=1){for(int i=1;i<year;i++){if(leapYear(i)){sum_day+=days_run;}else{sum_day+=days_ping;}}}
在考虑月份:
闰年二月+29;平年二月+28;
if(month==1){sum_day+=1;}else{switch(month-1){case 11:sum_day+=30;case 10:sum_day+=31;case 9:sum_day+=30;case 8:sum_day+=31;case 7:sum_day+=31;case 6:sum_day+=30;case 5:sum_day+=31;case 4:sum_day+=30;case 3:sum_day+=31;case 2:if(leapYear(year))sum_day+=29;else sum_day+=28;case 1:sum_day+=31;break;}sum_day+=1;}
模7:
int out = sum_day%7;if(out == 0){return 7;}else return out;
运行效果
GitHub源码地址
本文内容到此结束,欢迎指正交流!
C++:这天星期几?相关推荐
- C语言 这天星期几?
目标: 编写函数 whatDay,计算某年某月的1号是星期几并返回. 程序实现 #include<stdio.h> #include <iostream> // 函数leapY ...
- CC++:计算某年某月的1号是星期几
C&C++函数实训-这天星期几? 任务描述 本关任务:编写函数 whatDay,计算某年某月的1号是星期几并返回. 相关知识 要知道某一天是星期几,可以用已知的某一天进行推导. 例如已知公元1 ...
- JS 中 Date() 的其他操作集锦
好吧,这周完全是个业务型的程序猿了,明显地能感觉到洗头发时头皮都会有点疼,是秃顶的前兆. 算得上收获的就是有较多的接触到计算时间方面的事件...嗯,几个笔记分享一下 // 处理 /Date(" ...
- 头歌--CC++函数实训
第1关:登月纸桥 任务描述 本关任务:编写一个函数,计算需要把纸折叠多少次(假设纸张足够大,可以无限次折叠),其厚度才能搭建一座登月纸桥,考虑到将来需要到更远的星球,所以函数需要根据具体距离计算纸张折 ...
- CC++函数实训(国防科大)
第1关:登月纸桥 100 任务要求 参考答案 评论333 任务描述 相关知识 函数的定义 声明函数 编程要求 测试说明 任务描述 本关任务:编写一个函数,计算需要把纸折叠多少次(假设纸张足够大,可以无 ...
- 基于FPGA的电子日历设计
本设计是本学期的课程设计,也没有正式上过课,全凭自学摸索完成本课程设计,在摸索的过程中也看了csdn上众多博客,给予了本人很大的帮助,本人做完也前来分享.若有不对错误之处也请大家多多理解指正.本设计可 ...
- 【Educoder作业】CC++函数实训
[Educoder作业]C&C++函数实训 是不是学会了函数就可以做任何题了- T1 登月纸桥 给出了函数的基本定义,可以在主函数上面定义函数,然后在主函数下面写函数.可能会显得可读性强一点? ...
- c语言判断这天是星期几,【求指导!!】输入年,月,日,然后判断这天是星期几!!!!!...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 6楼兄弟谢了哈.可以啦!!!!哈哈,开心啊. //1900年1月1日是星期一 //所以从1900年1月1日算起 #include int fun(int ...
- 计算某年新年是星期几的公式【不过这天怎么也该是假期吧?】
马上元旦了,也就是新年. 今天也是刚刚研究了一下,网上查出来一个公式,可以计算某年元旦具体是星期几. 公式是这样的. //添加一个计算某年元旦具体是星期几的公式 //day=year+(year-1) ...
- 【CC++】这天是星期几?
编写函数 whatDay,计算某年某月的1号是星期几并返回. 例如,已知公元1年1月1日是星期一,公元2年1月1日则是在星期一基础上加上一整年的天数(要考虑闰年,闰年一年366天,非闰年365天),如 ...
最新文章
- assign和always组合逻辑块,孰优孰劣?
- netty tcp服务端主动断开客户端_【Netty】服务端和客户端
- 单例模式在多线程中的安全性研究
- html文字列表,文字列表模板
- cocos2d-x3.0 相对布局(一)
- ifconfig相关
- python正则匹配找到所有的浮点数_如何利用Python抓取静态网站及其内部资源
- 【python基础知识】写入文件指定编码格式,例如utf-8
- html中输出 u263c,二级C语言笔试必过399题
- Vue学习笔记(六) 表单输入绑定
- idea 初始界面_IDEA 初始配置教程
- React 组件开发 传参(详解)。
- 华为大数据平台使用pyhive连接hive的方法(Kerberos验证)
- 2021-09-30 拐点可能存在的地方总结, 关于弧微分的理解
- E680手机上能用的 MPlayer
- Foxit PDF SDK for iOS--零基础Cordova开发
- getElementByClassName
- 计算机二级考试不及格看不到分数吗,计算机二级查不到成绩是不是没过,不及格有分数吗...
- mysql_性能优化一(慢查询分析)
- MeiShe Face Sticker Design Plugin AR Scene Editor Instruction