c语言1+n累加求和递归
答:C语言:递归求和求f(n)的值可以采用以下的代码:include<stdio.h> int sum(int n){ if(!n)return 0;else return n + sum(n - 1);} int main(){ int n;scanf("%d",&n);printf("%d\n",sum(n));return 0;}
答:include "stdio.h"int add1_9999(int n){return n>1 ? n+add1_9999(n-1) : 1;}int main(int argv,char *argc[]){printf("The result is %d\n",add1_9999(9999));return 0; }运行结果:
答:include <stdio.h>int fact(int n){if(n==1)return 1; return n*fact(n-1);}int sum(int n){if(n==1)return fact(1); return fact(n)+sum(n-1);}int allsum(int n){if(n==1)return 1; return sum(n)+allsum(n-1);}int main(){int n; scanf("%d",&n); printf(...
答:include<stdio.h> float fun(int n){ if(n==1) return 1;//如果n=1则直接返回1 return n*fun(n-1);//否则返回n*fun(n-1),以此计算n的阶乘,这条语句就是递归体 } void main(){ int i;float sum=0;for(i=1;i<=n;i++){ sum+=fun(i); //循环调用,用sum累计 } printf(...
答:是递归, 没有递推一说, 只有递归和循环两种, 或者直接计算,即知道其数学公式,include <stdio.h> include <stdlib.h> int sum(int n){ if (n == 1) return n;else return sum(n - 1) + n;} int sum1(int n){ return n * (n + 1) / 2;} int sum2(int n){ int sum = ...
答:这里就是不断和fact函数相乘,之后编写主函数的内容:2、在main函数定义int类型变量sum,然后调用fact()将返回值赋予sum,最后使用printf打印sum的值:3、最后编写程序好后,来运行程序观察结果,这里可以看到打印出了6的阶乘。以上就是C语言用递归的方式求阶乘的过程:...
答:include <stdio.h> int sum(int n){int x;scanf("%d",&x);if(n==1)return x;return x+sum(n-1);} int main(){int i,k,a[100];for(i=0;1;i++){ scanf("%d",&k);a[i]=sum(k);if(k==1&&a[i]==-1)break;} for(k=0;k<=i;k++)printf("%d\n",a[k]);ret...
答:include<stdio.h>int sum(int n){ return n>0?n+sum(n-1):0;}int main(){printf("1+2+...+100=%d\n",sum(100));return 0;}
答:我觉得如果是输入一个数字n 计算从1~n直接全部数字的和 可以把收尾相加作为一组*组数 可以推出公式 (n+1)*n/2 比如9!=45 (9+1)*9/2=45 比如20!=210 (20+1)*20/2=210
答:这个东西关键是递归算法的确定,需要一点数学知识。include <stdio.h> //递归计算函数 int calc(int x){ if (x < 1) return -1;if (x == 1){ return 1;} else if (x == 2){ return 3;} else { return (x+1)*calc(x-1)-x*calc(x-2);//核心数学算法 } } int main(int ...
网友评论:
阴贡19140136931:
C语言1加到N的递归算法怎么写? -
61617佴蝶
: int sum(int n) { if(n==0) return 0; else return n+sum(n-1); }满意请采纳
阴贡19140136931:
C语言.编写程序,用递归函数完成,求整数1+……+n的和,其中n自己输入.. -
61617佴蝶
: #include int sum(int); int main() { int n; scanf("%d", &n); printf("1+...+%d = %d", n, sum(n)); return 0; } int sum(int x) { if(x==1) { return 1; } else { return x+sum(x-1); } }
阴贡19140136931:
C语言用递归方式求n个数的和 -
61617佴蝶
: #include <iostream>#include <iomanip> using namespace std; int add(int n); int main() { int i=100; int b; b=add(100); cout<<b<<endl; } int add(int n) { if(n==1) return 1; else return n+add(n-1); },利用add()函数进行递归,这是个从1加到n的递归函数
阴贡19140136931:
C语言编程问题!!急用... 用递归算法编写,求1到n的累加和,在主函数中调用 -
61617佴蝶
: #include <stdio.h> int fun(int n) {int sum = 0;if (n == 1)sum = n;elsesum = n + fun (n-1);return sum; }void main() {int n;scanf("%d",&n);printf("%d",fun(n)); }
阴贡19140136931:
c语言计算1+2+……+n的累加求和 用while和for俩种方法? -
61617佴蝶
: 1,#include<stdio.h> int main() { int n,i,sum=0; scanf("%d",&n); for(i=0;i<=n;i++) sum=sum+i; printf("%d",sum);return 0; }2,#include<stdio.h> int main() { int i=0,n,sum=0; scanf("%d",&n); while(i<=n) { sum=sum+i; i++; } printf("%d",sum); ...
阴贡19140136931:
急,急,急、!!!C语言递归求和:1*1+2*2+……+n*n,1=<n<=1000 -
61617佴蝶
: #include long fun(int n)//递归函数 {if(n==1)return 1;//从1000一次递减,直到n的值为1,方才结束递归~~~elsereturn fun(n-1)+n*n; }int main() {int n;long result;scanf("%d",&n);result=fun(n);printf("%d\n",result);return 0; }帮你改了,但我为你连这样的小问题都不能自己动手去修改而感到无比的悲哀! 如果你继续这样学C语言,我建议你现在就放弃,免得浪费你宝贵的时间~~
阴贡19140136931:
c语言 用递归函数求 1+2+3+…+n的和 -
61617佴蝶
: int foo(int n){ if(n==1) return 1; else { return f(n-1)+n; } }
阴贡19140136931:
用递归算法,求1+2+3+······+n,n由键盘输入. 用C语言程序编写.
61617佴蝶
: int fun(int m) { if(m==1) return 1; else return m+fun(m-1); } void main(){ int x; scanf("%d",&x); printf("%d\n",fun(x)); } 你自己好好分析一下,相信你能写的出来,这是最基本的!
阴贡19140136931:
计算1!+2!+......+n!用C语言程序中的递归法怎么写呢? -
61617佴蝶
: 这个东西关键是递归算法的确定,需要一点数学知识.#include //递归计算函数 int calc(int x) { if (xif (x == 1) { return 1; } else if (x == 2) { return 3; } else { return (x+1)*calc(x-1)-x*calc(x-2);//核心数学算法 } } int main(int argc, char* argv[]) { //测试,输...
阴贡19140136931:
用c语言求从1到n的累加和超出100的最小整数n -
61617佴蝶
: #include<stdio.h> main(){int n=1,sum=0;while(sum<=100){sum+=n;n++;}printf("%d",n-1); }