题目:查找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