i need to build a basic program that print the num pi....

output: 3.0000000000

what is wrong??

Code:

# include <stdio.h>
double long exp1(double base, unsigned long exp)
{
double sum=1;
unsigned long i;
for (i=0; i<exp; i++)
{
sum=sum*base;
}
return sum;
}
double long pi(int k)
{
double long sum=0;
if (k==0)
{
sum=(47/15);
return sum;
}
sum=((1/(exp1(16,k)))*((4/((8*k)+1))-(2/((8*k)+4))-(1/((8*k)+5))-(1/((8*k)+6)))) + pi(k-1);
return sum;
}
int main()
{
int k=0;
printf("please enter how many k of pi do you like\n");
scanf_s("%d",&k);
if (k<0)
{
while (k<0)
{
printf("please enter positive number\n");
scanf_s("%d",&k);
}
}
printf("the number is %.10lf\n",pi(k));
return 0;
}