C 實驗3 1 類和物件 1

2021-08-30 08:33:37 字數 1625 閱讀 4707

一、實驗目的和要求

1.類的定義;

2.物件的定義和使用;

3.成員變數和成員函式的定義和使用;

二、實驗環境(軟、硬體及條件)

一台安裝有visual c++ 6.0的計算機

三、實驗步驟

1.閱讀下面的程式,回答程式後面的問題。

#include

class cdate

int isleapyear()

public:

void print()

private:

int  month;    int  day;    int  year;

};void main()

問題1:找出上述程式中的錯誤及發生錯誤的原因,然後改正。

問題2:類cdate中分別有哪些成員函式和成員變數,它們分別屬於哪種訪問許可權?

2.閱讀下面的程式,回答程式後面的問題。

#include

int month;//全域性變數  

int day;  

int year;

void set(int m,int d,int y) 

class cdate

void print()

private:

int month; //成員變數

int day;

int year;

};void main()

問題1:該程式的執行結果是

問題2:①處是在給成員變數賦值,還是在給全域性變數賦值,如果去掉域作用符::,程式是否還能正確執行?

問題3:②處呼叫的哪個函式,如果去掉域作用符::,程式能否正確執行?為什麼?

3.試設計乙個複數類,該類有實部和虛部兩個成員資料,成員資料採用私有訪問許可權,同時該類有兩個公有成員函式,分別用來設定成員資料和輸出成員資料,在主函式中呼叫該類的公有函式設定和輸出成員資料。

4. 用物件導向的方法程式設計求5!

四、實驗中遇到的問題及解決

五、實驗結果及分析

1.(1),set函式沒有宣告,預設為私有,而主函式訪問私有成員函式,這是不允許的。改正:在set函式前宣告public.

(2)成員函式: void set(int m, int d, int y ),int isleapyear(),void print();(公有)

成員變數: int  month;    int  day;    int  year;(私有)

2.(1)-858993460/-858993460/-858993460

(2)給全域性變數賦值。能正確執行。

(3)呼叫set函式。不能正確執行,因為這是給成員函式的形參初始化,若是去掉作用域::,則是呼叫函式。與程式要求的不相符。

3.#include

using namespace std;

class fushu

int play();

void main()

4.#include

class j

;int j::result()

void main()

C 實驗 實驗3 類和物件 1

定義乙個圓類,計算圓的面積和周長。要求 分別用成員函式和友元函式來求圓的面積和周長。includeusing namespace std const double pi 3.14159 class circle circle circle double r 成員函式計算周長 double circl...

C 實驗三 類和物件(1)

實驗名稱 實驗三 類和物件 1 實驗內容 設計乙個用於描述三維空間中的點的類,為其設計必要的成員變數和函式,並盡量增強其功能。include include using namespace std class point point string name,double x,double y,dou...

C 類 和 物件 1

類是 c 的核心特性,通常被稱為使用者定義的型別。類用於指定物件的形式,它包含了資料的表示和用於處理資料的方法。類中的資料 方法 函式,稱為類的成員。定義了類,也就意味著定義了類的物件包括什麼,以及可以在這個物件上執行哪些操作。例如,我們使用關鍵字class定義 box 資料型別,如下所示 clas...