zoukankan      html  css  js  c++  java
  • TJUSCSST第二次作业

    作业题目

    Below are four faulty programs. Each includes a test case that results in failure.

    Answer the following questions (in the next slide) about each program.

    public int findLast (int[] x, int y) {
    //Effects: If x==null throw
    NullPointerException
    // else return the index of the last element
    // in x that equals y.
    // If no such element exists, return -1
    for (int i=x.length-1; i > 0; i--)
    {
    if (x[i] == y)
    {
    return i;
    }
    }
    return -1;
    }
    // test: x=[2, 3, 5]; y = 2
    // Expected = 0

    public static int lastZero (int[] x) {
    //Effects: if x==null throw
    NullPointerException
    // else return the index of the LAST 0 in x.
    // Return -1 if 0 does not occur in x
    for (int i = 0; i < x.length; i++)
    {
    if (x[i] == 0)
    {
    return i;
    }
    } return -1;
    }
    // test: x=[0, 1, 0]
    // Expected = 2

    问题

    Identify the fault.

    If possible, identify a test case that does not execute the
    fault. (Reachability)
    If possible, identify a test case that executes the fault, but
    does not result in an error state.
    If possible identify a test case that results in an error, but
    not a failure.

    作业解答:

    1.第一个程序的For循环应该i大于等于0,

    第二个程序应改为for (int i=x.length-1; i >= 0; i--) ;

    2.第一个程序 x = [],  y = 2,

    第二个程序 无论怎么输入 都会execute the fault;

    3.第一个程序  x = [2,3,4],y = 4,

    第二个程序 test: x = [3];

    4 第一个程序 test: x = [2],

    第二个程序 test: x = [1,0,3]。

  • 相关阅读:
    oracle取字符串长度的函数length()和hengthb()
    文件操作
    numpy 库使用
    numpy 与 matplotlib 的应用过程
    使用numpy与matplotlib.pyplot画图
    面向对象的解读
    Python PIL
    Note of Jieba
    python 游戏 —— 汉诺塔(Hanoita)
    有进度条圆周率Π计算
  • 原文地址:https://www.cnblogs.com/moody/p/5257930.html
Copyright © 2011-2022 走看看