求一个大神帮我看一看一个C++程序怎么更改
题目使用系统函数pow(x,y)计算xy的值,注意包含头文件cmath,使用自己编写函数getPower计算xy的值,在同一个程序中针对整型和实型实现两个重载函数:int...
题目
使用系统函数pow(x,y)计算xy的值,注意包含头文件cmath, 使用自己编写函数getPower计算xy的值,在同一个程序中针对整型和实型实现两个重载函数:
int getPower(int x,int y)//整型形式,当y<0时返回0
double getPower(double x, int y)//实型
这是我写的
//lab3_3.cpp
#include<iostream>
#include<cmath>
using namespace std;
int pow(int x,int y);
double pow(double x,int y);
int getPower(int j,int k){
if(k<0)
return 0;
else
return pow(j,k);
}
double getPower(double u,int i){
if(i<0)
return 0;
else
return pow(u,i);
}
int main(){
cout<<"20151681310143刘俊涛"<<endl;
int type;
cout<<"请选择输入值的类型"<<endl;
cout<<"1,整型求X的Y次方"<<endl;
cout<<"2,实型求X的Y次方"<<endl;
cin>>type;
switch(type)
{
case 1:
cout<<"请输入X与Y"<<endl;
int a;
int s;
cin>>a>>s;
cout<<"所得值为: "<<getPower(a,s)<<endl;
break;
case 2:
cout<<"请输入X与Y"<<endl;
double d;
int f;
cin>>d>>f;
cout<<"所得值为: "<<getPower(d,f)<<endl;
break;
default:
cout<<"不是合法的输入值"<<endl;
break;
}
return 0;
}
解决方案
1> 所有输出均为最新。
1>156.obj : error LNK2019: 无法解析的外部符号 "int __cdecl pow(int,int)" (?pow@@YAHHH@Z),该符号在函数 "int __cdecl getPower(int,int)" (?getPower@@YAHHH@Z) 中被引用
1>C:\Users\E555\Downloads\1112\Debug\1123.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>
1>生成失败。
求如何更正 展开
使用系统函数pow(x,y)计算xy的值,注意包含头文件cmath, 使用自己编写函数getPower计算xy的值,在同一个程序中针对整型和实型实现两个重载函数:
int getPower(int x,int y)//整型形式,当y<0时返回0
double getPower(double x, int y)//实型
这是我写的
//lab3_3.cpp
#include<iostream>
#include<cmath>
using namespace std;
int pow(int x,int y);
double pow(double x,int y);
int getPower(int j,int k){
if(k<0)
return 0;
else
return pow(j,k);
}
double getPower(double u,int i){
if(i<0)
return 0;
else
return pow(u,i);
}
int main(){
cout<<"20151681310143刘俊涛"<<endl;
int type;
cout<<"请选择输入值的类型"<<endl;
cout<<"1,整型求X的Y次方"<<endl;
cout<<"2,实型求X的Y次方"<<endl;
cin>>type;
switch(type)
{
case 1:
cout<<"请输入X与Y"<<endl;
int a;
int s;
cin>>a>>s;
cout<<"所得值为: "<<getPower(a,s)<<endl;
break;
case 2:
cout<<"请输入X与Y"<<endl;
double d;
int f;
cin>>d>>f;
cout<<"所得值为: "<<getPower(d,f)<<endl;
break;
default:
cout<<"不是合法的输入值"<<endl;
break;
}
return 0;
}
解决方案
1> 所有输出均为最新。
1>156.obj : error LNK2019: 无法解析的外部符号 "int __cdecl pow(int,int)" (?pow@@YAHHH@Z),该符号在函数 "int __cdecl getPower(int,int)" (?getPower@@YAHHH@Z) 中被引用
1>C:\Users\E555\Downloads\1112\Debug\1123.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>
1>生成失败。
求如何更正 展开
1个回答
2015-11-14
展开全部
cmath库中的 pow 函数参数是 double, 没有 pow(int, int)这个函数!
可以直接做强制类型转化,再调用, pow(double(x),double(x))
可以直接做强制类型转化,再调用, pow(double(x),double(x))
追问
谢谢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询