2017-05-06 96 views
-6

我正在嘗試編寫一個程序來查找多個數量的總和以及給定數量的平均值。它似乎沒有工作,但我不知道如果問題是在我的編譯器內,如果它是我的代碼。這是我迄今爲止。找到多個數字的總和和平均值

#include <iostream> 
using namespace std; 

int main() 
{ 
    int n, i; 
    sum=0.0, average; 

    cout << "Enter the numbers of data: "; 
    cin >> n; 

    for(i = 0; i < n; ++i) 
    { 
     cout << i + 1 << ". Enter number: "; 
     cin >> num[i]; 
     sum += num[i]; 
    } 

    average = sum/n; 
    cout << "Average = " << average; 

    return 0; 
} 
+1

隨口說說,我說你錯過了'sum'和'average'的類型。你遇到了什麼錯誤? – Mureinik

+1

你在哪裏定義了'num [i]',爲什麼你需要一個數組? –

+0

憑經驗:這是**幾乎從來沒有**的編譯器。我們能否看到一個輸入示例併產生不正確的輸出和/或錯誤消息? –

回答

0

你沒有申報「NUM」陣列的任何地方,也是你的數據聲明缺失類型總和與平均值。他們應該是漂浮物。 BTW漂浮文字需要對最終F:

float num = 0.0f; // hold the current number 
float sum = 0.0f; // store the sum so far 
float average = 0.0f; // store the average at the end 

當讀取儲存CIN直入NUM,沒有[我]標:

cin >> num; 
sum += num; 

這將修復的主要錯誤。再次,仔細閱讀錯誤消息,他們會一直告訴你行號和錯誤類型的信息,你只需要學會破譯消息的含義。

忘記陣列現在,因爲這將需要動態內存分配,因爲大小是由用戶輸入的,你應該得到基本的程序流程和變量鑽研之前制定。

「未知符號」或類似意味着你使用的名字,但你從未宣佈過什麼樣的,這是東西,所以你忘了聲明一個變量或爲它並沒有聲明類型(只是拋出一個名字出來沒有按「T告訴編譯器是否意味着是的例如變量,函數,類或什麼的。這個編譯器是不會讀心術)的名稱。