C语言进阶-第6讲:递归法问题求解(易列写递归方程)
2017-11-06 16:16
267 查看
任务和代码:
/*
*All rights reserved
*文件名称:main.c
*作者: Osseyda
完成日期:2017.11.6
*版本号:v2.
*
*问题描述:立方累加和:用递归函数求f(n)=1^3+2^3+...+n^3
*递归方程:f(1)=1
f(n)=f(n-1)+n*n*n
*/
#include <stdio.h>
int sumOfCube(int n){
int f;
if(n==1)
f=1;
else
f=n*n*n+sumOfCube(n-1);
return f;
}
int main(){
int n;
int y;
scanf("%d",&n);
y=sumOfCube(n);
printf("%d\n",y);
return 0;
}
知识点总结:
根据已给的函数表达式,列写递归方程,再调用递归函数。
/*
*All rights reserved
*文件名称:main.c
*作者: Osseyda
完成日期:2017.11.6
*版本号:v2.
*
*问题描述:立方累加和:用递归函数求f(n)=1^3+2^3+...+n^3
*递归方程:f(1)=1
f(n)=f(n-1)+n*n*n
*/
#include <stdio.h>
int sumOfCube(int n){
int f;
if(n==1)
f=1;
else
f=n*n*n+sumOfCube(n-1);
return f;
}
int main(){
int n;
int y;
scanf("%d",&n);
y=sumOfCube(n);
printf("%d\n",y);
return 0;
}
/* *All rights reserved *文件名称:main.c *作者: Osseyda 完成日期:2017.11.6 *版本号:v2. * *问题描述:写出求1×3×5×...×n的递归式,并编写出递归函数求解。 *递归方程:f(1)=1 f(n)=f(n-1)*(2*n-1) */ #include <stdio.h> int oddFact(int n){ int f; if(n==1) f=1; else f=(2*n-1)*oddFact(n-1); return f; } int main(){ int n; int y; scanf("%d",&n); y=oddFact(n); printf("%d\n",y); return 0; }
知识点总结:
根据已给的函数表达式,列写递归方程,再调用递归函数。
相关文章推荐
- C语言进阶-第6讲:递归法问题求解(递归求数组的最大值)
- C语言进阶-第6讲:递归法问题求解(两数的最大公约数)
- C语言及程序设计进阶例程-6 递归法问题求解
- C语言进阶-6讲: 递归法问题求解
- 递归求解N皇后问题(c语言)
- ai-2698-八皇后问题-C语言-递归求解
- 黑马程序员--汉诺塔问题的递归求解C语言
- C语言及程序设计进阶例程-24 查找问题及其求解
- 用递归法:设计算法求解汉诺塔问题,并编程实现。 (1) Hanoi(汉诺)塔问题分析 这是一个古典的数学问题,是一个用递归方法解题的典型例子。问题是这样的:古代有一个梵塔,塔内有3个座 A,B,C
- C语言及程序设计进阶例程-25 排序问题及其求解
- C语言回溯法递归求解八皇后问题
- C语言及程序设计进阶例程-26 回溯溯法问题求解
- C语言及程序设计进阶例程-27 贪心法问题求解
- C语言实现Hanoi(汉诺塔)问题的递归求解
- C语言-数据结构-递归求解实例-8皇后问题
- C语言及程序设计进阶例程-28 动态规划法问题求解
- Java经典编程300例之实例047 汉诺塔问题求解(递归)
- 用递归法求解一个数组中的最大值和最小值的问题
- 百度2013年校园招聘一道笔试题--三位密码组合问题递归求解
- poj-2754-八皇后-C语言-递归求解