递归算法简单题

最大公约数
题目内容:
输入两个整数m,n,用递归算法实现计算两个数的最大公约数。
输入格式:
输入两个整数m,n
输出格式:
最大公约数
输入样例:
12,40[回车]
输出样例:
4[回车]
时间限制:500ms内存限制:32000kb

理解最大公约数算法!

#include <stdio.h>
int n;
int m;
void bgd(int m, int n) {
    int r = m % n;
    m = n;
    n = r;
    if (r != 0) {
        bgd(m, n);
    } else {
        printf("%d\n", m);
    }
}

int main() {
    scanf("%d,%d", &m, &n);
    bgd(m, n);
    return 0;
}

奇偶求和
题目内容:
用递归算法实现,输入整数n(n>0), 求1+3+5+7….+(2*n-1) 的和
输入格式:
输入整数n
输出格式:
输出和
输入样例:
5[回车]
输出样例:
25[回车]
时间限制:500ms内存限制:32000kb

#include <stdio.h>
int n;
int qiuhe(int n) {
    if (n == 1) {
        return 1;
    } else {
        return 2 * n - 1 + qiuhe(n - 1);
    }
    return 0;
}

int main() {
    scanf("%d", &n);
    printf("%d\n", qiuhe(n));
    return 0;
}

你可能感兴趣的:(递归算法)