区分error,default,failure

error:一个可以直接观察到的、可以测量到的不正确值或者条件。是程序运行过程发生的不正确的中间状态
fault:不正确的步骤、过程、数据定义(软件编写错误),比如:π定义5或者6等等。
failure:错误的结果(软件崩溃、软件失效)。

三者之间没有必然的联系,有fault不一定会出现error,有error也不一定会出现failure,出现那种错误与具体的例子有很大关系。

以一个简单的含有错误的程序为例:

int findAndMean(int []a,int b)
//该函数用于计算指定数组的平均值并查找数组当中是否含有指定数字,有的时候值计算到
指定的数字就停止计算
{
int sum=0,mean;
int  i=1;
//这里应当是i=0,就是没有比较第一个字符是否满足;同时没有将第一个值计算入内
for(;i<a.length;i++)  
{
sum+=a[i];
if(a[i]==b)
{break;}
}
return sum/i;
}

测试用例:
t1:[0,1,2] b=4中间状态:mean=3,正确;结果sum/i=1,正确
t2:[3,2,4] b=3中间状态:mean=9,错误,正确的应当为三;结果sum/i=3,正确(本来为3/1)
t3:[3,1,2]b=3中间状态:mean=6,错误,正确的应当为3;结果sum/i=2,错误(本来为3/1=3)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值