编写程序,输入x和n,求x的n次方。

2025-12-17 06:10:40
推荐回答(2个)
回答1:

#include
using namespace std;

long fun(int iNumber,int iPower);

int main()
{
int iNumber, iPower;
long iAnswer;
cout << "输入一个数";
cin >> iNumber;
cout <<"输入次方数:";
cin >> iPower;
iAnswer = fun(iNumber, iPower);
if ( iPower >= 0 )
cout << iNumber << " to the " << iPower << "th power is " << iAnswer << endl;
else
cout << iNumber << " to the " << iPower << "th power is 1/" << iAnswer << endl;
return 0;
}

long fun(int iNumber,int iPower)
{
long iAnswer = 1;

if ( iNumber==0 || iNumber==1 || iPower==1 )
return iNumber;
else if ( iPower == 0 )
return 1;
else if ( iPower < 0 )
iPower = -iPower;
for ( int i=1; i<=iPower; i++)
iAnswer *= iNumber;
return iAnswer;
}

回答2:

#include
using namespace std;

long fun(int iNumber,int iPower);

int main()
{
int iNumber, iPower;
long iAnswer;
cout << "输入一个数";
cin >> iNumber;
cout <<"输入次方数:";
cin >> iPower;
iAnswer = fun(iNumber, iPower);
if ( iPower >= 0 )
cout << iNumber << " to the " << iPower << "th power is " << iAnswer << endl;
else
cout << iNumber << " to the " << iPower << "th power is 1/" << iAnswer << endl;
return 0;
}

long fun(int iNumber,int iPower)
{
long iAnswer = 1;

if ( iNumber==0 || iNumber==1 || iPower==1 )
return iNumber;
else if ( iPower == 0 )
return 1;
else if ( iPower < 0 )
iPower = -iPower;
for ( int i=1; i<=iPower; i++)
iAnswer *= iNumber;
return iAnswer;