????????我们知道C++函数中只允许有一个返回值,那我们如何让函数有多个返回值呢?请看这样的一个例子:对于函数输入一个数组,获得该数组中最大值与最小值。
1、将函数输入参数与返回值一起作为实参
void max_min(int arr[],int length,int &min,int &max)
{
min=arr[0]; //初始化
max=arr[0];
for (int i = 0; i < length; i++)
{
min=min<arr[i]? min:arr[i];
max=max>arr[i]? max:arr[i];
}
}
int main()
{
int arr[5]={1,5,8,3,9};
int min,max;
max_min(arr,5,min,max);
cout<<"数组arr最大值为: "<<max<<endl;
cout<<"数组arr最小值为: "<<min<<endl;
system("pause");
return 0;
}
2、使用全局变量
int min_arr,max_arr;//定义全局变量(为了避免与内部函数名重名,所以改正min_arr,max_arr)
void max_min(int arr[],int length)
{
min_arr=arr[0]; //初始化
max_arr=arr[0];
for (int i = 0; i < length; i++)
{
min_arr=min_arr<arr[i]? min_arr:arr[i];
max_arr=max_arr>arr[i]? max_arr:arr[i];
}
}
int main()
{
int arr[5]={1,5,8,3,9};
max_min(arr,5);
cout<<"数组arr最大值为: "<<max_arr<<endl;
cout<<"数组arr最小值为: "<<min_arr<<endl;
system("pause");
return 0;
}
|