C趣味程序(二)(02)數(shù)據(jù)求平均值

字號:

1.2 無規(guī)律離散數(shù)據(jù)處理
     對若干無規(guī)律的離散數(shù)據(jù)求和,通常把已有數(shù)據(jù)置于某一數(shù)組中,或從鍵盤輸入,并在數(shù)據(jù)的最后設置一個區(qū)別已有數(shù)據(jù)的終止標志。在循環(huán)中每讀一個數(shù)或一組數(shù)據(jù),作相應的處理,直到讀到終止標志時輸出結果后結束。
    1.2.1 數(shù)據(jù)求平均值
     已給若干個無規(guī)律的離散數(shù)置入數(shù)組中,設置 -1作為終止標志(若數(shù)據(jù)中有負數(shù),則終止標志楞以設置成一個大數(shù),例如le30)。設置變量x在循環(huán)中讀取數(shù)據(jù),若x非終止標志,則累加到和變量s中:s=s+x,為求平均需要,還要用一個變量統(tǒng)計數(shù)據(jù)的個數(shù):n=n+1。直至x為終止標志時結束。
    程序代碼如下:
    #include
    void main()
    {
     double data[]={9.36,8.95,9.32,9.27,9.44,8.91,9.20,-1};
     double s=0;
     int n=0,i=0;
     while(data[i]>0)
     {
     printf("%.2f;:s=%.2f: n=%d\n",data[i],s,n);
     s=s+data[i];
     n=n+1;
     i=i+1;
     }
     printf("以上:%d;個數(shù)據(jù)之和為:%.2f\n",n,s);
     printf("平均值為:%.2f\n",(s/n*100+0.5)/100);
    }