C++ 複習題1

問題 A: 向量1(類和對象)

時間限制: 1 Sec  內存限制: 128 MB

題目描述

n個有序數a1,a2,...,an組成的數組稱爲n維向量。 爲n維向量定義CVector類,包含私有數據成員:

int *data;//存儲n維向量

int n; //向量維數。

方法有:無參構造函數,設置n=5,data的數據分別爲0,1,2,3,4;構造函數,用虛參n1和數組a初始化n和data的數據;輸出函數,按格式輸出n維向量的值;析構函數。

主函數輸入數據,生成CVector對象並調用輸出函數測試。

輸入

輸入n

輸入n維向量

輸出

分別調用無參和帶參構造函數生成2個CVector對象,輸出它們的值。

樣例輸入

6

10 1 2 3 4 5

樣例輸出

0 1 2 3 4

10 1 2 3 4 5

提示

 

Solution:

#include<iostream>
using namespace std;
class CVector{
private:
	int *data;
	int n;
public:
	CVector(){
		n = 5;
		data = new int[5];
        // oj 支持快速初始化:
        // data = new int[5]{0,1,2,3,4};
		data[0] = 0;data[1] = 1;data[2] = 2;data[3] = 3;data[4] = 4;
	}
	CVector(int n1,int* a){n = n1; data = a;}
	~CVector(){delete data;}
	void print(){
		cout<<data[0];
		for(int i =1;i<n;i++){
			cout<<" "<<data[i];
		}
		cout<<endl;
	};
};

int main()
{
	CVector cv;
	int n;
	cin>>n;
	int *a = new int[n];
	for(int i = 0;i<n;i++)
		cin>>a[i];
	cv.print();
	CVector c(n,a);
	c.print();
	return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章