C语言编程 2个问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 14:12:51
A1=1,A2=1,A3=3/(A2+A1),A4=4/(A3+A2)……
A30=30/(A29+A28),求A30
另一个问题是
求S=1²+2²+……+n²的和小于5000时的n的值

1、
#include <stdio.h>
float f(i)
{float j;
if(i==1||i==2)
j=1;
if(i>=3)
j=i/(f(i-1)+f(i-2));
return j;
}

main()
{int i=30;
float result;
result=f(i);
printf("the result is %f:\n",result);
}

2、
#include<math.h>
main()
{int n,s=0;
for(n=0;s<5000;n++)
{s+=n*n;
if(s<5000)
printf("%5d",n);}
}

#include<stdio.h>

void main()
{
float f[30]; // int 修改 一下 ,, 可能 不是 整数的 ..

f[0] = 1.0; f[1]=1.0 ;

for(int i = 2 ; i< 30;i++)

{
f[i] = (i+1.0) /(f[i-1] + f[i-2]);

}

printf("%f \n" ,f[29]);

int s = 0 , j =1 ;

while(s < 5000)
{
printf(" 小于5000 的 n依次为: %d \n " , j);

j++;

s += j * j;

}

}