zoukankan      html  css  js  c++  java
  • 课堂练习--单元测试

    1.程序代码

    //郭婷 20132916 信1305 2015/3/27
    #include<iostream>
    using namespace std;
    
    int Largest(int list[], int length)
    {
        int i, max;
        max = list[0];
        for (i = 0; i < length ; i++)
        {
            if (list[i]>max)
            {
                max = list[i];
            }
        }
        return max;
    }
    
    void main()
    {
        int list[5],length;
        int i;
        cin >> length;
        for (i = 0; i < length; i++)
        {
            cin >> list[i];
        }                
        cout << Largest(list, length);
    }                                    

    2.错误查找

    max变量要初始化,否则计算机会根据之前的存储情况赋值,或许导致结果错误。

    i<length,如果是i<(length-1),那么最后一个数将不能被查到。

    3.测试结果

    全是正数

    全是负数

    有正有负

    最大值重复

    如果数组长度为0

    4.出现的问题

    由上面的测试结果看,当数组长度为0时,结果会出现问题。

    5.解决方案 

    如果用户输入的数组长度为0,就返回0。

    6.修改后的源代码

    //郭婷 20132916 信1305 2015/3/27
    #include<iostream>
    using namespace std;
    
    int Largest(int list[], int length)
    {
        int i, max;
        max = list[0];
        if (length == 0 || list == NULL)
        {
            return 0;
        }
        for (i = 0; i < length ; i++)
        {
            if (list[i]>max)
            {
                max = list[i];
            }
        }
        return max;
    }
    
    void main()
    {
        int list[5],length;
        int i;
        cin >> length;
        for (i = 0; i < length; i++)
        {
            cin >> list[i];
        }                
        cout << Largest(list, length);
    }                                    

    6.总结

    在之前如果写这个程序,我一定不会考虑到如果数组的长度为零的情况,在学完这节课,测试了这个程序后,了解了程序在编写过程中要考虑各种情况,并且要针对出现的问题做出相应的解决方案。

  • 相关阅读:
    MSSQL如何将查询结果拼接成字符串
    SQL删除指定条件的重复数据,只保留一条
    清除日志
    jsp使用
    Eclipse使用
    SSM框架开发遇到的问题
    SpringMvc学习
    大中华~~汉字
    Word技巧设置
    AWS-资源访问慢分析
  • 原文地址:https://www.cnblogs.com/gting/p/4374932.html
Copyright © 2011-2022 走看看