已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
合肥工业大学C+课程设计万年历数学学院信息一班 陈育伟 20096361一、目的与要求显示公元后任何年份的日历,日历以月份的顺序排列,每月以星期顺序排列,类似于一般挂历上的格式。二、工具/准备工作在开始实验前,应回顾并复习相关内容。我使用的软件是Dev-C+。三、分析1、大月和小月的定义,主要运用了数组的循环语句进行对大小月的定义。void f1(int x) /大月 for( i=0;i=0;i-) ai=000;for(i=k;i31+k;i+) ai=ai-1+1;void f2(int x) /小月 for( i=0;i=0;i-) ai=000; for(i=k;i30+k;i+) ai=ai-1+1;2、闰年与非闰年二月的定义void f3(int x) /闰年二月 for( i=0;i=0;i-) ai=000; for(i=k;i29+k;i+) ai=ai-1+1;void f4(int x) /非闰年二月 for( i=0;i=0;i-) ai=000; for(i=k;i28+k;i+) ai=ai-1+1; 3、日历表的输出int s,count=0; coutyear; coutendl; c=year; for(s=1;s=year;s+) if(s-1)%4=0&(s-1)%100!=0)|(s-1)%400=0) count+; day=365*c+count; /相差天数 cout-year年日历-; coutendlendl;在此运用了C+中函数的运算,计算出该年的每月每日的不同。还有一年的输入和输出。在输出时,闰年与非闰年二月的输出法的定义if(year%4=0&year%100!=0)|year%400=0) /闰年二月 k=(day+31)%7+6)%7+1; cout 二月endlendl; f3(k); g(a,50); cout-endl; cout-endl; day=day+31+29; else /非闰年二月 k=(day+31)%7+6)%7+1; cout 二月endlendl; f4(k); g(a,50); cout-endl; cout-0;p+) cout按任意键继续.endl; getch(); btbt(); 通过无限循环语句和getch()函数的使用来实现按任意键继续的功能。四、实现步骤1、建立头文件并定义有用到的字符常量,具体代码如下:#include#include#includeusing namespace std;int i,c,day,year,k,a50;2、定义大月、小月、闰年二月、非闰年二月与日历表输出函数,具体代码如下:void f1(int x) /大月 for( i=0;i=0;i-) ai=000; /1号前均为空格 for(i=k;i31+k;i+) ai=ai-1+1;void f2(int x) /小月 for( i=0;i=0;i-) ai=000; for(i=k;i30+k;i+) ai=ai-1+1;void f3(int x) /闰年二月 for( i=0;i=0;i-) ai=000; for(i=k;i29+k;i+) ai=ai-1+1;void f4(int x) /非闰年二月 for( i=0;i=0;i-) ai=000; for(i=k;i28+k;i+) ai=ai-1+1;void g(int y,int z) / 输出日历表 cout星期日t星期一t星期二t星期三t星期四t星期五t星期六endl; for(i=0;i50;i+) if(ai=0) cout(char)ait; if(ai!=0&ai!=33) coutait; else ; if(i%7=0) coutendl; 3、定义自定义函数btbt(),来实现一年日历的全部输出,具体代码如下:int btbt() int s,count=0; coutyear; coutendl; c=year; for(s=1;s=year;s+) if(s-1)%4=0&(s-1)%100!=0)|(s-1)%400=0) count+; day=365*c+count; /相差天数 cout-year年日历-; coutendlendl; k=(day%7+6)%7+1; cout 一月endlendl; f1(k); g(a,50); cout-endl; cout-endl; if(year%4=0&year%100!=0)|year%400=0) /闰年二月 k=(day+31)%7+6)%7+1; cout 二月endlendl; f3(k); g(a,50); cout-endl; cout-endl; day=day+31+29; else /非闰年二月 k=(day+31)%7+6)%7+1; cout 二月endlendl; f4(k); g(a,50); cout-endl; cout-endl; day=day+31+28; k=(day%7+6)%7+1; cout 三月endlendl; f1(k); g(a,50); cout-endl; cout-endl; k=(day+31)%7+6)%7+1; cout 四月endlendl; f2(k); g(a,50); cout-endl; cout-endl; k=(day+31+30)%7+6)%7+1; cout 五月endlendl; f1(k); g(a,50); cout-endl; cout-endl; k=(day+31+30+31)%7+6)%7+1; cout 六月endlendl; f2(k); g(a,50); cout-endl; cout-endl; k=(day+31+30+31+30)%7+6)%7+1; cout 七月endlendl; f1(k); g(a,50); cout-endl; cout-endl; k=(day+31+30+31+30+31)%7+6)%7+1; cout 八月endlendl; f1(k); g(a,50); cout-endl; cout-endl; k=(day+31+30+31+30+31+31)%7+6)%7+1; cout 九月endlendl; f2(k); g(a,50); cout-endl; cout-endl; k=(day+31+30+31+30+31+31+30)%7+6)%7+1; cout 十月endlendl; f1(k); g(a,50); cout-endl; cout-endl; k=(day+31+30+31+30+31+31+30+31)%7+6)%7+1; cout 十一月endlendl; f2(k); g(a,50); cout-endl; cout-endl; k=(day+31+30+31+30+31+31+30+31+30)%7+6)%7+1; cout 十二月endlendl; f1(k); g(a,50); cout-0;p+) cout按任意键继续.endl; getch(); btbt(); getch(); return 0; 5、编译及运行万年历程序。五、测试与结论1、刚运行时屏幕显示如下:2、输入2009时,屏幕显示如下:3、按下回车键,屏幕显示如下:4、按任意键,屏幕显示如下:从上面的屏幕显示,可知本程序满足课程设计的目标与
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汉源县2025年面向社会公开招聘社区工作者(10人)备考题库带答案解析
- 泸州市江阳区2025年公开考试招聘社区专职工作者岗位调整情况备考题库带答案解析
- 2026年设备监理师之设备监理合同考试题库含答案(典型题)
- 2026年社会工作者之中级社会工作实务试题一带答案解析
- 2026招商银行总行校园招聘(冬季场)历年真题汇编及答案解析(夺冠)
- 2026年质量员之土建质量基础知识考试题库及参考答案【培优a卷】
- 2026中国牧工商集团有限公司校园招聘8人备考公基题库带答案解析
- 2026年质量员之设备安装质量专业管理实务考试题库带答案(综合题)
- 2025海南三亚市卫生健康委员会招聘下属事业单位工作人员(第7号)模拟试卷带答案解析
- 2026中电科思仪科技股份有限公司招聘笔试备考试卷附答案解析
- 2025年少先队辅导员技能大赛考试测试题及参考答案(共四套)
- 专题78 人教版高中英语选择性必修二词汇表背默版-2026年高考英语一轮复习知识清单
- 2025湖南常德金鹏印务有限公司招聘拟录用人员笔试历年典型考点题库附带答案详解2套试卷
- 人教版数学六年级上册第一、二单元测试卷(含解析)
- 项目实施团队组建与人员配置方案
- 留置胃管的操作流程及注意事项
- 挡土墙施工私人协议书
- 2025新版中学生入团考试试题及答案
- 2025年秋人教 PEP 版小学英语四年级上册期中检测试卷及答案(共3套)
- 2025后勤考试试卷及答案
- 粉尘清扫安全管理制度完整版
评论
0/150
提交评论