键盘输入一个正整数n,计算整数n的阶乘n!。

现所给程序存在若干错误,请在不改变题意的前提下,将该程序中的错误予以更正,并调试运行得到正确结果

/*********************************************

键盘上输入一个正整数n,计算整数n的阶乘n!。

*********************************************/

void fac(int k)

{

long result;

int i;

for(i=2;i>=k;i++)

{

result*=i;

}

return;

}

void main()

{

int m;

do

{

scanf("%d",m);

}

while(m<0);

s=fac(m);

printf("%d!=%ld",m,s);

}

long fac(int k)           //
{
    long result=1;        //
    int i;
    for (i=2;i<=k;i++)    //
    {
        result*=i;
    }
    return result;        //
}

void main()
{
    int m;
    long s;               //
    do 
    {
        scanf("%d",&m);   //
    }
    while (m<0);        
    s=fac(m);
    printf("%d!=%ld",m,s);
}

头文件的部分省去了,修改的地方在代码中用//标出了

温馨提示:答案为网友推荐,仅供参考
相似回答