C语言编程题,求助@@@回答正确的我会发红包奖励

2024-11-26 21:22:41
推荐回答(3个)
回答1:

C语言代码:

#include 

int sumn(int n, int *flag);

int main()
{
int n, nf = 0;
scanf("%d", &n);
printf("%d\n", sumn(n, &nf));
if(nf != n)
printf("Error: %d\n", nf);
return 0;
}

int sumn(int n, int *flag)
{
(*flag)++;
if(n==1)
return 2;
return sumn(n-1, flag) + n * (n + 1);
}


运行测试: 

回答2:

int sumn(int n, int *flag)
{
(*flag)++;
if(!n) return 0;
int sum = n * (n + 1);
return sum + sumn(n - 1, flag);
}

回答3:

#include
int sumn(int n,int*flag)
{
    (*flag)++;
 
    if(n==1) return 0;
    return n*(n-1)+sumn(n-1,flag);
}
int main()
{
int n,nf=0;
scanf("%d",&n);
printf("%d\n",sumn(n,&nf));
if(nf!=n)
    printf("Error:%d\n",nf);
return 0;
}