#include <iostream>
using namespace std;
int myNum1 = 0;
int myNum2 = 0;
int main() {
int smaller,bigger,a,b;
cout << " Enter two numbers :" << endl;
cin >> a,b;
smallerNumber(smaller,b);
cout << smaller << bigger << endl;
return 0;
}
int smallerNumber(int a,int b,int IsSmaller,int IsBigger){
if (a > b) {
a = IsBigger;
b = IsSmaller;
}
else if (a < b) {
a = IsSmaller;
b = IsBigger;
}
else if (a == b) {
a = IsSmaller;
b = IsBigger;
}
return a;
return b;
}
问题是如何确定函数中最小数字的结果,以及如何返回它?
•
问答
mfpaaa 回答:问题是如何确定函数中最小数字的结果,以及如何返回它?
您需要确定是要修改函数的参数还是返回单个值。
修改参数
通过引用传递 return 变量:
void smallerNumber(int& a,int& b,int IsSmaller,int IsBigger)
{
if (a > b) {
a = IsBigger;
b = IsSmaller;
}
else if (a < b) {
a = IsSmaller;
b = IsBigger;
}
else if (a == b) {
a = IsSmaller;
b = IsBigger;
}
}
通过引用传递使您的函数可以修改参数。
返回多个值
要返回多个值,您将需要一个数据结构。
这是一个使用结构的示例。
struct BigSmall
{
int bigger;
int smaller;
};
BigSmall smallerNumber(int a,int b)
{
BigSmall result;
if (a > b) {
result.bigger = a;
result.smaller = b;
}
else if (a < b) {
result.bigger = b;
result.smaller = a;
}
else if (a == b) {
result.bigger = a;
result.smaller = a;
}
return result;
}