中国矿业大学软件课程设计实验报告
软件课程设计 第四阶段实验报告

软件课程设计第四阶段实验报告编号:()字号《软件课程设计》报告中国矿业大学计算机科学与技术学院年月1软件课程设计任务书专业年级:学生姓名:任务下达日期: 200 年月日课程设计日期: 200 年月日至 200年月日课程设计题目:数据结构类别数据结构题目序号 1顺序栈和链表栈的基本操作5 统计选票问题成绩2软件课程设计指导教师评阅书指导教师评语(①基础理论及基本技能的掌握;②独立解决实际问题的能力;③研究内容的理论依据和技术方法;④取得的主要成果及创新点;⑤工作态度及工作量;⑥总体评价及建议成绩;⑦存在问题等):成绩:指导教师签字:年月3日目录七、数据结构1----- 顺序栈和链表栈的基本操作(第四阶段第一题顺序栈和链表栈.cpp)7.1 需求分析 (4)7.2 概要设计....................................................................................5 7.3 详细设计与编码...........................................................................6 7.4 调试分析....................................................................................14 7.5 用户使用说明............................................................................16 7.6 设计心得 (16)八、数据结构4----统计选票问题(第四阶段第四题统计选票问题.cpp)8.1 需求分析 (17)8.2 概要设计....................................................................................17 8.3 详细设计与编码...........................................................................17 8.4 调试分析....................................................................................20 8.5 用户使用说明...........................................................................21 8.6 设计心得 (21)7.1需求分析本程序是通过类的构造方法编写两种栈:顺序表栈和链表栈,以这顺序表和单向链表为基本构架,实现栈的基本操作:判空、.取栈顶元素、查找、.入栈、出栈、输出栈、求栈中元素个数。
软件工程课程设计实验报告

重庆邮电大学软件工程课程设计实验报告——网上选课系统姓名:雷雷学号:08500329专业:计算机科学与技术班级:0410801指导老师:邹洋教室:S331-A时间:2011-5-30~2011-6-3一、实验题目:网上选课系统主要功能描述:系统首先维护校内所有课程的信息;课程分为研究生、本科生;也可以分为必修、选修、辅修。
用户以学号和密码登陆,系统显示用户以选的课程、用户有权选但未选的其他课程,并显示具体信息(如学分)。
用户选择后,系统根据规则检查用户是否进行正确的选课(如时间冲突、跨专业选课等);如果错误提示用户改,否则修改选课数据库。
最后系统应能够向管理员提供查询界面和各类报表,统计每门课的选课情况。
二、实验目的软件工程课程设计是软件工程专业一个综合性的实践教学环节,其目的在于促进学生复习和巩固计算机软件设计知识,加深对软件设计方法、软件设计技术和设计思想的理解,并能运用所学软件设计知识和面向对象技术进行综合软件设计,提高学生的综合应用能力。
通过这次课程设计,要掌握UML(统一建模语言),并能运用UML在Rational Rose中建模。
三、实验要求1.一人一组。
2.熟悉Rose开发环境。
3.掌握UML的基本模型元素(如角色、用例、类等)。
4.熟悉UML,主要了解UML中的9大图:Use case diagram(用例图)、Class diagram(类图)、Sequence diagram(序列图)、Collaboration diagram(协作图)、Statechart diagram(状态图)、Activity diagram(活动图)、Component diagram(组件图)、Deployment diagram(配置图)、datamodel diagram(数据模型图)。
5.进行系统需求分析与系统功能模块设计,绘出系统详细的业务流程图和数据流程图,建立完整的系统数据库的逻辑模型。
龙纯鹏组《软件工程导轮》实验报告系统设计

