能不能用C语言帮我解决这个问题

来源:百度知道 编辑:UC知道 时间:2024/06/03 14:50:46
1+2+3+5+8+13+21+····
一共循环10次
应该怎样编程
用C
可以不用数组做吗?我是初学,呵呵

#include <stdio.h>
#include <stdlib.h>
void main(void)
{
int a = 1;
int b = 2;
int sum = a; //一次
printf("%d", a);
for(int i=1;i<10;i++)//循环9次
{
printf("+%d", b);
sum += b;
int c = a + b;
a = b;
b = c;
}
printf(" = %d\n", sum);
}

循环控制10次,没问题吧.(单纯的一个for()进行10次的循环,与其它任何事无干系!)

需要一个变量n,初始为1(放循环外头!).每次循环时与前一值相加.
因此,需要一个保留前一值的变量s,初始也为1(也放外头!).

s+n的结果要放在n里,但在此前n的值要用T备份,加完后,T值放入s

需要一个累加器Sum,目的是要把1,2,3,5这样的数一个个累加进去... 这值在哪个变量中不必我说了吧...

基本思路如此,流程上可能还能够化简.代码自己写.

main()
{
int i,array[10]={1,2};
int s=array[0]+array[1];
clrscr();
for(i=2;i<10;i++)
{array[i]=a[i-1]+a[i-2];
s=s+array[i]
}
printf("s=%d",s);
getch();
}

int i,sum=1;
while(i=0;i<10;i++)
sum=i+sum;
printf(sum="%d",sum);
记得好像是这样的,你去运行一下看可不可以