刚入门,没看懂,请会的人指教一下,谢谢
/*有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。
编程输出该平均值序列。*/
#include<stdio.h>
int main()
{
int m,n,i,line[104],s,j,h;
int aver1,aver2;
while( scanf( "%d%d",&n,&m ) != EOF )
{
line[0]=2;
for( i = 1; i < n; i++ )
line[i]=line[i-1]+2;
h = n % m;//这是什么
for( j = 0; j < n / m; j++ )//为什么要是n/m
{
s = 0;
for( i = j * m; i < (j+1) * m; i++ )//好复杂,没看懂
s = line[i] + s;
aver1 = s / m;
if( j == 0 )
printf( "%d",aver1 );
else printf( " %d",aver1 );
}
if( h != 0 )
{
s = 0;
for( i = n - h; i < n;i++ )
s = s + line[i];
aver2 = s / h;
printf( " %d",aver2 );
}
printf( "\n" );
}
return 0;
}