《软件课程设计》实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
编号:()字号
《软件课程设计》报告班级:
姓
名:一
学号:指导老师:
职
称:
:
计算机科学与技术学院
二◦◦八年月
软件课程设计任务书
专业年级:___________________
学生姓名:___________________
任务下达日期:课程设计日期:
课程设计题目:面向过程
题目七:
一.需求分析设计任务:
1•将输入的罗马数据化为10进制数。假设罗马数据中只使用如下7 个“基值”字母:M、D、C、L、X、V、I,分别用来表示
1000、500、100、50、10、5、1。如,罗马数据LXXXVII 表示10 进制的87。
2•将输入的10进制正整数转换为罗马数据。假设罗马数据中只使用“基值”字母:M、D、C、L、X、V、丨,分别用来表示
1000、500、100、50、10、5、1。
主要界面为:
如上所示:当输入大写或小写的阿拉伯字母时。 程序能计算出十进制。 程序所能达到的功能
测试的数据:当输入
mvii 罗马数字时输出十进制
1007
当输入十进制数4535时相应输出 MMMMDXXXV 。 二. 概要设计
程序中主要在开头用了一个死循环来实现功能的不断循环。通过 程序。 主程序的流程以及各程序模块之间的层次(调用)关系。
输入1或2可以选择功能 输出的形式
exit 函数退出
三.详细设计
实现概要设计中定义的数据类型和操作。以增加程序的可读性,关键算法部分画出程序流程图。
主函数的流程图如右图示:
四•调试分析
实验时遇到的问题有:
获得字符的c=getchar()时出错。由于自己第一次用到该语句时是在判断他不是’n'但是自己忘记使用他,便对他进行第二次的赋值。从而使最后总是出错。最后通过仔细检查,发现问题,通过解决。问题不再有。
五•用户使用说明
A •选择1或2后按回车键便可选择相应的功能,1是罗马转化为十进制,2是十进制转化为罗马数字。
B.如果选择A这时输入罗马字母后按回车,程序便输出相应的十进制数。
C.如果选择B这时输入十进制数后按回车,程序便输出相应的罗马数字。
D •输入0后,便可以安全退出程序。
六•设计体会
在这个实验中,自己学会了用while (1)来实现功能的不断实现。
然后分别设定两个函数完成不同的功能。
在主函数中调用这两个函数。
当用户选择0时。调用exit ()退出程序。
题目八:
一.需求分析
设计任务:
编程序,循环进行如下的处理过程:由计算机生成简单的四则运算题;用户给出答案;
计算机判断对错。直到用户回答说不再继续做了时结束程序。
提示:可让用户选择指定出加、减、乘、除哪一种运算题,以及出一位数还是两位数的运
算题;而后通过使用“ rand()%10”或“ rand()%100 ”来获得一个0到9的一位整数随机值
或得到0到99的两位整数随机值来为用户出题。还可进一步对用户所做算术题的对错次数
进行记录,结束程序时给出一个某种形式的成绩。
主要界面为:
输入1,2,3,4,5,0可以选择相应的功能
输出的形式为等式让用户做题目,如下:
如上所示:当输入答案时。
程序能计算结果。并且记录用户的答题正确数目程序所能达到的功能:
1.加法一位数与二位数的运算。如下:
2.减法一位数与二位数的运算。如下:
3乘法一位数与二位数的运算。如下:
Mai n->jiemi na->while(1)- >switch( n)
三. 详细设计
实现概要设计中定义的数据类型和操作。以增加程序的可读性,关键算法部 分
画出程序流程图。
主函数的流程图如下页图示: 四. 调试分析 实验时遇到的问题有:
问题一:由于自己不会使用随机数,所以,产生了一些错误。 例如:没有放种子,最后使得自己每次产生的随机数都一样。
最后看了老师的参考程序,知道了还得传种子放上种子后随机数就能用了。
问题二:这道题目,目的是一道检测小学生四则运算的,所以在除法部分, 自己刚开始,美注意到,出现了 1/3=0的问题。最后自己让产生的两个随机数 相乘作为被除数,然后以两个随机数中的一个为除数。这样的话就不会出现 除 完后是分数的情况了。但是问题有产生了:除数太大,超过二位。
问题三:由于问题二而产生的问题三,是:除数太大,超过二位。对也此 问题我的解决方法是对随机数筛选。知道他们产生的随机数的成绩为二位时
再 使用。此解决方法有一个缺点是:系统产生符合条件的随机数需要等待太长 的
时间。
五. 用户使用说明
A .进入程序后选择12345.0就可以进入相应的功能。
4.除法一位数与二位数的运算。如下:
二.概要设计
主程序的流程以及各程序模块之间的层次(调用)关系
Plus() nim() mult() Divi();
B.例如选择1后:又有相应的菜单可选择:
选择。123.0.就可进行相应操作:
出现2+8= ?答案:----这个地方填入自己的答案。
C
电禺软件课程设计 '作业\荷囱过程価简逋幽\皿9\面肖过禺卑注------ 41凶
曹翹胡喪L籬氤筑二位热九换一科运瓶仇退岀系城)
六.设计体会
在这个实验中,自己学会了随机数的使用。
并且,在评分上自己使用的是全局变量作为分数。以传引用的方式,将分数传入每一个函数。累计积分。
在用户使用方面,对软件的功能与实用性也进行了考虑。对出现的问题进行了解决。