C语言 :有一个分数序列 2/1,3/2,5/3,8/5,13/8,21/13,....... 求出这个序列的前20项之和 (有注释)

//观察可知:
//第二项的分子为:第一项的分子和分母之和
//第二项的分母为:第一项的分子
# include 

int main (void)
{
	int k;			   //k为数列的项数
	double i,j,s,t;    //i为分母;j为分子;s为数列之和;t用来交换i和j的值
	i=1;			   //第一个分数的分母为1,所以定义i为1
	j=2;			   //第一个分数的分子为2,所以定义j为2
	s=0;
	for(k=1;k<=20;k++)  //当k循环的项数和于20的时候停止循环
	{
		s=s+j/i;		
		t=j;			//把j的值先赋给t
		j=i+j;			//再把i+j的值赋给j
		i=t;			//再把t的值赋给i
	}
	printf("sum=%16.5f\n",s);
	return 0;
}

你可能感兴趣的:(山西专升本C语言,C语言,c语言)