如何在不传递C ++参数的情况下调用函数?

时间:2015-02-28 01:32:23

标签: c++

仅仅依靠C ++,这里是代码。

#include <iostream>
using namespace std;
int absouteValue(int number);

int main()
{
    cout << absouteValue(-6);
    return 0;
}

int absouteValue(int number)
{
    cout << "Enter a number" << endl;
    cin >> number;

    if (number < 0) 
    {
        number = number * -1;
    }
    else
    {
        number = number;
    }

    return number;
}

我希望absoluteValue函数返回从用户输入的数字的绝对值。它正在这样做,但我遇到了以下问题:

在我的主要功能中,我不想在调用absoluteValue时输入值。我希望用户这样做。但我必须将值传递给参数编号。即使我传递-6,我输入-31,程序返回的答案是31,这是正确的。有没有办法从main调用函数而不必通过我自己的号码?

感谢您的帮助!

3 个答案:

答案 0 :(得分:3)

使用标准输入(cin),您可以让用户输入一个数字并将其传递给您的方法。

int main()
{
 cout << "Enter a number" << endl;
cin >> number;
cout << absouteValue(number);
return 0;
}

int absouteValue(int number)
{
    if (number < 0) 
    {
        number = number * -1;
    }
    else
    {
        number = number;
    }
    return number;
}

答案 1 :(得分:1)

只需从方法中删除int number参数即可。并在方法中创建变量。

 #include <iostream>
using namespace std;
int absouteValue(int number);

int main()

{
    cout << absouteValue();

    return 0;
}

int absouteValue()

{

    int number;
    cout << "Enter a number" << endl;
    cin >> number;


    if (number < 0) 
    {
        number = number * -1;

    }

    else
    {
        number = number;
    }


    return number;
}

答案 2 :(得分:-1)

您可以将cin移动到main,然后将其传递给函数。

#include <iostream> 
using namespace std; 
int absouteValue(int number); 
int main() 
{ 
    int number;

    cout << "Enter a number" << endl; 
    cin >> number; 
    cout << absouteValue(number);
    return 0; 
} 

int absouteValue(int number) 
{ 
    if (number < 0) { 
        number = number * -1; 
    } else { 
        number = number; 
    } 
    return number; 
}

不同之处在于用户将主函数内的数字输入变量 number ,然后我们将变量传递给函数。

如果还有其他需要澄清的内容,请发表评论。