这个程序要怎么优化呀,关于c语言求相关系数的

需要用c语言求解相关系数
数据都是0,1
我都是58个,我懒了所以直接写进去了
但是我结果会出现#INDOO
去了解了一下,可能是因为我的数据是0,1导致的分母可能为0?
【代码如下】

#include 
#include 

double Corrcoef(double A[],double B[], int  Length) ;
int main(void){
    double a[58],b[58];
    int i=0;
    int Length=58;
    double sumA, sumB, aveA, aveB;
    double A=0,B=0,C=0;
    double result=0;
    while(i<58){
        printf("请输入第一个变量的值(%d):",i);
        scanf("%f",&a[i]);
        printf("请输入第二个变量的值(%d):",i);
        scanf("%f",&b[i]);
        i++;
    }//输入数据
    sumA=0;
    sumB=0;
    i=0;
    while(i<58){
        sumA=a[i];
        sumB=b[i];
        i++;
    }//求和
    aveA=sumA/(double)Length;
    aveB=sumB/(double)Length;//求平均值
    while(i<58){
        A +=(a[i]-aveA)*(b[i]-aveB);
        B +=pow((a[i]-aveA),2);
        C +=pow((b[i]-aveB),2);
    }
    result=(R1/sqrt(R2*R3));
    printf("相关系数为:%f",result);
    return 0;
}


第23行 24行这里求和,少了 '+' 号,应修改为:sumA+=a[i]; sumB+=b[i];
第29行到第33行这段循环里,是否少了 i =0 ;的赋值,及循环里的 i++;