C语言用递归算法计算从一加到一百
时间: 2023-04-07 10:03:21 浏览: 155
可以回答这个问题。以下是C语言递归算法计算从一加到一百的代码:
#include <stdio.h>
int sum(int n) {
if (n == 1) {
return 1;
} else {
return n + sum(n-1);
}
}
int main() {
int result = sum(100);
printf("从一加到一百的结果是:%d\n", result);
return 0;
}
相关问题
用c语言用递归算法计算二叉树分支数
二叉树的分支数等于其左子树的分支数加上右子树的分支数再加一,即:
```c
int branches(struct TreeNode* root) {
if (root == NULL) {
return 0;
}
return branches(root->left) + branches(root->right) + 1;
}
```
其中,`struct TreeNode` 是二叉树节点的结构体,如下所示:
```c
struct TreeNode {
int val;
struct TreeNode *left;
struct TreeNode *right;
};
```
用c语言使用递归算法编写计算n!函数。
下面是使用递归算法编写计算n!函数的C语言代码:
```c
#include <stdio.h>
int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main() {
int n;
printf("请输入一个整数:");
scanf("%d", &n);
printf("%d! = %d\n", n, factorial(n));
return 0;
}
```
上述代码中,定义了一个名为`factorial`的函数,该函数接收一个整数类型的参数`n`,并返回`n`的阶乘。在函数中,首先判断`n`是否等于0,如果是,则返回1;否则,递归调用`factorial`函数计算`n-1`的阶乘,并将结果乘以`n`,最后返回这个结果。在`main`函数中,首先获取用户输入的整数`n`,然后调用`factorial`函数计算`n`的阶乘,并输出结果。