2014-12-04 58 views
-3

這個代碼表示如下錯誤: 類型之前獲得三個錯誤

  1. 缺失)
  2. 計算值:參數太少調用
  3. 語法錯誤)的視覺stuio 2013平臺

mycode的:

#include "math.h" 
    void main() 
    { 
     float num[5]; 
     float (calc (float num[5])); 
     calc(float num);/* transferring control to calc function)*/ 
     getch(); 
    } 
    float calc(float nun[5]) 
    { 
     int i; 
     float num[5]; 
     float sum, avg, sqmn1, sumsqmn = 0, sqsd = 0; float sd; 
     printf("\nEnter 5 numbers"); 
     for (i = 0; i < 5; i = i + 1) 
     { 
      scanf("%f", &num[i]); 
     } 
     sum = 0; 
     for (i = 0; i < 5; i = i + 1) 
     { 
     sum = sum + num[i]; 
     } 
     avg = sum/5; 
     for (i = 0; i < 5; i = i + 1) 
     { 
     sqmn1 = (avg - num[i])*(avg - num[i]); 
      sumsqmn = sumsqmn + sqmn1; 
     } 
     sqsd = sumsqmn/5; 
     sd = sqrt(sqsd); 
     printf("\nThe sum is %f", sum); 
     printf("\nThe average is %f", avg); 
     printf("\nThe stabdard deviation is %f", sd); 
     getch(); 
    } 
+0

呃。哪些代碼...?好吧,上面的線條塊?我們是人類的,不是類似的,請親切地格式化你的代碼。 – 2014-12-04 13:34:00

+0

你想如何編輯先生? – 2014-12-04 13:35:23

+1

別叫我先生,我是女士。 :-)。並且不用擔心編輯,它已經被保存了。 – 2014-12-04 13:36:22

回答

3

float (calc (float num[5]));

main(),這是什麼是什麼呢?

IMO,也可以是,

float ff; 
ff = calc(num); 

除此之外,

  1. #include <stdio.h>丟失。
  2. 前向聲明float calc(float nun[5])丟失。

您可以rewite你main()作爲

int main() 
    { 
     float num[5]; 
     float ff; 
     ff = calc(num);/* transferring control to calc function)*/ 
     getch(); 

     return 0; 
    } 

但隨後也,你傳遞nummain()calc(),但我看你從來沒有使用過。你要做什麼?

+0

'float(calc(float num [5]));'是一個前向聲明。它應該移到'main'之外。在函數定義之外放置前向聲明是一種很好的做法。此外,多餘的括號應該被刪除:'float calc(float num [5]);' – 2014-12-04 13:44:32

+0

@KlasLindbäck謝謝你的補充。通過看到返回的價值沒有被捕獲,我通過其他方式。 – 2014-12-04 13:45:58