二級(jí)C++上機(jī)考試說明
1.二級(jí)C++語言程序設(shè)計(jì)上機(jī)考試包括基本操作、簡(jiǎn)單應(yīng)用和綜合應(yīng)用。
2.C++上機(jī)操作主要是要求考生能夠閱讀和分析C++程序,能夠采用面向?qū)ο蟮姆椒ň帉懗绦,能熟練使用Visual C++ 6.0集成開發(fā)環(huán)境編寫和調(diào)試程序。
3.上機(jī)考試總時(shí)間為90分鐘,滿分100分,共有3種類型的考題:基本操作題、簡(jiǎn)單應(yīng)用題、綜合應(yīng)用題。
4.基本操作題主要以改作題的形式出現(xiàn),其出題范圍主要是C++中有關(guān)類與對(duì)象的操作,如考核對(duì)象的定義、對(duì)象成員的訪問方式等;簡(jiǎn)單應(yīng)用題主要是考察考生編寫應(yīng)用程序的能力,如題目要求的功能實(shí)現(xiàn)某個(gè)函數(shù)的定義,或考核某種算法的C++實(shí)現(xiàn)等;綜合應(yīng)用題的出題范圍主要集中在類和對(duì)象以及類的繼承與派生這些知識(shí)點(diǎn)上。出題形式通常是要求考生按照題目要求將程序補(bǔ)充完整,并調(diào)試程序使之輸出正確的結(jié)果。
經(jīng)典例題解析
例1 使用VC6打開考生文件夾下的工程proj1,此工程包含一個(gè)源程序文件main.cpp,但該程序運(yùn)行有問題,請(qǐng)改正main函數(shù)中的錯(cuò)誤。
源程序文件main.cpp清單如下:
#include
class MyClass
{
public:
MyClass(int m)
{
member=m;
}
~MyClass(){}
int GetMember()
{
return member;
}
private:
int member;
};
MyClass Makeobject(int m)
{
MyClass *pMyClass=new MyClass(m);
return *pMyClass;
}
int main()
{
int x=7;
/*********found**********/
MyClass *myobj=Makeobject(x);
/*********found**********/
cout< <″My object has member″< <&NBSP;
return 0;
分析: 本題考核對(duì)象指針的應(yīng)用,屬于改錯(cuò)題。
程序中出現(xiàn)了2個(gè)出錯(cuò)標(biāo)識(shí)符,說明此程序有2處錯(cuò)誤。
第1處錯(cuò)誤:MyClass*myobj=Makeobject(x);,myobj是對(duì)象指針,而函數(shù)Makeobject的返回值是類MyClass的對(duì)象,所以應(yīng)改為:MyClass*my0bj=&Make0bject(x);。
第2處錯(cuò)誤是:cout< <″My object has member″< <&NBSP;成員名;和(*對(duì)象指針名).成員名;,顯然上述語句的對(duì)象指針的使用方式是錯(cuò)誤的。
答案: 應(yīng)改為:cout< <″My object has member″< GetMember()< <&NBSP; < <(*myobj).GetMember()<
相關(guān)鏈接:2011年計(jì)算機(jī)等級(jí)考試二級(jí)C++輔導(dǎo)筆記匯總
計(jì)算機(jī)等級(jí)考試二級(jí)C++模擬試題15套(上機(jī))
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |