C language implements recursive addition and recursive hierarchy

unsigned int sum(unsigned int n)
{
    int tmp;
    if(n==0)
        return 0;
    else
    {
        tmp=n+sum(n-1);
        printf("tmp=%d\n",tmp);
    }
    return tmp;
}

unsigned int mul(unsigned int n)
{
    int tmp;
    if(n==1)
        return 1;
    else
    {
        tmp=n*mul(n-1);
        printf("tmp=%d\n",tmp);
    }
    return tmp;
}

void main(void)
{
    int n=8;
    int yyy=0;
    yyy=sum(n);
    printf("yyy=%d\n",yyy);
    n=8;
    yyy=mul(n);
    printf("yyy=%d\n",yyy);
    int xxx=1;
    for(n=1;n<9;n++)
    {
        xxx=xxx*n;
    }
    printf("xxx=%d\n",xxx);
}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325477591&siteId=291194637