问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言程序题: 1、编写一个求n!的函数fact(n),要求fact函数分别用递归和非递归两种方法实现

发布网友 发布时间:2022-06-01 05:09

我来回答

2个回答

热心网友 时间:2023-11-24 03:01

1。

#include "stdio.h"

//#define RECURSION 1

#ifdef RECURSION
long fact(int n)
{
if(n<1) return 1;
return n*fact(n-1);
}

#else
long fact(int n)
{
long t=1;
for(int i=2;i<=n;i++)
t*=i;
return t;
}

#endif

main()
{
long s=0;
for(int i=1;i<=10;i++)
s+=fact(i);
printf("%ld\n",s);
}

2。

#include "stdio.h"

bool prime(int n)
{
if(n==1) return false;
for(int i=2;i<=n/2;i++)
if(n%i==0) return false;
return true;
}

main()
{
int cnt=0;
int i=3;
while(cnt<10)
{
if(prime(i) && prime(i+2))
{
printf("(%d,%d)\n",i,i+2);
cnt++;
}
i+=2;
}
}

3。

非递归
#include "stdio.h"

void main()
{
int s=0,total=0;
int day=0;
while(s<100)
{
if(day%2==0)
{
s+=3;
total+=3;
}
else
{
s-=2;
total+=2;
}
day++;
}
if(s>100) total-=(s-100);
printf("total %d days,climb %d metres\n",day,total);
}

递归
#include "stdio.h"

struct node{
int day;
int total;
};

struct node f(int dest,int tag)
{
if(tag==0)
{
if(dest<=3)
{
struct node temp;
temp.day=1;
temp.total=dest;
return temp;
}
else
{
struct node temp,temp1;
temp1=f(dest-3,1);
temp.day=temp1.day+1;
temp.total=temp1.total+3;
return temp;
}
}
else
{
struct node temp,temp1;
temp1=f(dest+2,0);
temp.day=temp1.day+1;
temp.total=temp1.total+2;
return temp;
}
}

void main()
{
struct node a=f(100,0);
printf("total %d days,climb %d metres\n",a.day,a.total);
}

热心网友 时间:2023-11-24 03:02

汗,教科书上都有,自己看去
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 十二生肖里哪一种生肖会吃红豆 c语言,利用求阶乘函数fact(),编程计算并输出1!+ 2!+…… +n!的值 C语言中一直用到fact函数,一直搞不清楚fact是什么东西,是自己定义出 ... 两颗红豆 十二生肖里象什么 fact 在C语言中是什么意思 详细点! 王维红豆指的是什么生肖 红豆猜一生肖 - 百度 红豆春天生南国打生肖 深圳华强职校幼师的分数线是?? 华强职校 选专业 我是2015深圳中考的考生,因为志愿报太低,就放弃第一批,选择第二批 我选了华强职校。 请问有人知道深州市的华强职校吗?里面有什么专业?一学期用费为多少?是住宿的么?校园环境好么? 泉州华职学校学习什么专业比较好 广州华商职业学院怎么样 广州华商职业学院的主专业什么。 封神榜里有多少神仙? 封神榜英雄榜有哪些神仙 160CM高48公斤重算胖吗 关于长春2012年报考ICLTA国际汉语教师资格证,一年有几次考试啊? 一年中IPA国际注册汉语教师资格证考几次试?谁知道,帮帮我!!! 红豆春天生南国 丑妻一生一世随 是什么生肖? 在c语言中fact(1)什么意思 红豆春天生南国,丑妻一生一世随,西行路上多坎坷,九九八十一又回头 指的是什么生肖? c语言s+=\fact(i);怎么理解? 喝三碗红豆,肚里相思,这句话指的是哪个生肖 c语言中fact*=i什么意思 红豆春天生南国,丑妻一生一世随,是指什么生肖 C语言编写main程序调用函数fact求解从m个元素选n个元素的组合数的个数计算公式是: 必须得是绿豆汤指什么生肖 在c语言中 fact 有什么作用 三斤红豆炖猪尾 居心叵测马在前指什么生肖 错在哪里1!+2!+3!+ +n! c语言 调用fact函数求阶乘之和 我想考驾驶证? C语言里,我用了这样一个东西 int t=fact*fact(i) 第一个fact是变量, 谁帮我看看这个C语言程序哪里有错误?题目:用递归调用编写计算阶乘n!的函数fact()。 求n! c语言代码 求详解 #include&lt;stdio.h&gt; int fact(int); main( 我想考驾照, 我想考驾照。残疾人。去哪里考驾照? 我想考个驾驶证,请问考试有哪步骤 ? 我想考驾照,可是我什么都不会,什么也不懂,请问可以考嘛?