一道c语言编程题,急用谢谢

编写程序,要求如下:

(1)主函数中,定义一数组 double data[11],前10个元素是用户键盘输入,然后,用户输入一个10以内的整形数到变量m中,通过调用子函数aver,计算数组中前m个数的平均值,保存到数组的最后一个元素的位置,并在主函数中输出该平均值。

(2)子函数的原型为 void aver(double a[],int m,int n),其中形参m为待求平均值的元素个数,n为数组长度。

#include <stdio.h>

void aver(double a[],int m,int n)

{

    int i;

    for(i=0,a[n-1]=0;i<m;++i)

        a[n-1]+=a[i];

    a[n-1]/=m;

}

int main()

{

    double data[11];

    int i,m;

    for(i=0;i<10;++i)

        scanf("%lf",&data[i]);

    scanf("%d",&m);

    aver(data,m,11);

    printf("%lf\n",data[10]);

    return 0;

}

温馨提示:答案为网友推荐,仅供参考
相似回答