- 9
- 0
- 约8.81千字
- 约 5页
- 2016-10-16 发布于贵州
- 举报
设计一个显示年历的程序
河北工业大学计算机软件技术基础(VC)2008年课程设计报告
学院电气与自动化 班级 C072 姓名 闫英 学号 073828 成绩 __ ____
题目:设计一个显示年日历的程序
二、设计思路
1、总体设计
1)分析程序的功能:通过此程序可以查询任意一年的年日历,输入要查询的年份,显示一年十二个月每月的日历.
2)系统总体结构:由构造函数is leapyear()、f()和主函数构成;
用is leapyear()判断输入年份是不是闰年;
用f()判断元旦这一天是星期几;
用主函数调整日历输出格式。
各功能模块的设计:
函数is leapyear()判断闰年,用选择结构if(year%4==0year%100!=0||year%400==0)来实现;
函数f()判断元旦这一天是星期几,用
int n=year-1900;
n=n+(n-1)/4+1;
n=n%7;来实现。
主函数通过循环,对各月不同天数进行判断,并依次循环输出对应天数。
3、设计中的主要困难及解决方案
在这部分论述设计中遇到的主要困难及解决方案。
1)困难1:对闰年的判断.
解决方案:year%4==0year%100!=0||year%400==0判断这一年是不是闰年。
2)困难2:对元旦为星期几的判断。
解决方案:已知1900年元旦为星期一,用
int n=year-1900;
n=n+(n-1)/4+1;
n=n%7;来判断每年的元旦是星期几。
4、你所设计的程序最终完成的功能
1)说明你编制的程序能完成的功能:输入要查询的年份即显示这一年的日历。
2)准备的测试数据及运行结果:
输入要查询的年份2008,则显示2008年一年的日历.
三、程序清单
如果是使用一个文件完成的程序,只需列出程序代码。
如果是使用多文件完成的程序,首先说明程序中的代码存放在哪些文件中,说明文件名(例如:本程序包含first.cpp、second.cpp、third.cpp和all.h四个文件);然后依次给出每个文件名及该文件清单,例如:
#include iostream.h
const int r=1;
const int w=0; //定义常量
int isleap(int year) //函数isleap()判断某年是不是闰年
{
int leap=w;
if(year%4==0year%100!=0||year%400==0)
leap=r;
return leap;
}
int f(int year) //函数f()判断每年元旦是星期几
{
int n=year-1900;
n=n+(n-1)/4+1;
n=n%7;
return n;
}
int main() //主函数
{
int year,month,day,weekday,monthday,i;
cout请输入要查询的年份:;
cinyear;
cout\nyearendl;
weekday=f(year);
for(month=1;month=12;month++)
{
cout\nmonthendl;
cout****************************endl;
coutsun mon tue wed thu fri satendl;
cout****************************endl;
for(i=0;iweekday;i=i+1) //找到每月1日所在的位置,所占的空格数
cout ;
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
monthday=31;
else if(month==2)
{
if(isleap(year))
monthday=29;
else
monthday=28;
}
else
monthday=30;
for(day=1;day=monthday;day++)
{
if(day9)
coutday ;
else
coutday ;
weekday++;
if(weekday==7) //满一个星期换行
{
weekday=0;
coutendl;
}
}
coutendl; //输出完一个月换行
}
return 0;
}
四、对该设计题目有
原创力文档

文档评论(0)