#include<stdio.h>
double power(double x,int n)
{
int k;
double m=1.0;
if(n>0)
for(k=1;k<=n;k++)
m=1.0*m*x;
else
if(n<0)
for(k=1;k<=-n;k++)
m=1.0*m/x;
else m=1.0;
return m;
}
main()
{
double a;
int b;
printf("请分别输入幂的底数,指数:");
scanf("%f,%d",&a,&b);
printf("函数值为:%f\n",power(a,b));
}
是错误的.换为:
#include<stdio.h>
float power(float x,int n)
{
int k;
float m=1.0;
if(n>0)
for(k=1;k<=n;k++)
m=1.0*m*x;
else
if(n<0)
for(k=1;k<=-n;k++)
m=1.0*m/x;
else m=1.0;
return m;
}
main()
{
float a;
int b;
printf("请分别输入幂的底数,指数:");
scanf("%f,%d",&a,&b);
printf("函数值为:%f\n",power(a,b));
}
就是正确的呢?