2016-06-15 31 views
-1

這是一個基本程序,但我需要找出如何分別計算每行的平均值。我應該使用更多的計數還是應該使用另一個循環?如何計算所有行的平均值

int main() 
{ 
    int r; 
    int Count=0; 
    double sum=0; 
    double Average=0; 
    double c,value; 
    for (r=1; r<11; r++) 
    { 
     for(c=1; c<5; c++) 
     { 
      value=(rand()%10000)/100.0; 

      if (value>=67.0) 
      { 
       Count++; 
       printf("%5.2f ",value); 
       sumTotal=sumRow/sumCol; 
       sum += value; 
      } 
      else 
      { 
       printf("  "); 
      } 
     } 

     Average=sum/Count; 
     if(Average == 0){ 
      printf("|  "); 
     } 
     else{ 
      printf("| %6.2f ",Average); 
     } 
     printf("\n"); 
    } 
    return 0; 
} 
+0

歡迎來到Stack Overflow。請儘快閱讀[關於]頁面,以及如何快速創建MCVE([MCVE])。您需要在外循環的每次迭代開始時將Count和Sum值(大寫的一致性?)設置爲零。您不顯示「sumTotal」,「sumRow」或「sumCol」的聲明,這會分散注意力/令人不安。 –

+0

對不起大寫,謝謝。 –

回答

0

使計數器在外環

int main() 
{ 
    int r; 

    double c,value; 
    for (r=1; r<11; r++) 
    { 
     int Count=0; 
     double sum=0; 
     double Average=0; 
     for(c=1; c<5; c++) 
     { 

      value=(rand()%10000)/100.0; 

      if (value>=67.0) 
      { 
       Count++; 
       printf("%5.2f ",value); 
      // sumTotal=sumRow/sumCol; 
       sum += value; 
      } 
      else 
      { 
       printf("  "); 
      } 
     } 

     Average=sum/Count; 
     if(Average == 0){ 
      printf("|  "); 
     } 
     else{ 
      printf("| %6.2f ",Average); 
     } 
     printf("\n"); 
    } 
    return 0; 
} 

我註釋掉斷碼。

+0

它的工作,你真棒謝謝你。 –