gpt4 book ai didi

c - 使用递归但按某种顺序获取值的阶乘

转载 作者:行者123 更新时间:2023-11-30 20:36:31 25 4
gpt4 key购买 nike

以下代码的输出为 5 以及如何修改代码以通过 return 获取实际输出?

#include <stdio.h>
int fact(int ,int ,int);
int main(void)
{
int a=5;
int b=a;
int i=1;
printf("%d",fact(a,i,b));
}
int fact(int a,int i,int b)
{
if(i<b)
{
a=a*i;
i++;
fact(a,i,b);
}
return a;
}

最佳答案

您的实现签名不允许返回结果。您可以将您的实现更改为以下内容。

int fact(int a) 
{
int Result;
if (0 == a)
Result = 1;
else
Result = a * fact(a-1);
return Result;
}

关于c - 使用递归但按某种顺序获取值的阶乘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35911335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com