计算机问题求解课程设计实验报告,《软件课程设计》实验报告.doc

文档介绍:

编号:()字号《软件课程设计》报告班级:姓名:学号:指导老师:职称:计算机科学与技术学院二〇〇八年月软件课程设计任务书专业年级:学生姓名:任务下达日期:课程设计日期:课程设计题目:面向过程类别题目序号面向过程7:罗马数字与十进制的相互转化程序8:加减乘除联系面向对象3.i数列8.设计电话本可以记录电话信息在文件中图形界面数据结构题目七:需求分析设计任务: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、I,分别用来表示1000、500、100、50、10、5、1。主要界面为:输入1或2可以选择功能。输出的形式如上所示:当输入大写或小写的阿拉伯字母时。程序能计算出十进制。程序所能达到的功能测试的数据:当输入mvii罗马数字时输出十进制1007当输入十进制数4535时相应输出 MMMMDXXXV。二.概要设计程序中主要在开头用了一个死循环来实现功能的不断循环。通过exit函数退出程序。主程序的流程以及各程序模块之间的层次(调用)关系。Break;Break;Exit()Default;Convert2()Convert1()Main->jiemina->while(1)->switch(n)三.详细设计实现概要设计中定义的数据类型和操作。以增加程序的可读性,关键算法部分画出程序流程图。主函数的流程图如右图示:While(1)Cin>>nConvert1()Break;Case1:Case2:;Convert2();Break;Default;Exit(1);Main()Return0;Switch()四.调试分析实验时遇到的问题有:获得字符的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.乘法一位数与二位数的运算。如下:4.除法一位数与二位数的运算。如下:二.概要设计主程序的流程以及各程序模块之间的层次(调用)关系。Divi();Exit()mult()Break;Plus()nim()Break;Main->jiemina->while(1)->switch(n)Break;三.详细设计实现概要设计中定义的数据类型和操作。以增加程序的可读性,关键算法部分画出程序流程图。主函数的流程图如下页图示:四.调试分析实验时遇到的问题有:问题一:由于自己不会使用随机数,所以,产生了一些错误。 例如:没有放种子,最后使得自己每次产生的随机数都一样。 最后看了老师的参考程序,知道了还得传种子放上种子后随机数就能用了。 问题二:这道题目,目的是一道检测小学生四则运算的,所以在除法部分,自己刚开始,美注意到,出现了1/3=0的问题。最后自己让产生的两个随机数相乘作为被除数,然后以两个随机数中的一个为除数。这样的话就不会出现除完后是分数的情况了。但是问题有产生了:除数太大,超过二位。问题三:由于问题二而产生的问题三,是:除数太大,超过二位。对也此问题我的解决方法是对随机数筛选。知道他们产生的随机数的成绩为

内容来自淘豆网www.taodocs.com转载请标明出处.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值