C++课程设计万年历.docx

上传人:b****8 文档编号:9401242 上传时间:2023-02-04 格式:DOCX 页数:9 大小:134.93KB
下载 相关 举报
C++课程设计万年历.docx_第1页
第1页 / 共9页
C++课程设计万年历.docx_第2页
第2页 / 共9页
C++课程设计万年历.docx_第3页
第3页 / 共9页
C++课程设计万年历.docx_第4页
第4页 / 共9页
C++课程设计万年历.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

C++课程设计万年历.docx

《C++课程设计万年历.docx》由会员分享,可在线阅读,更多相关《C++课程设计万年历.docx(9页珍藏版)》请在冰豆网上搜索。

C++课程设计万年历.docx

C++课程设计万年历

C++课程设计--万年历

安徽省巢湖学院计算机与信息工程学院

课程设计报告

课程名称《C++语言》

课题名称万年历设计

专业计算机科学与技术

班级#**************

学号000000000

姓名非凡方法

指导教师vdnggb

 

1、设计题目••••••••••••••••••••••1

2、设计要求••••••••••••••••••••••1

3、总体设计••••••••••••••••••••••1

3.1系统功能框架•••••••••••••••••1

3.2系统功能说明•••••••••••••••••2

4、详细设计••••••••••••••••••••••2

4.1数据结构设计•••••••••••••••••2

4.2程序详细源代码•••••••••••••••3

5、运行结果••••••••••••••••••••••8

1、设计题目:

万年历设计

2、设计要求:

(1)程序运行时,首先给出3个菜单选项的内容和输入提示:

1显示一年的日历

2显示某一天是星期几0退出

(2)用户可以通过主菜单选择不同的选项。

若选择1,则通过输入年份,显示输出该年每个月的日历。

若选择2,则通过输入日期,查询这一天是星期几。

3、总体设计:

3.1系统功能框架

(流程图)

依据课程设计的要求,需要设计一个菜单功能,进入程序后,有菜单可以提供选择,

选择1,进入日期显示阶段,日期显示完毕,再次进入菜单选择。

选择2,进入日期查询阶段,日期查询完毕,再次进入菜单。

选择0,

退出程序。

3.2系统功能说明

(功能板块)

在菜单要求当中,要求能够按年查询,能够查询某天是星期几。

然而,在程序当中为了实现这两个功能,包括了闰年的判断,日期判断,日期打印和日期的查询。

功能是由它们共同实现的。

4、详细设计

4.1数据结构设计

本程序采用类定义代码如下:

classDate

{

private:

intyear;

public:

intweekday();

voiddisp(intx);

intisleapyear();

intmonthday(inti);

voidgetyear();

};

类名:

Date

数据成员:

year

成员函数:

voidgetyear();//输入年份的函数

intisleapyear();//判断是否是闰年的函数

intweekday();//判断本月第一天是星期几的函数

intmonthday(inti);//计算每月有几天的函数

voiddisp(intx);//输出月份及查询年份的月历的函数

及字符串数组定义代码如下:

char*weekd[7]={"MON","TUE","WEN","THU","FRI","STA","SUN"};

4.2程序详细源代码

#include

#include

voidf1();

voidf2();

intjudgeyear(int);

intmonthdays(int,int);//函数原型声明

intjudgeyear(intyear)

{

if((year%400==0)||(year%4==0&&year%100!

=0))//判断输入的

年份是否为闰年模块

return1;

else

return0;

}

intmonthdays(intyear,intmonth)//计算各个月份的天数

{

if(month==2)

{

if(judgeyear(year)==1)return29;

elsereturn28;

}

elseif(month==4||month==6||month==9||month==11)

return30;

else

return31;

}

voidf1()

{

intyear,t,i,month;

cout<<"请输入年份:

";

cin>>year;

t=((year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400+1)%7;//判断这一年的元旦是星期几

for(intk=1;k<=12;k++)

{

cout<

cout<

for(intz=1;z<=t;z++)

cout<

for(i=1;i<=monthdays(year,k);i++)

{cout<

if((i+t)%7==0)

cout<

t=(t+monthdays(year,k)%7)%7;

cout<

//日历显示模块

}

}

voidf2()

{

intyear,month,day;

cout<<"请输入年份:

";

cin>>year;

cout<<"请输入月份:

";

cin>>month;

cout<<"请输入此年此月相应的日期"<<"<1~31>:

";

cin>>day;

intl,n,t,w,date(0);

char*week[]={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};

n=(year-1900);

l=(n-1)/4;

n=l+n;

n=n%7;

n=n;

for(inti=1;i

date+=monthdays(year,i);

date+=day;

n=n+date;

n=n%7;

cout<<"\n该天是:

"<

}//日子查询模块

voidmain()

{

inti=1;

cout<<"--------------------------------"<

cout<<"**"<

cout<<"欢迎进入万年历查询系统"<

cout<<"**"<

cout<<"--------------------------------"<

cout<<"请选择您的查询内容:

"<

cout<<""<<"1.显示一年的日历"<<";"<

cout<<""<<"2.显示某一天是星期几"<<";"<

cout<<""<<"0.退出"<<";"<

cout<<"请选择按键"<<"<0-2>:

";//输出主菜单

while(i)

{

cin>>i;

if(i>=0&&i<=2)

{

switch(i)

{

case1:

f1();break;

case2:

f2();break;

case0:

cout<<"谢谢使用,再见!

";break;

}

}

}

}

5、运行结果

1程序运行测试:

在电脑中打开C++应用程序,首先进入VC++6.0,将程序代码输入,编译,组建,调试。

观察运行结果,和各个功能情况。

2进入程序菜单

(图1:

菜单页面)

说明:

该页面表示进入菜单选项,根据选项进入相应的功能。

31号键功能:

(图2:

日历显示页面)

说明:

进入按年查询功能,输入想查询的年份,例如2011年,得到2011年各月的日历,图像在此仅展示5,6两月日历

42号键功能:

(图3:

星期几查询页面)

说明:

依次输入201171,得到上图结果。

(图4:

星期几查询)

说明:

依次输入201172,得到上图。

50号键功能:

(图5:

结束页面)

说明:

退出程序

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1