SWUST OJ#321阶乘和#299平方和

一:阶乘
阶乘(factorial)是基斯顿·卡曼(Christian Kramp,1760 – 1826)于1808年发明的运算符号。任何大于1的自然数n阶乘可以表示为以下形式:n!= n×(n-1) !另外,数学家定义,0!= 1,所以0!= 1!你的任务是编写一个程序来计算一个给定数字n的阶乘n!(n <14)

输入
输入数据只有一行,即数字n的值,(n <14)。

输出
要求输出n!的值

样例输入
复制
5
样例输出
120

#include
int f(int n)
{
     
    if(n==0)
        return 1;//将n的值停在0,n==0时返回1
    else
        return (n*f(n-1));
}
int main()
{
     
    int n;
    int f(int n);
    scanf("%d",&n);
    printf("%d\n",f(n));
    return 0;
}

二:平方和
译文描述
用递归的方法求f(n)= 1 * 1 + 2 * 2 + 3 * 3 +……+ n * n

输入
输入数字n

输出
输出结果f(n)

样例输入
复制
1个
3
样例输出
1个
14

#include
int f(int n)
{
     
    if(n==1)
        return 1;//原因如上
    else
        return (n*n+f(n-1));
}
int main()
{
     
    int n;
    while(~scanf("%d",&n))
    {
     
        int f(int n);
        printf("%d\n",f(n));
    }
    return 0;
}

总:这两道题和组合数都是递归函数引用,调用本身。

你可能感兴趣的:(SWUST OJ#321阶乘和#299平方和)