制作计算移动平均线的程序需要帮助

时间:2011-04-20 19:02:46

标签: c

我需要用span的大小计算平均值,然后用一个元素移动并输出元素的平均值直到结束。

#include <stdio.h>  
#include <stdlib.h> 

void moving_average (int size, double a[], int span) 
{  
    int k;  
    double sum;  
    int n;  
    int count;  
    double output;  
    n=size-span;  
    for(count=0;count <= n;count++)  
    {  
        for(k=count; k<(count+span); k++)  
        sum+=a[k];  
        output=sum/span;  
        printf("%lf", output);  
    }  
}  

int main(void)  
{  
    double array[]={10,9,15,6,7};  
    moving_average(5,array[], 2);  
    return 0;  
}

2 个答案:

答案 0 :(得分:0)

提高编译器的警告级别!

在编译应该捕获的moving_average()调用中存在语法错误。

并且sum未初始化,编译器应该警告您是否正确设置。

答案 1 :(得分:0)

  • array
  • 的调用中moving_average后删除括号
  • sum = 0
  • 之前设置for(k=count; k<(count+span); k++)
  • 在printf中添加\n