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
代码:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
int main()
{
int i,j,s,flag,n,m;
while(scanf("%d%d",&n,&m)==2)
{
s=0;
getchar();
j=0;
flag=0;
if(n>100||n==0||m==0)
break;
for(i=1; i<=n; i++)
{
j+=2;
s=s+j;
if(i%m==0)
{
if(flag==1)
{
printf(" ");
}
printf("%d",s/m);
flag=1;
s=0;
}
else if(i==n)
{
if(flag==1)
{
printf(" ");
}
printf("%d",s/(n%m));
}
}
printf("\n");
}
return 0;
}
未经精简,仅供参考。