對Largest函式的測試

weixin_34104341發表於2020-04-07

題目:查詢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;

}

解決方案:

之後對程式進行觀察修改和測試,首先max無初始化值,所以要對max進行初始化。

然後對輸入的數進行判斷,對於特殊的情況要加以規定,例如陣列的個數為零或陣列為空的情況,若遇到這種情況就要輸出“輸入錯誤”

下面是改完的程式:

#include<iostream>
using namespace std;
 
int largest(int list[],int length)
{
     int i,max=list[length-1];
     for(i=0;i<(length-1);i++)
     {
       if(list[i]>max)
        {
           max=list[i];
        }
     }
   return max;
}

int  main()
{
   int list[10],length,i;
   cout<<"輸入陣列的個數";
   cin>>length;
   if ( length == 0)
   {
      cout<<"輸入錯誤";
      cout<<endl;
      return 0;
   }
 
   for(i=0;i<length;i++)
   {
      cin>>list[i];
   }
   cout<<largest(list,length);
   return 0;
 
}

最後要對輸入的陣列進行題目的測試:

1.   1 2 3 4 5  ->5

2.    6 4 3 2 1 ->6

3.    1 12 3 0 9 ->12

4.     0 -2 -6 9  7 ->9

5.    1 2 2 2 6 ->6

6.     6 3 10 10 9 ->10

轉載於:https://www.cnblogs.com/double1/p/4374348.html

相關文章