中国矿业大学(北京)软件工程导论实验报告课程名称:软件工程导论实验名称:银行计算机储蓄系统设计说明书班级:信息与计算科学(1)班组长:龙纯鹏组员:代喜白鑫刘永鸿侯佳意实验日期: 2014年4月9日指导老师姓名:王颖组内任务分配:龙纯鹏11107200110组长、主要负责可行性分析报告和需求分析报告代喜 11107200103 主要负责系统设计白鑫 11107200101 刘永鸿11107200210 主要负责编写代码侯佳意11107200106主要负责用户手册目录1引言 (2)1.1编写目的 (2)1.2背景 (2)1.3定义 (2)1.4参考资料 (2)2总体设计 (2)2.1需求规定 (2)2.2运行环境 (2)2.3基本设计概念和处理流程 (3)2.4结构 (3)2.5功能器求与程序的关系 (3)2.6人工处理过程 (3)2.7尚未问决的问题 (3)3接口设计 (3)3.1用户接口 (3)3.2外部接口 (3)3.3内部接口 (4)4运行设计 (4)4.1运行模块组合 (4)4.2运行控制 (4)4.3运行时间 (4)5系统数据结构设计 (4)5.1逻辑结构设计要点 (4)5.2物理结构设计要点 (4)5.3数据结构与程序的关系 (4)6系统出错处理设计 (5)6.1出错信息 (5)6.2补救措施 (5)6.3系统维护设计 (5)系统设计说明书1引言1.1编写目的在现代化社会中随着银行业的激烈竞争,如何更好的提高办事效率,降低成本,提高银行系统的电算化及现代化程度,充分满足客户的需求,提供更优质高效的服务,成为各银行正向追逐的目标。
因此,开发一套方便快捷,高效实用,安全稳定的银行储蓄系统软件,便成了银行的当务之急。
它的意义也就显得尤为重要了。
过去落后的银行操作系统已经不适应现代社会的需求了,伴随着银行业激烈的竞争,急需出现一套更符合银行需要的新一代银行储蓄系统。
1.2背景项目名称:银行计算机储蓄系统开发者:计041软件工程第一小组用户:××银行背景:为了以更高的服务质量让储户满意,提高业务效率,强调资金安全,完善风险防范意识,特此开发一套新的银行计算机存储系统。
中国矿业大学测绘软件实习报告材料

