用栈的话不好,因为栈是后进先出的,这意味着新数一进来就会被移走,所以不适合本题。
可以考虑用队列,队列的话是先进先出,满足题意。
楼上说用链表,其实也可以。
再或者,直接用数组就够了。
#include <stdio.h>
void main()
{
int a[8] = {1,2,3,4,5,6,7,8};
int i = 0;
int j;
double tol;
while (scanf("%d",&a[i]))
{
i = (i + 1) % 8;
tol = 0;
for (j=0; j<8; j++)
tol += a[j];
printf("%lf\n",tol/8);
}
}
温馨提示:内容为网友见解,仅供参考