c语言的编程
题目是这样的:有一分数序列 2/1,3/2,5/3,8/5,13/8,21/13,.....
求出这个数列的前20项之和。
程序是这样的。
#include <stdio.h>
void main()
{ int a[20]={2,3,5,8,};
int b[20]={1,2,3,5,8};
int i,j;
float s,k;
i=1;j=1;s=0;
for(i=1;i <=20;i++)
{
for(j=1;j <=20;j++)
{ a[i]=a[i+2]-a[i+1];
b[j]=b[j+2]-b[j+1];
k=a[i]/b[j];
s=s+k;
}
for(i=1;i <=20;i++)
for(j=1;j <=20;j++)
printf( "%f\n ",s);
}
}
但运行后的结果为”Divide error ",我不知道什么意思,也不知道错在哪里
[解决办法]
声明数组的时候如果你没有全部给它指定值的话,系统会自动分配0给那些没有赋值的元素。
如int a[20]={2,3,5,8,};
a[0]=2
a[1]=3
a[2]=5
a[3]=8
除了上面的值后面的a[4]....a[19]都是0.