2016-08-06 7 views
-1

浮動小数点変数 'avg'を返すようにしてから、メインでパラメータを使用して 'void batsman :: display(float a)'に渡します。表示方法に平均マークを表示します。この方法は私に2エラーを与える。その他の方法で?返された値を別のメソッドに解析する

#include<iostream.h> 
class batsman 
{ 
    int marks[5]; 
    char name[15],country[15]; 
    public: 
    void input(); 
    float cal(); 
    void display(); 
}; 

void batsman::input() 
{ 
    int i; 
    cout<<"Enter player name: "; 
    cin>>name; 
    cout<<"Enter player country: "; 
    cin>>country; 
    cout<<"Enter player marks"<<"\n"; 
    for(i=0;i<5;i++) 
    { 
     cout<<"Mark "<<i+1<<": "; 
     cin>>marks[i]; 
    } 
} 

float batsman::cal() 
{ 
    int i; 
    int tot=0; 
    float avg; 
    for(i=0;i<5;i++) 
    { 
     tot=tot+marks[i]; 
    } 
    avg=(float)tot/5; 
    return avg; 
} 

void batsman::display(float a) 
{ 
    float avg1; 
    avg1=a; 
    cout<<"Player name: "<<name<<"\n"; 
    cout<<"Player country: "<<country<<"\n"; 
    cout<<"Average: "<<avg1<<"\n"; 
} 

int main() 
{ 
    batsman b1; 
    b1.input(); 
    b1.cal(); 
    b1.display(b1.batsman::cal()); 

    //cout<<"Average: "<<b1.batsman::cal()<<"\n"; 
} 
+2

* "この方法で2つのエラーが表示されます。" * - 使用したと言えば、何か役立つでしょうか? – IInspectable

+2

私はどんなエラーがあるのか​​分かりませんが、 'b1.display(b1.batsman :: cal());行の' .'を '.'に置き換えたいと思うでしょう。 – David

+1

ビルドエラーに関する質問を投稿するとき完全な完全な、未編集の、そして情報ノートを含む、正確なエラーを常に含むようにしてください。彼らはテキストのように質問の本文にすべきです。好ましくはコピーペーストされる。また、表示されるコードのコメントなど、エラーが発生した行を指摘してください。 –

答えて

1

コードにいくつかの誤りがあります。

  1. でiostream.hは、std名前空間を使用してのiostream
  2. する必要があります。 //これを上に追加して、coutが見つかるようにします。
  3. display()は、クラス宣言でdisplay(float a)にする必要があります。

これらの変更の後、コードは期待どおりに実行されました。

+0

ありがとうございます。あなたは私が何ヶ月も探してきた答えを私にくれました! THnx! – xxxXXX

+1

@ SiL3n7neoあなたが何ヶ月も探していたら、間違った場所で検索しています。 [任意の良い初心者の本](http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)は、最初の2つのことを手伝ってくれました。 3番目の問題は、コードを見て実際にコンパイラからエラーメッセージを読むだけで解決できるはずです。 –

0

display(float a)にあなたのクラスの変更displayの定義、およびcoutcinstd::を付加。推奨として、iostreamを使用してiostream.hを使用しないでください。

関連する問題