思路是什么,应该怎么做

求出1! 3! 5! … k!(k是小于9的奇数)。例如:若k=7,则应输出:1.00000 6.00000 120.00000 5040.00000。编写主函数,输入输出在主函数中进行。
#include<stdio.h>
double fun(int k)
{
double a[20], x = 1;
int i, j;
for (i = 1; i <= k; i += 2)
{
for (j = 1; j <= i; j++)
{
x = x * j;
a[j] = x;
}
printf("%lf", a[j]);
}
return 0;

}
int main()
{
int k;
int c;
printf("请输入:");
scanf_s("%d", &k);
c = fun(k);
printf("%d", c);
return 0;

}

啊,你这个代码不是实现了吗?思路是利用两个for循环,内层for循环计算阶乘,外层for循环负责按照奇数的阶乘进行输出