回覆列表
  • 1 # 使用者1481963504008

    main()

    {inti;

    intn;

    printf("InputforanumberforN");

    scanf("%d",&N);

    for(i=1;i<=N;i++)

    {n=n*i;

    }

    printf("%d!=",n);

    }

    -------------------------------------

    或者這樣改一下

    for(i=n;i>=1;i--)

    {

    n=n*i

    }

    ------------------------------------

    #include<stdio.h>

    voidmain()

    {

    doublefac(intn);

    intn;

    doubley;

    scanf("%d",&n);

    y=fac(n);

    printf("%d!=%f",n,y);

    }

    doublefac(intn)

    {

    doublef;

    if(n<0)printf("n<0,dataerror!");/*判斷資料的合法性*/

    else

    if(n==0||n==1)f=1;/*0和1的階乘為1*/

    else

    f=fac(n-1)*n;/*函式的遞迴呼叫*/

    return(f);

    }

    你只要10以內的階乘和把n改成10就可以了

  • 中秋節和大豐收的關聯?
  • 蜜蜂子脾發臭,該怎麼治療?