培训第三天(打印某年的年历)
来源:互联网 发布:java流量监控 编辑:程序博客网 时间:2024/05/17 02:05
已知今天星期六,问n天后星期几
x=(6+n)%7
已知今天星期六,问n天前星期几
x=6-n%7
(一)已知2000年1月1日为星期六,求某一年的日历
x=(6+n)%7
已知今天星期六,问n天前星期几
x=6-n%7
(一)已知2000年1月1日为星期六,求某一年的日历
#include <iostream>#include <cstdio>#include <cstring>#include <cmath>using namespace std;int num;int isLeapyear(int year)//求某年是否为闰年{ int isOK=0; isOK=(year%4==0&&year%100!=0||year%400==0)?1:0; // printf("%d年是%d\n",year,isOK); return isOK;}int yearDays(int year)//求某年有几天{int days=0;days=(isLeapyear(year)==1) ? 366 : 365;// printf("%d年有%d天\n",year,days);return days;}int yearMonthdays(int year ,int month )//求某年某月的天数{ int days=0; switch(month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: days=31; break; case 4: case 6: case 9: case 11: days=30; break; case 2: days=(isLeapyear(year)==1) ? 29 : 28; break; } // printf("%d年%d月有%d天\n",year,month,days); return days;}int firstYearMonthDaysto2000_1_1(int year , int month)//求某年某月的第一天到2000年1月1日有多少天{int i;int days=0;if(year>=2000){ for(i=2000;i<year;i++) days+=yearDays(i); for(i=1;i<month;i++) days+=yearMonthdays(year,i);}else{for(i=year+1;i<=2000;i++)days+=yearDays(i);for(i=month;i<=12;i++) days+=yearMonthdays(year,i);}// printf("到2000年1月1日有%d\n",days);return days;}int yearMonthWeekDay(int year , int month)//求距2000年1月1日为n天的日子为星期几{int weekday=99;int n=firstYearMonthDaysto2000_1_1(year,month);if(year>=2000){ weekday=(6+n)%7;}else{ weekday=6-n%7;}return weekday;}void displayYearMonth(int year, int month)//输出某年某月的日历{printf("------------------------%d年%d月------------------------\n",year,month);printf("日\t一\t二\t三\t四\t五\t六\t周\n");int i;int count=0;int zhou=1;int days=yearMonthdays(year,month);int weekday=yearMonthWeekDay(year,month);for(i=0;i<weekday;i++){count++;printf("\t");}for(i=1;i<=days;i++){count++;printf("%d\t",i);if(count%7==0){ printf("%d\n",num++);} }if(count%7!=0){int a=count; for(;a%7!=0;a++) printf("\t"); printf("%d\n",num);}printf("\n");}void displayYear(int year)//输出某年的日历{int i;for(i=1;i<=12;i++){displayYearMonth(year,i);}}int main(){ int year; while(~scanf("%d",&year)) { num=1; displayYear(year); } return 0;}
0 0
- 培训第三天(打印某年的年历)
- 培训的第三天
- 培训营的第三天
- 打印某年的日历
- 无聊的培训第三天了
- 丫头去培训了(第三天)
- 培训第三天
- ocp培训第三天
- 培训第三天
- 培训第三天
- oracle培训第三天
- java培训第三天
- 济南培训第三天
- 某年的第几天
- 某年的第几天
- 打印年历
- 北京微软培训第三天
- cgonos 入门培训第三天
- C#关于imageBox中鼠标获取ROI区域
- Objective-C代码规范
- 关于计算机编程的两件事
- HDOJ 2058 The sum problem
- PHP5中使用DOM操作XML方法
- 培训第三天(打印某年的年历)
- 反转链表
- Ubuntu使用日志2015-01-05
- 三张图告诉你python爬虫时转换\u中文字符的“坑”
- python生成xml格式文件实例
- php的SimpleXML方法读写XML接口文件实例解析
- 修改某语言环境下默认日期的格式
- php下将XML转换为数组示例
- defaultpic.gif是什么,defaultpic.gif路径修改方法