艾美其的回答://分数序列如:2\1,3\2.5\3,8\5.13\8,21\13.......的前20项之和。 #include//直接看这一组数列有什么规律,很容易发现,从2/1开始,后一组的分母为前一组的一个分子 //后一项的分子为前一项的分母分子之和,如果用An表示分母,Bn表示分子,则有递推工式,B(n+1)=An::A(n+1)=An+Bn知道这个就很好办了 float getMe(int n)//这个函数就是求第n项的那个数的值 { float An=2.0;float Bn=1.0; float temp; while(--n) { temp=Bn; Bn=An; An=An+temp; } return(An/Bn);} void main() { int n; float theSum=0.0; printf("请输入你想要求的前n项的和:"); scanf("%d",&n); for(;n>0;n--) { theSum=theSum+getMe(n); } printf("%f",theSum); } 陈玉章的回答://分数序列如:2\1,3\2.5\3,8\5.13\8,21\13.......的前20项之和。 #include//直接看这一组数列有什么规律,很容易发现,从2/1开始,后一组的分母为前一组的一个分子 //后一项的分子为前一项的分母分子之和,如果用An表示分母,Bn表示分子,则有递推工式,B(n+1)=An::A(n+1)=An+Bn知道这个就很好办了 float getMe(int n)//这个函数就是求第n项的那个数的值 { float An=2.0;float Bn=1.0; float temp; while(--n) { temp=Bn; Bn=An; An=An+temp; } return(An/Bn);} void main() { int n; float theSum=0.0; printf("请输入你想要求的前n项的和:"); scanf("%d",&n); for(;n>0;n--) { theSum=theSum+getMe(n); } printf("%f",theSum); } 自由一族的回答:#include <stdio.h> #include <math.h> void main() { int a,b; for(a=1;a!=10;a++) for(b=0;b!=10;b++) { int num=a*1000+a*100+b*10+b; int root=sqrt(num); if(root*root=num) printf("%d\n",num); } } |