/* 逐次平均 自動変数のみ */ #include double seqavg_local(double, double, int); int main() { int n=0; double indata, avg=0; while(1) { printf("入力データ:"); if (scanf("%lf",&indata)!=1) break; avg=seqavg_local(indata, avg, n); n++; printf("データ数:%d, 平均:%f\n",n,avg); } printf("\n最終結果はデータ数%dで、平均値%fでした\n",n,avg); return 0; } double seqavg_local(double data, double avg, int n) { avg=(avg*n+data)/(n+1); return avg; }