当前位置: 首页 > news >正文

单元测试

测试表格如下:

测试模块

测试输入

预期结果

运行结果

计算终值

(本金,年限,利率,次数)

终值

 

1

(100,10,3,1)

134.39

2

(0,10,3,1)

弹出提示:请输入>0的本金

 √

3

(100,0,3,1)

弹出提示:请输入>0的的年限

 √

计算年限

(次数,利率,本金,终值)

 

  
 1 (10, 1 ,5000,10000) 弹出提示:请输入0到1之间的利率 √
 2 (10, 0.02 ,5000  ,10000) 34 √

其他数据的测试方法和以上两种差不多,都是利用公式进行计算从而得出结果。

测试的主要代码有如下:

利用while语句,判断,是否符合输入数据的标准,不符合,则重新输入。

void benjin()//计算本金
{
     int N,m;
     double i,F,P;
     printf("复利终值:");
     scanf("%lf",&F);
     while(F<=0  ||  F>999999999)
     {
         printf("输入错误,请重新输入大于0的本金:\n");
         scanf("%lf",&F);
     }
     printf("年利率:");
     scanf("%lf",&i);
     while(i<=0 || i>=1)
     {
         printf("输入错误,请重新输入0~1之间的利率:\n");
         scanf("%lf",&i);
     }
     printf("存入年限:");
     scanf("%d",&N);
     while(N<=0 || N>100)
     {
         printf("输入错误,请重新输入0~100之间的年限:\n");
         scanf("%d",&N);
     }
     printf("年复利次数:");
     scanf("%d",&m);
     while(m<=0)
     {
         printf("输入错误,请重新输入大于0的复利次数:\n");
         scanf("%d",&m);
     }
     P=F/pow((1+i/m),N*m);
     printf("年复利终值为%.4lf需要本金为:%.4lf\n",F,P);
}

其他测试方法大体类似如此。详情可去http://www.cnblogs.com/joker317/p/5338704.html查看。

 

总结:

   这次我用的是C语言编写的,下次我会将它改成java,毕竟以后的学习上还是与java的挂钩比较大。这次的测试这要还是用while语句控制输入范围,比较简单,用java怎么去判断还需考虑,有待改进。

 

转载于:https://www.cnblogs.com/joker317/p/5336405.html

相关文章:

  • 我理解的--java门面模式
  • yii create url (一)
  • Android MediaPlayer Error/Info Code
  • Nginx服务器防止负载过高模块sysguard
  • 矩阵的存储及快速转置
  • [HeadFrist-HTMLCSS学习笔记][第一章Web语言:开始了解HTML]
  • USB2.0学习笔记连载(九):USB设备驱动的安装
  • PHP语言 -- 面向对象
  • spring 中IOC和aop的理解
  • keepalived which time exec track script , notify script when vrrp transition
  • 代理模式
  • java aopalliance-1.0.jar这个包是做什么用的?
  • Android客户端采用Http 协议Post方式请求与服务端进行数据交互(转)
  • Distributed3:SQL Server 创建分布式数据库
  • C#-属性
  • 08.Android之View事件问题
  • 0基础学习移动端适配
  • Facebook AccountKit 接入的坑点
  • gf框架之分页模块(五) - 自定义分页
  • javascript 哈希表
  • JS字符串转数字方法总结
  • Redis学习笔记 - pipline(流水线、管道)
  • swift基础之_对象 实例方法 对象方法。
  • Theano - 导数
  • Yeoman_Bower_Grunt
  • 半理解系列--Promise的进化史
  • 测试开发系类之接口自动化测试
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 分享几个不错的工具
  • 每天10道Java面试题,跟我走,offer有!
  • 深入 Nginx 之配置篇
  • 使用Swoole加速Laravel(正式环境中)
  • 微信公众号开发小记——5.python微信红包
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (5)STL算法之复制
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (二)linux使用docker容器运行mysql
  • (剑指Offer)面试题34:丑数
  • (四)linux文件内容查看
  • (四)模仿学习-完成后台管理页面查询
  • (转)h264中avc和flv数据的解析
  • ******之网络***——物理***
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .NET Core 版本不支持的问题
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • [ Linux ] git工具的基本使用(仓库的构建,提交)
  • [8481302]博弈论 斯坦福game theory stanford week 1
  • [android] 练习PopupWindow实现对话框
  • [BZOJ1089][SCOI2003]严格n元树(递推+高精度)
  • [BZOJ2281][SDOI2011]黑白棋(K-Nim博弈)
  • [Java][Android][Process] 暴力的服务能够解决一切,暴力的方式运行命令行语句
  • [Loadrunner参数化]一个文件输两列参数的取值
  • [mit6.s081] 笔记 Lab2:system calls