请高人指点一下错在了哪里?该如何处理

请高人指点一下错在了哪里?# includestdio.h# includemath.hdouble fact(int n)int main(void){int x

请高人指点一下错在了哪里?
# include<stdio.h>
# include<math.h>
double fact(int n);
int main(void)
{
int x,i;
scanf("%d",&x);
double s;
i=1;
s=0;
while(pow(x,i)/fact(i)>0.00001){
s=s+pow(x,i)/fact(i);
i++;
}
return 0;
}
double fact(int n);
{
int i;
double product;
product=1;
for(i=1;i<=n;i++){
product=product*i;
}
return product;}
/*以下是报错信息:Compiling...
Cpp3.cpp
E:\计算机\c语言\Cpp3.cpp(18) : error C2447: missing function header (old-style formal list?)
执行 cl.exe 时出错.*/

[解决办法]
double fact(int n);这里有一个分号啊,看一下编译信息和行号。。。。另外就是以后贴代码用代码格式,大家看起来都方便
[解决办法]
!!上来转转
[解决办法]

C/C++ code
#include<stdio.h># include<math.h>double fact(int n);int main(void){    int x,i;    scanf("%d",&x);    double s;    i=1;    s=0;    while(pow(x,i)/fact(i)>0.00001)    {        s=s+pow(x,i)/fact(i);        i++;    }return 0;}double fact(int n)//这里删除分号就行了{    int i;    double product;    product=1;    for(i=1;i<=n;i++)    {        product=product*i;    }    return product;}
[解决办法]
函数定义时,不应在函数头后加“;”,还有一个不建议使用的ASII C++中头文件后不建议加“.h”
[解决办法]
楼上正解
[解决办法]
囧。。。。。。。。。。。
[解决办法]
???
[解决办法]
探讨
C/C++ code

#include<stdio.h>
# include<math.h>
double fact(int n);
int main(void)
{
int x,i;
scanf("%d",&amp;x);
double s;
i=1;
s=0;
while(pow(x,i)/fact(i)>0.00001……

[解决办法]
double fact(int n);
多了个分号,定义时候不用加分号