c语言 用递归函数完成以下运算: sum(n)=12+22+…+n2
时间: 2023-05-12 13:02:54 浏览: 321
以下是用递归函数完成 sum(n) 运算的 C 语言代码:
```c
#include <stdio.h>
int sum(int n) {
if (n == 1) {
return 12;
} else {
return sum(n - 1) + n * n;
}
}
int main() {
int n;
printf("请输入 n 的值:");
scanf("%d", &n);
printf("sum(%d) = %d\n", n, sum(n));
return 0;
}
```
当输入 n=5 时,输出结果为:
```
请输入 n 的值:5
sum(5) = 110
```
这个递归函数的思路是,当 n=1 时,sum(n) 的值为 12;否则,sum(n) 的值为 sum(n-1) 加上 n 的平方。这样,就可以通过递归调用 sum 函数来计算 sum(n) 的值。
相关问题
用c语言采用函数递归调用的方法计算sum=1+2+……+n
以下是用C语言递归调用函数计算1+2+...+n的代码:
```c
#include <stdio.h>
int sum(int n) { // 定义递归函数sum
if (n == 1) { // 递归结束条件
return 1;
} else {
return n + sum(n - 1); // 递归调用
}
}
int main() {
int n, result;
printf("请输入一个正整数n:");
scanf("%d", &n);
result = sum(n);
printf("1+2+...+%d=%d\n", n, result);
return 0;
}
```
代码执行流程:
1. 在主函数中输入一个正整数n;
2. 调用sum函数,将n作为参数传递给sum函数;
3. 在sum函数中,如果n等于1,返回1,否则返回n加上sum(n-1)的结果;
4. sum函数不断递归调用自身,直到n等于1;
5. 最终得到1+2+...+n的结果,返回给主函数;
6. 主函数输出结果。
利用递归函数实现一个计算功能:pf(n)=12+22+32+……+n2
以下是利用递归函数实现计算pf(n)的代码:
```python
def pf(n):
if n == 1:
return 1
else:
return pf(n-1) + n**2
n = 5
result = pf(n)
print("pf({}) = {}".format(n, result))
```
输出结果为:
```
pf(5) = 55
```
解释:
当n=1时,pf(1) = 1^2 = 1。
当n>1时,pf(n) = pf(n-1) + n^2,即pf(n)等于前n-1项的平方和再加上n的平方。
在代码中,递归调用pf函数来计算前n-1项的平方和,然后加上n的平方,最终得到pf(n)的结果。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)