师兄师姐们能不能帮我看看哪错了

#include<stdio.h>
double fact(int N);
main(){
int N,sum,m,i;
double result;
scanf("%d",&i);
for(N=1;N<=i;i<=12;N++)
{ result=fact(N);
printf("%d!=%.0f\n",N,result);
}

double fact(int N)
{
double product;
product=1;for(N=1;N<=12;N++)
{product=product*N;}

m=product*N;
sum=0;sum=sum+m;
printf("%d",sum);

}

main的for里面判断条件用&&或||连接而不是分号,最后少了花括号。函数里变量没声明就用了

修改如下,供参考:

#include<stdio.h>
double fact(int N);
int main()
{
    int N, sum, m, i;
    double result;
    scanf("%d", &i);
    for (N = 1; N <= i && i <= 12; N++)
    {
        result = fact(N);
        printf("%d!=%.0f\n", N, result);
    }
    return 0;
}

double fact(int N)
{
    int i;
    double product;
    product = 1; 
    for (i = 1; i <= N; i++)
    {
        product = product * i;
    }
    //int m = product * N;
    //int sum = 0; 
    //sum = sum + m;
    //printf("%d", sum);
    return product;
}