湘西建设监理协会网站,建设网站前端,seo对各类网站的作用,小学生个人网站怎么做提示#xff1a;文章写完后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、打印月历二、实现代码三、运行结果总结 前言 设计程序#xff0c;实现年、月由用户输入#xff0c;输出一个如下形式的闰年日历#xff1a; .
(提示文章写完后目录可以自动生成如何生成可参考右边的帮助文档 文章目录 前言一、打印月历二、实现代码三、运行结果总结 前言 设计程序实现年、月由用户输入输出一个如下形式的闰年日历 .
(提示
可按公式 iWeek ((c/4)-2*cy(y/4)(26*(iMonth1)/10)iDay-1)%7
将年iYear/月iMonth/日iDay换算成星期iWeek。
公式中
ciYear/100 c15yiYear%100
当 iMonth为1时iYear 改为 iYear-1iMonth 改为 13
当 iMonth为2时iYear 改为 iYear-1iMonth 改为 14
当 iWeek0时iWeek 改为 iWeek7
iWeek 为 0 表示星期日) 2.实现代码
代码如下示例
#includestdio.hint n,c,y,iWeek,iYear,iDay,iMonth,maxday,j;int main(){scanf(%d %d,iYear,iMonth);printf(日 一 二 三 四 五 六\n);switch(iMonth){case 4:maxday 30;break;case 6:maxday 30;break;case 9:maxday 30;break;case 11:maxday 30;break;case 2:if(iYear%40iYear%100!0){maxday 29;}else{maxday 28;}break;default:maxday 31;break;}//计算当月yihaoc iYear/100;y iYear%100;iDay 1;iWeek ((c/4)-2*cy(y/4)(26*(iMonth1)/10)iDay-1)%7;if(iWeek0){iWeek7;}int i;for(i0;iiWeek;i){printf(%2s , );//iweek前面放空格 }for(iiWeek;i6;i){printf(%2d ,j);if(i6){i -1;printf(\n);}if(jmaxday){break;}}return 0;
})三、运行结果
2022 10 日 一 二 三 四 五 六 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 总结
熟悉掌握Switch--case用法、循环嵌套