第四周课堂作业——单元测试

简单的例子:   查找list[]中的最大值:int Largest(int list[], int length);

首份实现代码如下: int Largest(int list[], int length)

{

  int i,max;

  for(i = 0; i < (length – 1); i ++ )

    {

        if(list[i] > max)

          {

             max=list[i];

          }

     }

     return max;

}

1》首先该代码的max没有初始化,然后调用该函数出现下面情况

2》初始化为0后,出现如下情况:

3》该情况是由于循环里的length-1,将其改为length

4》但是当输入全是负数时

5》所以不能将其初始化为0,应该初始化为list[0],结果为

6》但是没有考虑到长度为0的情况,出现如下问题

7》当长度为0时,设置函数,令其显示输入错误

8》源代码为:

#include<iostream>

using namespace std;

 

int Largest(int list[],int length){

   int i;

   int max=list[0];

   if(list==NULL||length==0)

   {

      return -99999;

   }

   else

   {

      

       for(i=0;i<(length);i++)

      {

          if(list[i]>max)

          {

            max=list[i];

          }

      }

   }

   return max;

}

 

void main(){

   int list[100];

   int length;

    cout<<"请输入数组长度"<<endl;

   cin>>length;

  

   cout<<"请输入"<<length<<"个数"<<endl;

   for(int i=0;i<length;i++)

   {

      cin>>list[i];

   }

  

   int c=Largest(list,5);

   if(c==-99999)

   {

      cout<<"输入有误!"<<endl;

   }

   else

   {

      cout<<"最大值为"<<c<<endl;

   }

}

 

8》几组测试结果:

 

原文地址:https://www.cnblogs.com/sz20142898/p/5303390.html