shunfurh
编程介的小学生
采纳率92.7%
2019-02-03 00:22 阅读 712

用C 语言按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。

Problem Description
有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序列。

Input
输入数据有多组,每组占一行,包含两个正整数n和m,n和m的含义如上所述。

Output
对于每组输入数据,输出一个平均值序列,每组输出占一行。

Sample Input
3 2
4 2

Sample Output
3 6
3 7

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • twotwowinwin twotwowinwin 2019-02-04 01:06

    bool average(const unsigned int &src, const unsigned int length, float *avg, unsigned &retSize, unsigned int m)
    { // 源数据,源数据个数,返回平均值的指针,返回平均值的个数,步长m
    if(length < m || m<=0) return false;
    unsigned limit = length/m, left = length%m;
    unsigned int i,j;
    unsigned int sum=0;
    retsize = 0;
    for(i=0; i<limit; i++){
    for(j=i*m; j<(i+1)*m; j++)
    sum += src[j];
    avg[i] = sum/m;
    sum = 0;
    retsize ++;
    }
    sum = 0;
    if(left != 0){
    for(; j<length; j++)
    sum += src[j];
    avg[i] = sum/left;
    retsize ++;
    }
    return true;
    }

    点赞 评论 复制链接分享

相关推荐