#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(){
double avg,stddev,temp,sum,sumsq,cnt;
FILE *fpdata1, *fpdata2;
if( ( fpdata1
= fopen("temp.dat","rb")) == NULL
){ printf("error:cannot open temp.dat \n"); }
if( ( fpdata2
= fopen("report.txt","w")) == NULL
){ printf("error:cannot open file \n"); }
sum=0;
sumsq=0;
for(cnt=0; ;cnt++){
if(temp==0.){
break;
}
sum = sum + temp;
sumsq
= sumsq
+ pow(temp
,2); }
avg=sum/cnt;
stddev
=sqrt((sumsq
-cnt
*pow(avg
,2))/(cnt
-1));
fprintf(stderr
,"cnt = %.0lf\naverage = %.1lf\nstandard deviation = %.1lf\n",cnt
,avg
,stddev
); fprintf(fpdata2
,"average = %.1lf\nstandard deviation = %.1lf\n",avg
,stddev
); }
最終更新:2011年05月27日 15:56