1. 程式人生 > >18計科實驗五

18計科實驗五

  1. 建立一個Student類實現如下功能:查詢考試成績不及格的學生及其學號,並統計這些學生的總人數。
  1. 類的定義要求如下:

私有資料成員

  1. Int num ——儲存學生的編號,學生編號最小為1
  2. String name——儲存學生姓名
  3. Float score——儲存學生考試成績
  4. Int count——統計符合條件的總人數
  1. 共有函式成員
  1. Void input()——輸入學生成績
  2. Void search()——查詢不及格的學生人數並存入count變數
  3. Void print()——輸出不及格總人數和不及格學生的編號、姓名、成績
    #include<iostream>
    using namespace std;
    const int SIZE = 3;		//錄入資訊個數
    class student{
    	private:
    		int num;
    		string name;
    		float score;
    		static int count;
    	public:
    		void input();
    		static void search(student stu[]);
    		static void print();		
    };
    int student::count = 0;		//記錄不及格學生人數
    student *ptr[SIZE];	//外部變數,儲存不及格
    void student::input(){
       cout<<"please input num:"<<endl;
       cin>>this->num;
       cout<<"please input name:"<<endl;
       cin>>this->name;
       cout<<"please input score:"<<endl;
       cin>>this->score; 	
    }
    void student::search(student stu[]){
    	int j=0;
        for(int i=0;i<SIZE;i++)
    	{
    		if(stu[i].score<60)
    		{
    			count++;
    			ptr[j] = &stu[i];
    			j++;
    		}
    	}	
    }
    void student::print(){
    cout<<"不及格人數"<<count<<endl;
    for (int i = 0; i < count; i++)
    		{
    		  cout << "編號:" << ptr[i]->num << " 成績:" << ptr[i]->score << " 名字:" << ptr[i]->name << endl;
    		}
    	
    }
    
    int main(){
    	student stu[SIZE];
    	int i;
    	for(i=0;i<SIZE;i++)
    	{
    		stu[i].input();
    	}
    	student::search(stu);
    	student::print();
    	return 0;
    }