请指点求下面求幂的函数当n<=0时错在哪里
程序代码:
#include<stdio.h> int main(void) { double a; int n,i; double sum; printf("请输入底数\n"); scanf("%lf",&a); printf("请输入指数\n"); scanf("%d",&n); if(n>0) { for(i=0, sum=a; i<n; i++) sum=sum*a; } else if(n=0) sum=1; else if(n<0) { for(i=0, sum=a; -i<-n; i++) sum=1/(sum*a); } printf("%lf",sum); return 0; }
请指导我写的函数错在哪里,感激不尽。