第 1 頁:選擇題 |
第 3 頁:程序改錯題 |
第 4 頁:簡單應用題 |
第 5 頁:綜合應用題 |
四、綜合應用題
43使用VC++6.0打開考生文件夾下的源程序文件3.cpp。其中定義的類并不完整,按要求完成下列操作,將類
的定義補充完整,使得程序的輸出結果為21。
(1)增加靜態私有變量Num,類型為int,請在注釋1后添加適當的語句。
(2)增加靜態變量Num并初始化為10,請在注釋2后添加適當的語句。
(3)完成靜態函數get的定義,請在注釋3后添加適當的語句。
(4)完成對象obj對靜態函數get的調用,使得輸出結果
為21,請在注釋4后添加適當的語句。
注意:增加或者修改代碼的位置已經用符號表示出來,請不要修改其他的程序代碼。
試題程序:
#include
classTC
{
//********1********
intOwn;
public:
TC(inti)
{
Own=i;
}
//********2********
{
returnNum+obj->Own;
}
};
//********3********
intmain()
{
TCobj(11);
//********4********
cout<<<
return0;
}
參考解析:
(1)應添加“staticintNum;”。
(2)應添加“intTC::Num=10;”。
(3)應添加“staticintget(TC*obj)”。
(4)將“cout<<<
【解析】第1處要求“增加靜態私有變量Num,類型為int”。靜態變量的定義格式為static類型變量名稱,本題只要在類的private區域定義int型的靜態變量Num,即在第1處添加“staticintNum;”。第2處要求“增加靜態變量Num并初始化為10”。第2個標識的位置在類TC的外部,在C++中,使用“::”作用域運算符聲明定義的變量屬于哪個類。由題干知道,Num屬于類TC,根據C++的作用域運算符,在第2處添加語句“intTC::Num=10;”。第3處要求“完成靜態函數9et的定義”。根據第3個標識下的“re-turnNum+obj->Own;”語句知道,get函數具有形參obj指針。obj調用Own變量,說明它是TC類型,并且靜態函數的定義只要在其前面聲明static就可以了,即在第3處添
加語句“staticintget(TC*obj)”。第4處要求“完成對象obj對靜態函數get進行調用,使得輸出21到屏幕上”。程序中第4處的“cout<<<
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |