面向过程软件课程设计报告.doc
《面向过程软件课程设计报告.doc》由会员分享,可在线阅读,更多相关《面向过程软件课程设计报告.doc(13页珍藏版)》请在沃文网上搜索。
1、目录一、面向过程设计题5-判断日期与星期1.1 需求分析.91.2 概要设计.101.3 详细设计与编码.111.4 调试分析.131.5 用户使用说明 .131.6 设计心得.13二、面向过程设计题8-由计算机生成简单的四则运算题;用户给出答案 2.1 需求分析132.2 概要设计.142.3 详细设计与编码.162.4 调试分析.172.5 用户使用说明 .172.6 设计心得.17三、面向对象程序设计3虚函数的使用与Fibonacci数列。2.1 需求分析132.2 概要设计.142.3 详细设计与编码.162.4 调试分析.172.5 用户使用说明 .172.6 设计心得-18四、面向
2、对象程序设计6反输入问题。2.1 需求分析132.2 概要设计.142.3 详细设计与编码.162.4 调试分析.172.5 用户使用说明 .172.6 设计心得-18五、图形界面编程1-用可视化编程语言实现计算器2.1 需求分析132.2 概要设计.142.3 详细设计与编码.162.4 调试分析.172.5 用户使用说明 .172.6 设计心得-18六、数据结构-求A矩阵的转置矩阵B2.1 需求分析132.2 概要设计.142.3 详细设计与编码.162.4 调试分析.172.5 用户使用说明 .172.6 设计心得-18七、数据结构-删除结点p 的前趋结点2.1 需求分析132.2 概要
3、设计.142.3 详细设计与编码.162.4 调试分析.172.5 用户使用说明 .172.6 设计心得-18(1)需求分析以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?明确规定:输入的形式和输出、值的范围输出的形式程序所能达到的功能测试的数据:包括正确的输入和错误的输入及其相应的输出结果(2)概要设计说明程序中用到的所有抽象数据类型的定义,主程序的流程以及各程序模块之间的层次(调用)关系。(3)详细设计与编码实现概要设计中定义的数据类型和操作。要求源程序中加有适当注释,以增加程序的可读性,关键算法部分画出程序流程图。(4)调试分析内容包括: 调试过程中遇到的问题并且是如何解决的以及
4、对设计实现的回顾讨论和分析; 经验和体会等。(5)用户使用说明说明用户如何使用你编写的程序,详细列出每一步的操作步骤。(6)测试分析设计测试用例,分析测试结果。要求测试用例应该完整和严谨,且其测试设计应分散于需求分析、软件设计等各个过程。(7)设计体会主要介绍课程设计过程的收获、遇到问题及解决问题过程的思考、程序调试能力的思考。(8) 源程序及设计报告电子版上传服务器(统一封面、目录、格式)。一、面向过程设计题5.判断日期与星期(1)需求分析1.用户任意输入一个年份以及该年的1月1日是星期几,而后任意指定某一天(再输入该年的任意一个月份日期),由程序计算出这一天是星期几。主要思路是计算用户输入
5、的确定的年份、星期与所要计算的日期之间的相隔天数,再整除7。因此定义一个整型变量sum用于盛放相隔的天数。由用户输入一个年份和该年一月一日是星期几,首先计算出输入的确定的年份与所要计算年份之间间隔多少年,然后sum=sum*365,在计算出这两个年份之间的年份有多少个闰年,用一个循环若是闰年执行sum=sum+1;接下来判断要计算的年份是否为闰年,不是则跳出,是则继续判断要计算的月份是否大二,是则执行sum=sum+1,不是则跳出。最后用所得的sum加上输入的一月一日星期数在除七取余,再判断余数,余数为零执行余数加七,输出余数即可输入的数均为int型,当用户任意指定一个年份并输入这一年的一月一
6、日是星期几,则可以计算大于该年份的任意年份的某一天的星期。【输入数据】年2000、星期6;年2011、月10、日20【输出数据】星期4(2)概要设计int s=0,31,28,31,30,31,30,31,30,31,30,31,30;盛放各个月份的天数。使用一个for循环计算两个年份之间的闰年数。(3)详细设计与编码for(int i=0;i=n;i+)x=x+si;if(f!=0)for(int j=0;j2)c=c+1;/判断当年是否为闰年,并且判断所计算的月份是否大于二月。源程序已上传(4)调试分析2.错误的数据(不能计算比输入的年份小的年份)由于本程序涉及到年份所以要考虑的要素很多,
7、比若说年份是否为闰年,要计算的月份是否大于二月,取余的数是否为零等,所以在设计时要综合考虑多种因素。(5)用户使用说明用户必须知道每一年的一月一号是星期几,只有这样才能算出要计算的具体某一天是星期几。(6)设计心得本程序要考虑的因素很多所以要耐心的一遍遍调试以便找到没考虑到因素。比如说,在考虑本年为闰年时是否在间隔的天数上加一的问题,你必须先判断计算的月份是否大于2,如大于则加以一,否则不加。二、面向过程设计题8-由计算机生成简单的四则运算题;用户给出答案 (1)需求分析计算机生成简单的四则运算题;用户给出答案;计算机判断对错。直到用户回答说不再继续做了时结束程序。根据题目要求,规定如下:【输
8、入数据】(位数10,100任选一个)10(1、2、3、4、5运算任选一个)1,输入答案【输出数据】正确或错误,并询问是否继续,重复第一步最后输出正确率。1,2,3,4,5分别代表加、减、乘、除、和退出四个选项。供用户选择。(2)概要设计1、int result,num,answer;/计算正确率,计算位数 char op; /设定的运算 int wrong=0,correct=0;/错误个数,正确个数2、定义双精度变量a,b,answer为用户输入3、随机输出四则用算4、主程序流程Step1、进入while循环Step2、让用户选择运算的位数,计算机随机生成数字Step3、让用户选择运算op,
9、并输出答案Step4、直到用户选着退出时输出正确率(3)详细设计与编码#include#include #includeusing namespace std;while(op!=q) cout请选择要计算的数值位数 10或100num; cout请选择计算符号 1+ 2- 3* 4/或者退出按5op; srand(int)time(0);/保证每次的输出值不同 double a=rand()%num;double b=rand()%num;switch(op)源程序已上传(4)调试分析如下调试情况取得了题目所要求的效果,说明了程序的正确性(5)用户使用说明Step1.打开程序Step2、输入
10、运算的位数10或100Step3、输入要进行的运算1、2、3、4、5。(6)设计体会通过本次试验加强了我对while循环和switch语句使用的理解,开始时并不会使用生成随机数,通过在网上的查找。终于让我学会了如何去生成一组随机数,所以此次实验收获很多。三、面向对象程序设计3虚函数的使用与Fibonacci数列。(1)需求分析使用虚函数,计算出fibonacci数列的任一项的值要求使用三种方法。要求通过在基类baseCla及其派生类fib1Cla、fib2Cla和fib3Cla完成操作。输入int型,输出double型,并且精确到小数点后六位。(2)概要设计class baseCla /自定义
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 过程 软件 课程设计 报告