whats wrong ? i get the answer in my compiler , here it says wrong answer
#include <iostream>
#include<stdio.h>
#include<math.h>
using namespace std;
double fact(int s)
{
if(s==0)
{
double fact=1;
return fact;
}
else
{
double y=fact(s-1);
return (y*(s));
}
}
int main()
{
double b[100];
int a[100],t;
scanf("%d",&t);
for(int i=0;i<t;i++)
{
scanf("%d",&a[i]);
b[i]=fact(a[i]);
}
for(int i=0;i<t;i++)
printf("%f \n",b[i]);
return 0;
}