万年历课程设计报告报告.docx

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

万年历课程设计报告报告.docx

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

万年历课程设计报告报告.docx

万年历课程设计报告报告

面向对象课程设计

 

题目万年历程序设计

系部商学系

专业信息管理与信息系统

班级信息N122

学号

学生姓名

指导教师

编写日期2015.01.15

 

第一章需求分析

如今的社会是一个信息的时代,随着电脑等科技产品在人们生活中占据着越来越重要的地位,人们就会越加的善加利用,这为我们的生活带来了极大的效率,同时计算机的普及更可以看出它所占的地位。

万年历作为日常中的一种小工具,它具有多方面的小工能,主要在日期的显示上给人以直观的表达效果,在日期的查询上方便简洁,还有就是在某些节日的提醒上都给我们带来极大的方便

,是一种比较实用的小工具。

我们每个人都可以在自己的个人电脑上进行制作,一方面不仅可以加强巩固我们对C#语言的学习,还可以通过自主的编程找到自身的缺点。

这对培养我们自身的创新能力和动手能力具有很大的作用。

 

第二章概要设计

1.设计要求

程序完成运行时,能过正确的表达出所输入年份的万年历。

2.总体设计

<1>实现操作流程图

 

 

<2>程序设计流程图

 

 

 

 

第三章详细设计与编码

<1>源代码

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Linq;

usingSystem.Windows.Forms;

usingSystem.Globalization;

namespaceAllAgesCalendar

{

publicpartialclassForm1:

Form

{

publicForm1()

{

InitializeComponent();

}

privatevoidForm1_Load(objectsender,EventArgse)

{

stringintmonth=monthCalendar1.TodayDate.Month.ToString();

stringintdaty=monthCalendar1.TodayDate.Day.ToString();

if(monthCalendar1.TodayDate.Month<10)

{

intmonth="0"+monthCalendar1.TodayDate.Month.ToString();

}

if(monthCalendar1.TodayDate.Day<10)

{

intdaty="0"+monthCalendar1.TodayDate.Day.ToString();

}

strings=String.Format("{0}年{1}月{2}",GetStemBranch(monthCalendar1.TodayDate),

GetMonth(monthCalendar1.TodayDate),

GetDay(monthCalendar1.TodayDate));

label1.Text=monthCalendar1.TodayDate.Year+"年"+intmonth+"月"+intdaty+"日"+""+s+""+getReturnYear(monthCalendar1.TodayDate)+"年";

label1.ForeColor=Color.Green;

}

privatevoidlabel1_Click(objectsender,EventArgse)

{

}

ChineseLunisolarCalendarcalendar=newChineseLunisolarCalendar();

publicstringGetYear(DateTimetime)

{

StringBuildersb=newStringBuilder();

intyear=calendar.GetYear(time);

intd;

do

{

d=year%10;

sb.Insert(0,ChineseNumber[d]);

year=year/10;

}while(year>0);

returnsb.ToString();

}

privatestaticstringChineseNumber="〇一二三四五六七八九";

publicstringGetMonth(DateTimetime)

{

intmonth=calendar.GetMonth(time);

intyear=calendar.GetYear(time);

intleap=0;

for(inti=3;i<=month;i++)

{

if(calendar.IsLeapMonth(year,i))

{

leap=i;

break;

}

}

if(leap>0)month--;

return(leap==month+1?

"闰":

"")+ChineseMonthName[month-1];

}

publicstaticreadonlystring[]ChineseMonthName=newstring[]{"正","二","三","四","五","六","七","八","九","十","十一","十二"};

publicstringGetDay(DateTimetime)

{

returnChineseDayName[calendar.GetDayOfMonth(time)-1];

}

publicstaticreadonlystring[]ChineseDayName=newstring[]{

"初一","初二","初三","初四","初五","初六¨´","初七","初八?

","初九","初十",

"十一","十二","十三","十四","十五","十六","十七","十八","十九","二十",

"廿一","廿二","廿三","廿四","廿五","廿六¨´","廿七","廿八","廿九","三十"};

publicstringGetStemBranch(DateTimetime)

{

intsexagenaryYear=calendar.GetSexagenaryYear(time);

stringstemBranch=CelestialStem.Substring(calendar.GetCelestialStem(sexagenaryYear)-1,1)+TerrestrialBranch.Substring(calendar.GetTerrestrialBranch(sexagenaryYear)-1,1);

returnstemBranch;

}

publicconststringCelestialStem="甲乙丙丁戊己庚辛壬癸

";

publicconststringTerrestrialBranch="子丑寅卯辰巳午未申酉戌亥";

publicstringgetReturnYear(DateTimetime)

{

intsexagenaryYear=calendar.GetSexagenaryYear(time);

stringTree=TreeYear.Substring(calendar.GetTerrestrialBranch(sexagenaryYear)-1,1);

returnTree;

}

publicconststringTreeYear="鼠牛虎兔龙蛇马羊猴鸡狗猪";

privatevoidmonthCalendar1_DateSelected(objectsender,DateRangeEventArgse)

{

stringstrYesr=String.Format("{0}年{1}月{2}",GetStemBranch(monthCalendar1.SelectionStart),

GetMonth(monthCalendar1.SelectionStart),

GetDay(monthCalendar1.SelectionStart));

toolTip1.ToolTipTitle=monthCalendar1.SelectionStart.ToShortDateString();

toolTip1.Show(strYesr+""+getReturnYear(monthCalendar1.SelectionStart)+"年",monthCalendar1,monthCalendar1.Location,5000);

}

 

}

}

 

第四章调试分析

<1>程序运行测试

①进入程序界面:

(进入程序的第一步)

②输入所查年份:

(例上输入所查年月2010-2019)

 

③现实所查年份万年历:

 

(以上就是完整的输出结果)

 

第五章用户使用说明

这是一个简单的万年历编程,用户可以通过键入所查的年份,便可以轻松快速的查询这一年的万年历,使用用户在运行程序后,可以通过界面的指示键入所查的年份。

 

第六章设计心得

通过几天的不懈努力,这一份面向对象的课程设计终于在自己的努力与同学的帮助下顺利的完成了。

前期可能是自己的一些方面薄弱,并没有完全的理解一些代码,从而设计出来的程序编译出错,还好在一些知识能力强的同学下进行了合理的改正才有了现在的这个完整的程序。

设计一个万年历的程序之前,可能都是有自己大概的一点想法,也许看上去简单,但通过实际的操作我便发现,各种细小的错误都可能会出现,这便让我意识到个人平时的动手操作还是有欠缺的。

所以还是如老师讲的那般,以电脑软件的检验来通过不断的练习完善自己的薄弱点。

 

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

当前位置:首页 > 求职职场 > 简历

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

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