一个C语言计算和的问题,求帮助,求指导

#include

int sum(int n)
{
if (n==1) return n;
sum(n-1);
}
void main()
{
int n;
scanf("%d",&n);
printf("%d",sum(n));
}

 #include <stdio.h>
int sum(int n)
{
    int num=0;
    if (n==1) return n;
    num=n+sum(n-1);
    return num;
}
void main()
{
    int n;
    scanf("%d",&n);
    printf("%d",sum(n));
}

化简:

 #include <stdio.h>
int sum(int n)
{
    if (n==1) return n;
    else return n+sum(n-1);
}
void main()
{
    int n;
    scanf("%d",&n);
    printf("%d",sum(n));
}

你对递归的理解还不到位....