2016-03-05 49 views
-2

我不明白爲什麼我沒有得到總數。定義一個具有以下規格的班級學生(下面的剩餘點)

問題是

定義一個類學生具有以下規格:類學生admno整數SNAME 20字符ENG的私人 成員。
數學,科學浮點數總浮點數ctotal()函數來計算eng + 數學+科學與浮點返回類型。公共成員函數 class student Takedata()函數類的公共成員函數 student Takedata()函數float ctotal()函數計算 eng +數學+科學與floa返回類型。班級學生Takedata()函數的公共成員函數

#include<stdio.h> 
#include<iostream> 
using namespace std; 
class Student 
{ 
    private: 
    int admno; 
    char sname[20]; 
    float english,maths,science; 
    float total; 
    float ctotal() 
    { 
     total=(english+maths+science); 
     return(total); 
    } 
    public: 
     void Takedata() 
     { 
      cout<<"Enter the value of admno:"; 
      cout<<" sname :"; 
      cout<<"eng :"; 
      cout<<"science:"; 
      cout<<"maths:"; 
      cin>>admno; 

      cin>>sname; 

      cin>>english; 

      cin>>science; 

      cin>>maths; 

     } 
     Student(): total(0.0) //constructor 
     { 
     } 
     friend float func(Student); 
     void Showdata() 
     { 
      cout<<"adm no:"<<admno; 
      cout<<"sname:"<<sname; 
      cout<<"eng"<<english; 
      cout<<"science"<<science; 
      cout<<"maths"<<maths; 
     } 
}; 
    float func(Student t) 
    { 
    t.total; 
    return t.total; 
    } 
    int main() 
    { 
    Student s1; 
    s1.Takedata(); 
    s1.Showdata(); 
    cout<"total is:"; 
    cout<<func(s1); 

    } 
+0

你應該用在「功能」功能:)參考 – mustafagonul

+0

你是什麼意思「沒有得到總」?對於某些指定的輸入,你期望輸出什麼,你實際得到了什麼輸出?請[閱讀關於如何提出好問題](http://stackoverflow.com/help/how-to-ask)。 –

+0

用't.ctotal();'替換't.total;' – XZ6H

回答

0

float func(Student t) 
{ 
    t.total; 
    return t.total; 
} 
0

FUNC與t.ctotal()更換t.total應defind這樣

float func(Student t) 
    { 
    return t.ctotal(); 
    } 

還編輯

cout<"total is:"; 

cout<<"total is:"; 
0

需要使任一總或方法CTOTAL()公開。 然後調用它們中的任一個從

public: 
    float total; 
float func(Student t) 
{ 
    t.total; 
    return t.total; 
} 

OR 公共: 浮子CTOTAL(){ 總=(英文+數學+科學); return(total); }

float func(Student t) 
{ 
    return t.ctotal(); 
} 
相關問題