程序设计C 实验二 题目三 计算生日是星期几(0078)
来源:互联网 发布:卓大王yeile知乎 编辑:程序博客网 时间:2024/05/19 19:43
Description
输入一个日期,包括年、月、日。(一组测试数据)
Input
输出这个日期是星期几。
Output
1
2
3
1 1 1
2 1 1
2006 7 10
Sample Input
1
2
3
Monday
Tuesday
Monday
Sample Output
1、 已知公元1 年1 月1 日是星期一 2、 算法提示:如果输入的是2006 年3 月12 日,计算方法是 (1) 先计算从公元0001 年初(0001-1-1)到2005 年末(2005-12-31)共多少天,注意其中 有闰年,闰年是366 天,平年是365 天。闰年的判断条件满足(见教材例3.8 题): (( year%4==0 && year%100!=0 )||(year%400==0)) (2) 然后再计算2006 年1 月1 日到2006-3-12 是多少天。注意同样判断本年度是否闰年, 即二月份是28 天还是29 天。 (3) 上述两部分相加即从公元0001 年初(0001-1-1)到2006 年末(2006-3-12)的天数, 用该天数模7(total%7)即得到星期数。
#include <stdio.h> int main() { int year = 0,month = 0,day = 0; int leap = 0,noleap = 0; int days_1 = 0,days_2 = 0; int w = 0,days = 0; scanf("%d %d %d",&year,&month,&day); int i; for (i = 1;i < year;i++) { //判断是否闰年 if ((i % 4 == 0 && i % 100 != 0) || (i % 400 == 0)) { leap ++; } else { noleap ++; } } days_1 = leap * 366 + noleap * 365; //判断year年是否闰年 int j; for (j = 1;j < month;j++) { switch (j) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: days_2 += 31;break; case 4: case 6: case 9: case 11:days_2 += 30;break; case 2: if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) days_2 += 29; else days_2 += 28; break; } } days = days_1 + days_2 + day; w = days % 7; switch (w) { case 0:printf("Sunday\n");break; case 1:printf("Monday\n");break; case 2:printf("Tuesday\n");break; case 3:printf("Wednesday\n");break; case 4:printf("Thursday\n");break; case 5:printf("Friday\n");break; case 6:printf("Saturday\n");break; } return 0;}
阅读全文
0 0
- 程序设计C 实验二 题目三 计算生日是星期几(0078)
- 计算生日是星期几
- 设计一个计算生日是星期几的程序
- PHP计算女朋友十年内生日是星期几
- 判断生日是星期几
- 计算出生日是星期几
- 判断生日是星期几
- 判断生日是星期几
- 程序设计C 实验三 题目二 距阵相乘(0074)
- 程序设计C 实验三 题目二 距阵相乘(0074)
- 生日是星期几,输入公历,输出星期几
- vb判断生日是星期几
- 程序设计C 实验三 题目四 数字根的计算(0284)
- 程序设计C 实验二 题目一 计算员工周工资(0077)
- 程序设计C 实验五 题目二 班级课程成绩计算(0617)
- 计算当天是星期几
- 计算出生是星期几
- 计算今天是星期几
- Word快捷键大全
- oracle之spfile与pfile
- 饿了么webapp之header的背景
- RTAI API-----Message handling functions
- 第七周项目3-负数把正数赶出队列
- 程序设计C 实验二 题目三 计算生日是星期几(0078)
- ios __block与__weak
- WPF Template模版之DataTemplate与ControlTemplate的关系
- 用户登录,记住密码
- 在centos7下安装docker
- 微信小程序开发开启https方法:【适用于腾讯云】
- Mvp+RxJava2+Retrofit2 搭建一个属于自己的开发框架
- 用Ionic实现侧边栏菜单 滑动效果
- 【新版本】Aspose.Cells 10月新版V17.10发布 | 支持读写外部XLSB文件