中国矿业大学测绘软件设计与实现实验报告学号:姓名:班级:指导教师:王永波实验一二叉树的构建及其遍历算法的实现实验目的:完成二叉树的构建以及二叉树的遍历等,加深对树以及二叉树的遍历相关知识的理解。
实验内容:1.二叉树类的定义及建立。
2.二叉树的前序、中序、后序遍历。
主要代码:template <class T>class C_LJH_BinTree{public:C_LJH_BinTree();//构造函数,根据输入前序序列由键盘输入~C_LJH_BinTree();//析构函数void PreOrder();//前序遍历void InOrder();//中序遍历void PostOrder();//后序遍历private:T data;C_LJH_BinTree<T>*lchild,*rchild;bool NO_Die;};template <class T>C_LJH_BinTree<T>::C_LJH_BinTree(){NO_Die = false;lchild = NULL;rchild = NULL;char ch;cin>>ch;if (ch == '#'){NO_Die = true;//若为#,代表空节点}else{this->data = ch;//保存输入的节点//左子树C_LJH_BinTree *newChild0 = new C_LJH_BinTree<T>();if (newChild0->NO_Die)delete newChild0;elsethis->lchild= newChild0;//右子树C_LJH_BinTree *newChild1 = new C_LJH_BinTree<T>();//直接创建子节点,if (newChild1->NO_Die)delete newChild1;elsethis->rchild= newChild1;}}//析构函数template <class T>C_LJH_BinTree<T>::~C_LJH_BinTree(){if (lchild) delete lchild; //删除父节点之前,先删除子节点if (rchild) delete rchild;}//前序遍历template <class T>void C_LJH_BinTree<T>::PreOrder(){cout<<this->data<<"\t";//先输出父节点,然后子节点按照父节点做if (lchild!=NULL)this->lchild->PreOrder();if (rchild!=NULL)this->rchild->PreOrder();}//中序遍历template <class T>void C_LJH_BinTree<T>::InOrder(){if (lchild) lchild->InOrder();cout<<this->data<<"\t";if (rchild) rchild->InOrder();}//后序遍历template <class T>void C_LJH_BinTree<T>::PostOrder(){if (lchild) lchild->PostOrder();if (rchild) rchild->PostOrder();cout<<this->data<<"\t";}int main(){cout<<"请输入二叉树的前序遍历:"<<endl;cout<<"(以#作为分支结尾,例如:A B # # C # #)"<<endl;C_LJH_BinTree<char> m_tree;cout<<endl;cout<<"前序遍历为:"<<endl;m_tree.PreOrder();cout<<endl;cout<<"中序遍历为:"<<endl;m_tree.InOrder();cout<<endl;cout<<"后序遍历为:"<<endl;m_tree.PostOrder();cout<<endl;return 0;}实验结果:实验体会:通过本次试验,理解了二叉树类的构建、二叉树的建立及其遍历。
软件课程设计实验报告

软件课程设计实验报告软件课程设计实验报告1在我们整个软件工程过程中,我体会到了许多,也学到了许多。
在项目要进行自由分组后,我们的项目小组便诞生了。
我们小组由3个成员组成,在相互商量后我们也确定了我们组的项目,是做一个校园文件管理系统。
我们也随即做了分工,。
我们的项目也正式开始了。
需求调研和分析对于软件开发过程至关重要。
我们在开发时如果不进行调研和分析,那么对于后来的项目进展将产生致命的后果。
我们在项目的开发中便遇到了这样的问题。
我们开始自己随意的计划整个系统的设计,然后报给老师,老师作为一个客户并不是全部认同,随后我们也必须按着客户的要求更改我们的设计报告。
我也明白了,再做一个系统时,必须随时和客户保持沟通,随时了解他们需要什么,他们想要什么功能。
如果我们不去和客户沟通,不去调研客户的需求,做出来的系统即使在我们看来是一个很好,很完美的产品,但是如果客户不认同,那么我们所做的一切都是徒劳,还要返工去修改,费时费力。
所以在做任何一个项目时,前期的需求调研和需求分析都是必须的,这是在做一个项目的基本,是关系成败的重要一环。
对于一个项目,它的需求设计也非常重要。
在我们的文件管理系统开发的过程中,遇到了一些问题,出现的这些问题很多都是非常棘手的,我们为了解决这些棘手的问题浪费了大量的时间,我们不得不在工程代码上改了又改,在数据库里增表、删表、加数据、减数据,当然,在文档里也要做出相应的修改以适应新的功能。
还好,我们能及时地发现问题,通过相互沟通讨论,问题也得到了解决。
通过总结,我们也意识到,我们大家在做需求分析和进行需求了解时仅仅考虑了一些基本的功能,而至于管理员和客户之间的联系,以及具体的一些流程我们都没有深究,而导致我们到后期花费了大量的时间用于修复之前没有考虑周全而带来的问题。
如果我们的需求设计能够比较清晰和完善,那么我们在开发过程中便会很明白的知道我们应该实现什么样的功能,在数据库里应该怎样建表,以什么方式插入数据,从而可以避免反复修改工程的问题,也能避免出现可能毁坏整个工程的问题。
【免费下载】中国矿业大学java 实验报告

第 1 页 共 33 页
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根通保据过护生管高产线中工敷资艺设料高技试中术卷资,配料不置试仅技卷可术要以是求解指,决机对吊组电顶在气层进设配行备置继进不电行规保空范护载高与中带资负料荷试下卷高问总中题体资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况中卷下,安与要全过加,度强并工看且作护尽下关可都于能可管地以路缩正高小常中故工资障作料高;试中对卷资于连料继接试电管卷保口破护处坏进理范行高围整中,核资或对料者定试对值卷某,弯些审扁异核度常与固高校定中对盒资图位料纸置试,.卷保编工护写况层复进防杂行腐设自跨备动接与处地装理线置,弯高尤曲中其半资要径料避标试免高卷错等调误,试高要方中求案资技,料术编试交写5、卷底重电保。要气护管设设装线备备置敷4高、调动设中电试作技资气高,术料课中并3中试、件资且包卷管中料拒含试路调试绝线验敷试卷动槽方设技作、案技术,管以术来架及避等系免多统不项启必方动要式方高,案中为;资解对料决整试高套卷中启突语动然文过停电程机气中。课高因件中此中资,管料电壁试力薄卷高、电中接气资口设料不备试严进卷等行保问调护题试装,工置合作调理并试利且技用进术管行,线过要敷关求设运电技行力术高保。中护线资装缆料置敷试做设卷到原技准则术确:指灵在导活分。。线对对盒于于处调差,试动当过保不程护同中装电高置压中高回资中路料资交试料叉卷试时技卷,术调应问试采题技用,术金作是属为指隔调发板试电进人机行员一隔,变开需压处要器理在组;事在同前发一掌生线握内槽图部内纸故,资障强料时电、,回设需路备要须制进同造行时厂外切家部断出电习具源题高高电中中源资资,料料线试试缆卷卷敷试切设验除完报从毕告而,与采要相用进关高行技中检术资查资料和料试检,卷测并主处且要理了保。解护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
软件课程设计实验报告(3篇)

软件课程设计实验报告(3篇)【导语】软件课程设计试验报告怎么写出亮点?整理了3篇优秀的《软件课程设计试验报告》通用版范文,有规范的开头结尾写法和标准的书写格式。
是您写出深受大家欢迎的综合报告抱负参考模板,盼望对您有所关心。
【第1篇】软件课程设计试验报告一、目的、要求通过该课程设计要使同学树立起剧烈的工程化意识,用工程化思想和方法开发软件。
切实体会出用软件工程的方法开发系统与一般程序设计方法的不同之处,同学在对所开发的系统进行软件方案、需求分析、设计的基础上,实现并测试实际开发的系统。
通过一系列规范化软件文档的编写和系统实现,使同学具备实际软件项目分析、设计、实现和测试的基本力量。
二、主要内容要求同学把握软件工程的基本概念、基本方法和基本原理,为将来从事软件的研发和管理奠定基础。
每个同学选择一个小型软件项目(内容参照《计算机综合实践指导》,宋雨等编著,清华高校出版社出版),根据软件工程的生命周期,完成软件方案、需求分析、软件设计、编码实现、软件测试及软件维护等软件工程工作,并按要求编写出相应的`文档。
详细的方法可以选用传统的软件工程方法或者面对对象的方法,开发环境和工具不限。
三、进度方案略四、设计成果要求1.至少提交4个文档,包括软件方案、软件需求规格说明书、软件设计说明书、软件测试方案,要求文档格式规范、规律性强(可参考《计算机综合实践指导》中给出的要求及格式)、图表规范;2.独自实现了系统的某些功能,基本达到了要求的性能,经过了测试,基本能运行。
五、考核方式(1)提交的文档规范,工作量大,文档规律性强、正确,按《计算机综合实践指导》标准考核(附《软件工程课程设计》试验报告评分表)占60%(2)系统验收、讲解、答辩占25% (3)考勤占15%软件课程设计试验报告【第2篇】应用软件课程设计报告计算机是一门技术性、工程性和应用性很强的学科,教育部高等学校计算机科学与技术教学指导委员会的进展战略讨论报告中也指出:计算机专业的人才应当被分为科学型、工程型、应用型三类,而绝大多数应当是工程型和应用型的。
软件课程设计总结报告

编号:()字号《软件课程设计》报告班级:信科07-3班姓名:郑志安学号:08073625讲师:葛欣中国矿业大学计算机科学与技术学院2008年11 月软件课程设计任务书专业年级:电子信息科学与技术2007级学生姓名:郑志安任务下达日期:2008年11月14日课程设计日期:2008年11月14日至2009年1月4日课程设计题目:类别题目序号面向过程1,2,3,4,5,7,面向对象1,2,3,4,5,6,图形界面 1数据结构1,2,3,4软件课程设计指导教师评阅书指导教师评语(①基础理论及基本技能的掌握;②独立解决实际问题的能力;③研究内容的理论依据和技术方法;④取得的主要成果及创新点;⑤工作态度及工作量;⑥总体评价及建议成绩;⑦存在问题等):成绩:指导教师签字:年月日目录==============================第一部分基础题1面向过程第3题:使用如下所谓的简单变量“数据平移”方法来求出Fibonacci数列的第n项显示在屏幕上 (7)1.1 需求分析 (1)1.2 概要设计 (1)1.3 详细设计与编码 (1)1.4 调试分析 (2)1.5 用户使用说明 (3)1.6 设计心得 (3)第7题 (3)2.1需求分析 (3)2.2 概要设计 (3)2.3 详细设计与编码 (4)2.4 调试分析 (4)2.5 用户使用说明 (5)2.6 设计心得 (5)2面向对象第3题利用虚函数手段,按照3种不同的计算方法来求出Fibonacci数列的第n项(的具体项值)并输出。
(5)3.1需求分析 (5)3.2 概要设计 (5)3.3 详细设计与编码 (6)3.4 调试分析 (6)3.5 用户使用说明 (7)3.6 设计心得 (7)第8题编写程序实现一个简单的电话记录簿,要求记录的个人信息包括:姓名,单位,家庭电话,移动电话,并包含保存、输出、查询、修改等功能 (7)4.1需求分析 (7)4.3 详细设计与编码 (8)4.4 调试分析 (8)4.5 用户使用说明 (9)4.6 设计心得 (10)3可视化编程第1题实现计算器编程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
编号:()字号《软件课程设计》报告班级: 12级信息安全二班姓名:李江涛学号: 08123608指导老师:徐慧中国矿业大学计算机科学与技术学院2013年 6 月软件课程设计任务书专业年级:信息安全二班学生姓名:李江涛任务下达日期:2013 年 4 月日课程设计日期:2013 年 4 月5日至200年7月 3 日课程设计题目:面向过程目录一第一阶段-----------面向过程 (4)1 --------------------人民币凑数问题 (4)1.1 需求分析 (4)1.2 概要设计 (5)1.3 详细设计与编码 (5)1.5 用户使用说明 (6)1.6 设计体会 (6)2-------------------- 日期星期转换 (7)2.1.需求分析: (7)2.2 概要设计 (7)2.4.调试分析 (10)2.5.用户使用说明 (10)2.6.测试分析 (10)2.7.设计体会: (10)二第二阶段------------面向对象 (11)1--------------------学生管理系统 (11)1.1----需求分析 (11)1.2.概要设计 (11)1.3.详细设计与编码 (11)1.4 运行结果: (17)1.5调试分析 (18)1.6用户使用说明 (18)1.7测试分析: (18)1.8 实验体会 (18)2 面向对象函数模板反向输出 (19)1--------------------函数模板反向输出 (19)1.1 需求分析: (19)1.2函数模板反向输出源代码: (19)1.4 运行结果: (21)三第三部分----------可视化 (21)1--------------------计算器: (21)用你熟悉的一种可视化编程语言实现如下图所示的计算器。
该计算器需要实现基础的数学运算,如加,减,乘,除。
(21)1.1重要程序 (21)1.3运行结果图: (22)四第四部分----------数据结构 (23)1--------------------求矩阵的转置 (23)1.1 需求分析: (23)1.2 概要设计: (24)1.3 详细设计与编码: (24)1.4 运行结果: (27)1.5 用户使用: (27)1.6 设计体会: (27)2--------------------数据结构统计选票 (27)2.1 需求分析: (28)2.2 概要设计: (28)2.3 详细设计与编码: (28)2.4 运行结果: (30)2.6 用户使用: (31)2.7 设计体会: (31)五第五部分课程总结----学与做 (31)一第一阶段-----------面向过程1 --------------------人民币凑数问题1.1 需求分析程序要求:输入正整数m,它代表一个人民币钱数(元数)。
求取这样一个方案,使用最少张数的人民币纸币,凑成上述的钱数m,并输出求取结果。
注意,现在共有7种元以上面值的人民币纸币,分别为:100,50,20,10,5,2,1。
本题的主要的任务是编制一个函数,这个函数的主要的作用是用来把一个输入的人民币的钱数,使用最少张数的人民币纸币,凑成上述的钱数。
从提供的钱数来看,本题的输入值的范围是钱数m 大于等于1 元的钱数,理论上讲没有上限,但是要看数据类型,int 型,或long 型,它们有自己的取值范围。
int 型的最大值是127,long 型的最大值是2147483647。
输出的代表100,50,20,10,5,2,1的钱的张数。
它们的值都是整数。
输入形式:整数输出形式:输入钱数m=需要100元面值的纸币数是:需要 50元面值的纸币数是:需要 20元面值的纸币数是:需要 10元面值的纸币数是:需要 5元面值的纸币数是:需要 2元面值的纸币数是:需要 1元面值的纸币数是:程序功能:输入一个代表人民币钱数的正整数m,然后使用最少的人民币纸币凑成该钱数m。
测试数据及输出结果如下:1.2 概要设计由于是面向过程的设计,所以我就用最简单的算法实现:通过不断的取模、除法运算来实现,然后输出结果。
可能过程上比较繁琐,但我觉得对于这个程序还算可以。
1.3 详细设计与编码#include <iostream>#include <iomanip>#include <string>using namespace std;int main(){ int number,i;int a[8];string name[8]={"开始","100¥","50¥","20¥","10¥","5¥","2¥","1¥"};cout <<"请输入钱的数:";number=-1;for(;number<=0;){cin>>number;if(number<=0){cout<<"输入错误请重新输入:"<<endl;}}if(number>0){ a[1]=number/100;a[2]=(number%100)/50;a[3]=(number%100%50)/20;a[4]=(number%100%50%20)/10;a[5]=(number%100%50%20%10)/5;a[6]=(number%100%50%20%10%5)/2;a[7]=(number%100%50%20%10%5%2)/1;for(i=1;i<=7;i++){if(a[i]>0){cout<<name[i]<<" "<<a[i]<<" 张"<<endl;}}}main();return 0;}1.4 调试分析:在调试过程中,可以输入一个简单的三位的正整数,然后程序自动运行,最后输出结果凑起来的和就是m 钱的总数,从而解决了问题。
1.5 用户使用说明根据输出提示输入你要转换的钱数的值,经过程序的判断运算,就会得到问题的答案。
1.6 设计体会这一题的程序实现不难,结构比较明确,只要了解了运算符 / 和 % 问题就很容易解决。
但是这样的程序没有什么特别之处,我个人觉得如果能够用一个循环体编制,那么程序的代码就比较有价值,因为如果可以实现的话,效率会比较高!2-------------------- 日期星期转换2.1.需求分析:先判断输入一正整数年份,再输入一个1-7的数字表示1.1日的的日期是星期几,再输入一个合理日期。
利用函数计算输入日期是今年的第几天,然后对7求余,计算星期几编程序,使用户任意输入一个年份以及该年的1月1日是星期几,而后任意指定某一天(再输入该年的任意一个月份日期),由程序计算出这一天是星期几。
注意,2月份闰年为29天,非闰年为28天;可被4整除而不可被100整除的年份、或者可被400整除的年份均为闰年。
思考:利用元年元月元日(即1年1月1日)是星期一的已知事实,可对程序进行改造,让用户仅输入一个表示日期的年月日,则程序就应计算出那一天是星期几。
2.2 概要设计(1)在主函数中用switch语句计算天数,先定义2月是28天,然后判断用户输入的年份是平年还是闰年。
闰年则再加1。
(2)利用(sum%7+weekday-1) 判断用户输入的日期是星期几。
2.3.详细设计与编码#include <iostream>using namespace std;int runnian(int n);int jiange(int month, int day, bool b); //函数声明int weeks(int zhouji,int days);int main(){int year,month,day,week,user,days,jieguo,all;bool b;cout<<"请输入日期"<<endl;cin>>year>>month>>day;cout<<"请输入"<<year<<"1-1是周几"<<endl;cout<<"周"; //是输出周几cin>>week;b=runnian(year); //调用函数判断年份all=jiange(month,day,b); //调用函数求返回日期到1-1间隔多少天days=all%7; //调用函数求间隔天数除7后剩余天数jieguo=weeks(week,days); //调用函数判断是周几cout<<year<<"年"<<month<<"月"<<day<<"日"<<"是周:"<<jieguo<<endl; //最后输出所求结果main(); //为测试时程序不断循环return 0;}int runnian(int n) //判断是否为闰年{bool a; //定义bool变量a=false;if((n%4==0&&n%100!=0)||(n%400==0)) {a=true;}else a=false;return a; //设有返回值以为后需编程使用}int jiange(int month, int day, bool b) //判断间隔天数{int sum,m2;if(b==true) m2=29;else m2=28;switch(month){case 12:sum=day+31*6+30*4+m2;break;case 11:sum=day+31*6+30*3+m2;break;case 10:sum=day+31*5+30*3+m2;break;case 9:sum=day+31*5+30*2+m2;break;case 8:sum=day+31*4+30*2+m2;break;case 7:sum=day+31*3+30*2+m2;break;case 6:sum=day+31*3+30*1+m2;break;case 5:sum=day+31*2+30*1+m2;break;case 4:sum=day+31*2+m2;break;case 3:sum=day+31*1+m2;break;case 2:sum=day+31*1;break;case 1:sum=day;break;}return sum; //设有返回值以为后续编程使用}int weeks(int zhouji,int days) //求日期周几{int i;int a[7];days;a[1]=zhouji;for(i=1;i<=7,days>=1;i++,days--){if(days==0){cout<<a[i];}if(a[i]>7){a[i]=1;}a[i+1]=a[i]+1;if(days==1){break;}}return a[i]; //设有返回值以为后续编程使用}2.4.调试分析在调试时,最开始输出的日期有星期9的情况,才知道如果sum%7+weekday-1>7,则它的星期数应该再减去7才对2.5.用户使用说明用户打开程序后,窗口会自动的显示出提示信息:请输入year,用户输入一正确年份后按enter键,窗口会再自动的显示出提示信息:请输入某年1月1日, 用户输入1-7中数字代表星期,一样按enter键结束,之后窗口会显示:请输入month,day,用户输入正确日期并以空格隔开,最后按enter键运行程序显示结果。