學習筆記《計算機程式設計C 》第12周程式設計作業

2021-10-05 19:12:44 字數 4089 閱讀 3650

1虛函式實現多型性(20分)

題目內容:

定義寵物類pet,包含虛函式speak,顯示如下資訊「how does a pet speak?」;定義公有派生類cat和dog,其speak成員函式分別顯示:「miao! miao!」和「wang! wang!」。主函式中定義pet,cat和dog物件,再定義pet指標變數,分別指向pet,cat和dog物件,並通過指標呼叫speak函式,觀察並分析輸出結果。

輸入格式:

不需要輸入

輸出格式:

各類呼叫speak函式輸出的結果

輸入樣例:

輸出樣例:

how does a pet speak?

miao!miao!

wang!wang!

時間限制:500ms記憶體限制:32000kb

c++

#include 

using

namespace std;

intmain()

用例測試結果 執行時間 占用記憶體 提示 得分

用例1通過 3ms 372kb

20提交答案本次得分/總分:20.00/20.00分

2抽象寵物類的實現(20分)

題目內容:

定義抽象寵物類pet,其中資料成員包括:名字,年齡和顏色;成員函式包括:建構函式;獲取成員資料值的函式;純虛函式speak和純虛函式getinfo;

定義pet的派生類cat和dog,其中speak函式分別顯示貓和狗的叫聲,而getinfo函式分別輸出cat和dog的屬性。主函式中定義pet指標變數,分別指向動態生成的cat和dog物件,並通過指標分別呼叫getinfo函式和speak函式,觀察並分析輸出結果。

輸入格式:

貓和狗的資訊

輸出格式:

請參考輸出樣例,嚴格遵照格式要求輸出,建議直接複製樣例中的部分文字貼上進自己的**中.(冒號是英文冒號,冒號後無空格)

輸入樣例:

mikey 2 blue

benben 1 black

輸出樣例:

貓的名字:mikey

貓的年齡:2

貓的顏色:blue

貓的叫聲:miao!miao!

狗的名字:benben

狗的年齡:1

狗的顏色:black

狗的叫聲:wang!wang!

時間限制:500ms記憶體限制:32000kb

c++

#include

#include

using

namespace std;

intmain()

用例測試結果 執行時間 占用記憶體 提示 得分

用例1通過 3ms 360kb

20提交答案本次得分/總分:20.00/20.00分

3過載加法運算子的複數運算(20分)

題目內容:

定義乙個複數類,並過載加法運算子(+)和賦值運算子(=)以適用對複數運算的要求。

輸入格式:

依次輸入兩個複數的實部和虛部

輸出格式:

先按照要求格式輸出兩個複數,然後輸出這兩個複數的和

輸入樣例:

1 23 4

輸出樣例:

1+j2

3+j4

4+j6

時間限制:500ms記憶體限制:32000kb

c++

#include

#include

using

namespace std;

intmain()

用例測試結果 執行時間 占用記憶體 提示 得分

用例1通過 15ms 360kb

20提交答案本次得分/總分:20.00/20.00分

4過載矩陣加法運算(20分)

題目內容:

編寫乙個矩陣類,過載矩陣加法運算。設a,b,c均為m行,n列的矩陣,要求程式能實現c=a+b的操作。

輸入格式:

第一行為矩陣的行數和列數,下面為兩個矩陣的元素值

輸出格式:

兩個矩陣的和。注意,輸出的每行元素,行末沒有空格。

輸入樣例:

2 31 3 2

4 2 5

2 3 4

3 2 6

輸出樣例:

3 6 6

7 4 11

時間限制:500ms記憶體限制:32000kb

c++

#include

#include

using

namespace std;

class jz

void

set(

int x,

int y)

void

outa()

}void

operator

+(jz b)};

intmain()

用例測試結果 執行時間 占用記憶體 提示 得分

用例1通過 2ms 376kb

20提交答案本次得分/總分:20.00/20.00分

5純虛函式與基類指標陣列的應用(20分)

題目內容:

定義抽象基類shape,

其中純虛函式printname()輸出幾何圖形的名稱和相應的成員資料、純虛函式printarea()計算幾何圖形的面積。並由shape類派生出5個派生類:circle(圓形),資料成員為半徑、square(正方形)

,資料成員為邊長、rectangle(長方形) ,資料成員為長和寬、trapezoid(梯形) ,資料成員為上底、下底和高、********(三角形)

,資料成員為底和高。測試過程,定義乙個指向基類的指標陣列,使其每個元素指向乙個動態產生的派生類物件,分別呼叫相應的成員函式顯示各個幾何圖形的屬性及面積,最終輸出總面積值。

輸入格式:

依次輸入圓半徑、正方形邊長、長方形長寬、梯形上底下底和高、三角形底邊和高,均為實數。

輸出格式:

請參考輸出樣例,建議直接複製樣例中的部分文字貼上進自己的**。圓周率取 3.14159

注意輸出中的標點符號、空格。

輸入樣例:105

2 41 2 3

4 3輸出樣例:

圓:半徑=10,面積:314.159

正方形:邊長=5,面積:25

長方形:長=2,寬=4,面積:8

梯形:上底=1,下底=2,高=3,面積:4.5

三角形:底邊=4,高=3,面積:6

總面積:357.659

時間限制:500ms記憶體限制:32000kb

c++

#include 

using

namespace std;

const

double pi =

3.14159

;class

shape

;class

circle

:public shape

void

printname()

double

printarea()

};class

square

:public shape

void

printname()

double

printarea()

};class

rectangle

:public shape

void

printname()

double

printarea()

};class

trapezoid

:public shape

void

printname()

double

printarea()

};class

********

:public shape

void

printname()

double

printarea()

};intmain()

用例測試結果 執行時間 占用記憶體 提示 得分

用例1通過 3ms 368kb

20提交答案本次得分/總分:20.0

學習筆記《計算機程式設計 》第 周單元測試

第7周單元測試 已經超過規定的測試次數或提交截止時間已過。你可以作為自我學習進行測驗,但提交的結果將無法獲得學分。1單選 2分 位址是指 得分 總分 a.變數本身 b.變數的型別 c.變數所在的記憶體單元編號 2.00 2.00 d.變數的值 2單選 2分 引用 得分 總分 a.可以為空 b.指向一...

計算機程式設計(c )第2周程式設計作業

1 溫度轉換 題目內容 輸入華氏溫度,用下列公式將其轉換為攝氏溫度並輸出。c 5 9 f 32 輸入格式 實數輸出格式 轉換後的攝氏溫度,實數。輸入樣例 輸出樣例 26.6667 includeusing namespace std int main 3 資料的簡單統計 題目內容 程式設計實現,使用...

計算機程式設計(c )第4周程式設計作業

1 愷撒加密 題目內容 愷撒加密法加密規則是 將原來的小寫字母用字母表中其後面的第3個字母的大寫形式來替換,大寫字母按同樣規則用小寫字母替換,對於字母表中最後的三個字母,可將字母表看成是首未銜接的。如字母c就用f來替換,字母y用b來替換,而字母z用c代替。程式設計實現以下功能 輸入乙個字串,將其加密...