开发者社区> 问答> 正文

将递归算法改变为非递归算法,求n!

将递归算法改变为非递归算法,求n!

展开
收起
知与谁同 2018-07-21 15:01:44 1567 0
1 条回答
写回答
取消 提交回答
  • //递归
    #include "stdio.h"
    int qjc(int n)
    {
    if(n>1)
    return qjc(n-1)*n;
    else
    return n;
    }
    int main()
    {
    int n,i,jc;
    printf("输入一个正整数:");
    scanf("%d",&n);
    printf("%d",qjc(n));
    }
    //非递归
    #include "stdio.h"
    int qjc(int n)
    {
    int s=1;
    for(int i=1;i<=n;i++)
    s*=i;
    return s;
    }
    int main()
    {
    int n,i,jc;
    printf("输入一个正整数:");
    scanf("%d",&n);
    printf("%d",qjc(n));
    }
    2019-07-17 22:55:06
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载