- 計算機二級C++考試卷及答案 推薦度:
- 相關推薦
2024年計算機二級C++考試試卷及答案
在各領域中,我們都要用到試卷,在各領域中,只要有考核要求,就會有試卷,試卷是命題者按照一定的考核目的編寫出來的。那么你知道什么樣的試卷才能有效幫助到我們嗎?下面是小編為大家收集的2024年計算機二級C++考試試卷及答案,歡迎大家分享。
計算機二級C++考試試卷及答案 1
一、程序改錯題
(1)應改為“for(x=0;x<5;x++)”。
(2)應改為“cout< 【解析】本題中根據數組a、b的定義。它們都有5個元
素,而第1處的“for(x=0;x<=5;x++)”循環了6次,應該是5次,所以在第1處將其修改為“for(x=0;x<5;x++)”;第2處的P變量為指針型變量,p+x為糯向數組中第X個元素的地址,這里要輸出的是存儲單元的內容,所以使用“*”指針元素符,即修改為“cout<
二、簡單應用題
inti,a[4],t;
a[0]=n%10;//取整型n的第1位數字
a[1]=n%100/10;//取整型n的第2位數字
a[2]=n%1000/100;//取整型n的第3位數字
a[3]=n/1000;//取整型n的第4位數字
for(i=0;i<=3;i++)//每位數字加3,取余
{
a[i]+=3;
a[i]%=9;
}
t=a[0];//根據加密算法交換
a[0]=a[3];
a[3]=t;
t=a[1];
a[1]=a[2];
a[2]=t;
returna[3]*1000+a[2]*100+a[1]*10+a[0];
//重組,返回加密數字
【解析】本題首先取得要加密整數的每一位數字,并存入數組。根據加密算法,利用循環實現每位數字加3,再除以9取余。根據加密算法進行數字交換,最后重組,返回密碼。
三、綜合應用題
(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<<< 程序改錯題(18分)
使用VC++6.0打開考生文件夾下的源程序文件1.cpp,該程序運行時有錯,請改正其中的錯誤,使程序正常運行,即使程序在屏幕輸出以下類似內容:
0012FF6810012FF3C5
0012FF6C20012FF444
0012FF7030012FF4C3
0023FF7440012FF542
0012FF7850012FF5C1
006AFDCC~006AFDEF數據可能因為機器的不同,程序輸出的內容會有差異。只要相差為4的連續地址即可。
注意:不要改動main函數,不能增加或刪除行,也不能更改程序的結構,錯誤的語句在//******error******的下面。
試題程序:
#include
usingnamespacestd;
intmain()
{
int*P,a[5]={1,2,3,4,5};
double*q,b[5]={5.0,4.0,3.0,2.0,1.0);
intx;
P=a;
q=b;
//********error********
for(x=0;x<=5;X++)
//********error********
cout< (q+x)< return0;
}
四、簡單應用題(24分)
使用VC++6.0打開考生文件夾下的源程序文件2.cpp。閱讀下列函數說明和代碼,完成空出部分程序。函數fun(intn)的功能是實現對一個整數的.加密,具體的加密方法是一個4位長的整數,用每位數字加上3然后除以9的余數代替該數字,再將第1位和第4位交換,第2位和第3位交換,然后返回得到的密碼。
程序輸出結果為
1864
2075
注意:不能修改其他部分的代碼。
試題程序:
#include
#include
intfun(intn)
{
}
intmain()
{
inti=1357:
cout< i=2468;
cout< return0;
}
五、綜合應用題(18分)
使用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;
}
計算機二級C++考試試卷及答案 2
1、假定有一個菜單項,名為Menultem,為了在運行時使該菜單項不可見,應使用的語句為( )。
A.Menultem.Enabled=False
B.MenuItem.Enabled=True
C.MenuItem.Visible=True
D.Menultem.Visible=Flase
2、為丫從當前文件夾中讀入文件File1.txt,某人編寫了下面的程序:
PrivateSubCommand1_Click( )
Open"File1.txt"ForOutputAs#20
DoWhileNotEOF(20)
LineInput#20,ch$
Printch
Loop
Close#20
EndSub
程序調試時,發現有錯誤,下面的修改方案中正確的是( )。
A.在Open語句中的文件名前添加路徑
B.把程序中各處的“20”改為“1”
C.把Printch語句改為Print#20,ch
D.把Open語句中的0utput改為Input
3、設有以下函數過程
PrivateFunctionFun(a( )AsInteger,bAsString)AsInteger
…
EndFunction
若已有變量聲明:
Dimx(5)AsInteger,nAsInteger,chAsString
則下面正確的過程調用語句是( )。
A.x(O)=Fun(x."ch")
B.n=Fun(n.ch)
C.CallFunX,"ch"
D.n=Fun(x(5),ch)
4、窗體的`左右兩端各有1直線,名稱分別為Line1、Line2;名稱為Shape1的圓靠在左邊的Linel直線上(見圖);另有1個名稱為Timer1的計時器控件,其Enabled屬性值是True。要求程序運行后,圓每秒向右移動100,當圓遇到Line2時則停止移動。為實現上述功能,某人把計時器的Interva1屬性設置為1000,并編寫了如下程序:
PrivateSubTimer1Timer( )
Fork=Line1.X1ToLine2.X1Step100
IfShape1.Left+Shape1.width
Shape1.Left=Shape1.Left+100
EndIf
Nextk
EndSub
運行程序時發現圓立即移動到了右邊的直線處,與題目要求的移動方式不符。為得到與題目要求相符的結果,下面修改方案中正確的是( )。
A.把計時器的Interval屬性設置為1
B.把Fork=line1.X1ToLine2.X1Step100和Nextk兩行刪除
C.把Fork=Line1.X1ToLine2.X1Step100改為Fork=Line2.X1ToLine1.X1Step100
D.把IfShape1.Left+Shepe1.Width
5、以下關予菜單設計的敘述中錯誤的是( )。
A.各菜單項可以構成控件數組
B.每個菜單項可以看成是一個控件
C.設計菜單時,菜單項的“有效”選,即有效,表示該菜單項不顯示
D.菜單項只響應單擊事件
【計算機二級C++考試試卷及答案】相關文章:
2016年計算機二級C++考試卷及答案08-05
計算機二級考試C++練習及答案10-09
全國計算機二級考試C++精選試題及答案08-17
2016計算機二級考試C++練習題及答案07-15
全國計算機二級考試C++鞏固試題與答案10-03
2016計算機二級考試C++復習題及答案08-22