- 相關(guān)推薦
2017年全國計(jì)算機(jī)等級(jí)c++考試試題
C++設(shè)計(jì)成給程序設(shè)計(jì)者更多的選擇,即使可能導(dǎo)致程序設(shè)計(jì)者選擇錯(cuò)誤。下面是小編收集的全國計(jì)算機(jī)等級(jí)c++考試試題,希望大家認(rèn)真閱讀!
一、選擇題
1). 數(shù)據(jù)庫管理系統(tǒng)DBMS中用來定義模式、內(nèi)模式和外模式的語言為( )
A.C
B.Basic
C.DDL
D.DML
正確答案:C
2). 下面對(duì)于友元函數(shù)描述正確的是
A.友元函數(shù)的實(shí)現(xiàn)必須在類的內(nèi)部定義
B.友元函數(shù)是類的成員函數(shù)
C.友元函數(shù)破壞了類的封裝性和隱藏性
D.友元函數(shù)不能訪問類的私有成員
正確答案:C
答案解析:友元函數(shù)的定義既可以在類內(nèi)部進(jìn)行,也可以在類外部進(jìn)行。它提高了程序的運(yùn)行效率,但破壞了類的封裝性和隱藏性,使得類的非成員函數(shù)可以訪問類的私有成員。
3). 下列鏈表中,其邏輯結(jié)構(gòu)屬于非線性結(jié)構(gòu)的是( )
A.二叉鏈表
B.循環(huán)鏈表
C.雙向鏈表
D.帶鏈的棧
正確答案:A
答案解析:在定義的鏈表中,若只含有一個(gè)指針域來存放下一個(gè)元素地址,稱這樣的鏈表為單鏈表或線性鏈表。帶鏈的?梢杂脕硎占(jì)算機(jī)存儲(chǔ)空間中所有空閑的存儲(chǔ)結(jié)點(diǎn),是線性表。在單鏈表中的結(jié)點(diǎn)中增加一個(gè)指針域指向它的直接前件,這樣的鏈表,就稱為雙向鏈表(一個(gè)結(jié)點(diǎn)中含有兩個(gè)指針),也是線性鏈表。循環(huán)鏈表具有單鏈表的特征,但又不需要增加額外的存貯空間,僅對(duì)表的鏈接方式稍做改變,使得對(duì)表的處理更加方便靈活,屬于線性鏈表。二叉鏈表是二叉樹的物理實(shí)現(xiàn),是一種存儲(chǔ)結(jié)構(gòu),不屬于線性結(jié)構(gòu)。答案為A選項(xiàng)。
4). 關(guān)于純虛函數(shù),下列表述中正確的是( )。
A.純虛函數(shù)是沒有給出實(shí)現(xiàn)版本(即無函數(shù)體定義)的虛函數(shù)
B.純虛函數(shù)的聲明總是以″=0″結(jié)束
C.派生類必須實(shí)現(xiàn)基類的純虛函數(shù)
D.含有純虛函數(shù)的類不可能是派生類
正確答案:B
答案解析:純虛函數(shù)是在聲明虛函數(shù)時(shí)被″初始化″為O的虛函數(shù)。純虛函數(shù)沒有函數(shù)體,純虛函數(shù)的作用是在基類中為其派生類保留一個(gè)函數(shù)名稱。
5). 下列關(guān)于虛函數(shù)的描述中,正確的是( )。
A.虛函數(shù)是一個(gè)static類型的成員函數(shù)
B.虛函數(shù)是一個(gè)非成員函數(shù)
C.基類中采用virtual說明一個(gè)虛函數(shù)后,派生類中定義相同原型的函數(shù)時(shí)可不必加virtual說明
D.派生類中的虛函數(shù)與基類中相同原型的虛函數(shù)具有不同的參數(shù)個(gè)數(shù)或類型
正確答案:C
答案解析:在成員函數(shù)聲明的前面加上virtual關(guān)鍵字即把該函數(shù)聲明為虛函數(shù)。虛函數(shù)可以是另一個(gè)類的友元函數(shù),但不是靜態(tài)成員函數(shù)。在派生類中可以重新定義從基類繼承下來的虛函數(shù),在派生類中重新定義虛函數(shù)時(shí),函數(shù)名、形參表和返回值類型必須保持不變。
二、填空題
給定程序的功能是求出能整除X且不是偶數(shù)的各整數(shù),并放在數(shù)組PP中,這些除數(shù)的個(gè)數(shù)由N返回。
例如,若X的值為30,則有4個(gè)數(shù)符合要求,它們是1,3,5,15。
注意:部分源程序給出如下
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在橫線上填入所編寫的若干表達(dá)式或語句。
試題程序:#include
void fun(int x, int pp[], int *n)
{
int i, j = 0;
for (i=1; i<=x; i+=2)
if ((x%i) == 0)
pp[j++] = ___1___;
*n = ___2___;
}
main()
{
int x, aa[1000], n, i;
printf("\nPlease enter an integer number:\n");
scanf("%d", &x);
fun(x, ___3___);
for (i=0; i printf("%d ", aa[i]);
printf("\n");
}
第1處填空:i
第2處填空:j
第3處填空:aa,
【全國計(jì)算機(jī)等級(jí)c++考試試題】相關(guān)文章:
全國計(jì)算機(jī)等級(jí)考試等級(jí)08-25
2016計(jì)算機(jī)等級(jí)考試二級(jí)C++上機(jī)模擬試題及答案07-14
2017年全國計(jì)算機(jī)等級(jí)考試試題及答案07-24
2017全國計(jì)算機(jī)等級(jí)考試一級(jí)試題09-06
2017全國計(jì)算機(jī)二級(jí)C++考試試題06-20