《c++題庫 以及答案.doc》由會員分享,可在線閱讀,更多相關(guān)《c++題庫 以及答案.doc(19頁珍藏版)》請在裝配圖網(wǎng)上搜索。
______________________________________________________________________________________________________________
一、單選題
1. C++源程序文件的缺省擴(kuò)展名為( )。
A. cpp B. exe C. obj D. lik
2. 由C++源程序文件編譯而成的目標(biāo)文件的缺省擴(kuò)展名為( )。
A. cpp B. exe C. obj D. lik
3. 由C++目標(biāo)文件連接而成的可執(zhí)行文件的缺省擴(kuò)展名為( )。
A. cpp B. exe C. obj D. lik
4. 編寫C++程序一般需經(jīng)過的幾個步驟依次是( )。
A. 編譯、編輯、連接、調(diào)試
B. 編輯、編譯、連接、調(diào)試
C. 編譯、調(diào)試、編輯、連接
D. 編輯、調(diào)試、編輯、連接
5. 以下標(biāo)識符中不全是保留字的是( )。
A. case for int
B. default then while
C. bool class long
D. goto return char
6. 能作為C++程序的基本單位是( )。
A. 字符 B. 語句 C. 函數(shù) D. 源程序文件
7. 程序中主函數(shù)的名字為( )。
A. main B. MAIN C. Main D. 任意標(biāo)識符
8. C++程序的基本模塊為( )。
A. 表達(dá)式 B. 標(biāo)識符 C. 語句 D. 函數(shù)
9. 可用作C++語言用戶標(biāo)識符的一組標(biāo)識符是( )。
A. void define +WORD
B. a3_b3 _123 YN
C. for -abc Case
D. 2a DO sizeof
10. 存儲以下數(shù)據(jù),占用存儲字節(jié)最多的是( )。
A. 0 B. ‘0’ C. “0” D. 0.0
11. 程序運行中需要從鍵盤上輸入多于一個數(shù)據(jù)時,各數(shù)據(jù)之間應(yīng)使用( )符號作為分隔符。
A. 空格或逗號 B. 逗號或回車 C. 逗號或分號 D. 空格或回車
12. 設(shè)”int a=12;”,則執(zhí)行完語句”a+=a*a;”后,a的值是( )。
A. 12 B. 144 C. 156 D. 288
13.
假設(shè)在程序中 a、b、c 均被定義成整型,所賦的值都大于1,則下列能正確表示代數(shù)式 的表達(dá)式是( )。
A. 1.0/a*b*c B. 1/(a*b*c) C. 1/a/b/(float)c D. 1.0/a/b/c
14. 設(shè)”int a=15,b=26;”,則”cout<<(a,b);”的輸出結(jié)果是( )。
A. 15 B. 26,15 C. 15,26 D. 26
15. 設(shè)x是一個bool型的邏輯量,y的值為10,則表達(dá)式 x && y的值為( )。
A. 1 B. 0 C. 與x值相同 D. 與x值相反
16. x>0 && x<=10的相反表達(dá)式為( )。
A. x<=0 || x>10 B. x<=0 && x>10
C. x<=0 || x<=10 D. x>0 && x>10
17. x>0 || y==5的相反表達(dá)式為( )。
A. x<=0 || y!=5 B. x<=0 && y!=5
C. x>0 || y!=5 D. x>0 && y==5
18.設(shè)x和y均為bool量,則x && y為真的條件是( )。
A. 它們均為真 B. 其中一個為真
C. 它們均為假 D. 其中一個為假
19.設(shè)x和y均為bool量,則x || y為假的條件是( )。
A. 它們均為真 B. 其中一個為真
C. 它們均為假 D. 其中一個為假
20. 字符串”a+b=12\n”的長度為( )。
A. 6 B. 7 C. 8 D. 9
21. 假定下列x和y均為int型變量,則不正確的賦值為( )。
A. x+=y++ B. x++=y++ C. x=++y D. ++x=++y
22. 下列的符號常量定義中,錯誤的定義是( )。
A. const M=10; B. const int M=20;
C. const char ch; D. const bool mark=true;
23. 循環(huán)語句“for(int i=0; i
n/2) break;
A. n/2 B. n/2+1 C. n/2-1 D. n-1
25. 在下面循環(huán)語句中內(nèi)層循環(huán)體S語句的執(zhí)行總次數(shù)為( D )。
for(int i=0; ititle,”Wang Tao”); B. strcpy(book.title,”Wang Tao”);
C. strcpy(*book.title,”Wang Tao”); D. strcpy((*book)->title,”Wang Tao”);
86. 假定有“struct BOOK{char title[40]; float price;}; BOOK *book;”,則不正確的語句為( )。
A. BOOK *x=new book; B. BOOK x={"C++ Programming",27.0};
C. BOOK *x=new BOOK; D. BOOK *x=book;
87. 假定有“struct BOOK{char title[40]; float price;}book;”,則正確的語句為( )。
A. BOOK &x= &book; B. BOOK &x=book;
C. BOOK &x=new BOOK; D. BOOK &x=BOOK;
88. 下列對引用的陳述中不正確的是( )。
A. 每一個引用都是其所引用對象的別名,因此必須初始化
B. 形式上針對引用的操作實際上作用于它所引用的對象
C. 一旦定義了引用,一切針對其所引用對象的操作只能通過該引用間接進(jìn)行
D. 不需要單獨為引用分配存儲空間
89. 假定變量a和pa定義為“double a[10], *pa=a;”,要將12.35賦值給a中的下標(biāo)為5的元素,不正確的語句是( )。
A. pa[5]=12.35; B. a[5]=12.35;
C. *(pa+5)=12.35; D. *(a[0]+5)=12.35;
90. 假定變量b和pb定義為“int b[10], *pb=b;”,要將24賦值給b[1]元素中,不正確的語句是( )。
A. *(pb+1)=24; B. *(b+1)=24; C. *++b=24; D. *++pb=24;
91. 假定指針變量p定義為“int *p=new int(100);”,要釋放p所指向的動態(tài)內(nèi)存,應(yīng)使用語句( )。
A. delete p; B. delete *p; C. delete &p; D. delete []p;
92. 假定指針變量p定義為“int *p=new int[30];”,要釋放p所指向的動態(tài)內(nèi)存,應(yīng)使用語句( )。
A. delete p; B. delete *p; C. delete &p; D. delete []p;
93. 假定變量x定義為“int x=5;”,要使rx成為x的引用(別名),rx應(yīng)定義為( )。
A. int rx=x; B. int rx=&x; C. int *rx=&x; D. int &rx=x;
94. 關(guān)于消息,下列說法中不正確的是( )。
A. 發(fā)送消息的對象請求服務(wù),接受消息的對象提供服務(wù)
B. 消息的發(fā)送者必須了解消息的接收者如何相應(yīng)消息
C. 在C++中,消息的發(fā)送具體體現(xiàn)為對接收消息的對象的某個函數(shù)的調(diào)用
D. 每個對象只能接收某些特定格式的消息
95. 關(guān)于封裝,下列說法中不正確的是( )。
A. 通過封裝,對象的全部屬性和操作結(jié)合在一起,形成一個整體
B. 通過封裝,一個對象的實現(xiàn)細(xì)節(jié)被盡可能地隱藏起來(不可見)
C. 通過封裝,每個對象都成為相對獨立的實體
D. 通過封裝,對象的屬性都是不可見的
96. 面向?qū)ο蠓椒ǖ亩鄳B(tài)性是指( )。
A. 一個類可以派生出多個特殊類
B. 一個對象在不同的運行環(huán)境中可以有不同的變體
C. 針對一消息,不同的對象可以以適合自身的方式加以響應(yīng)
D. 一個對象可以是由多個其他對象組合而成的
97. 軟件產(chǎn)品在需求發(fā)生變化、運行環(huán)境發(fā)生變化或發(fā)現(xiàn)軟件產(chǎn)品本身的錯誤或不足時進(jìn)行相應(yīng)的軟件更新的難易程度叫做軟件的( )。
A. 可維護(hù)性 B. 可復(fù)用性 C. 兼容性 D. 正確性
98. 軟件產(chǎn)品可被全部或部分地再用于新的應(yīng)用的能力叫做軟件的( )。
A. 可維護(hù)性 B. 可復(fù)用性 C. 兼容性 D. 正確性
99. 軟件產(chǎn)品與其他軟件產(chǎn)品組合成一個整體的難易程度叫做軟件的( )。
A. 可維護(hù)性 B. 可復(fù)用性 C. 兼容性 D. 正確性
100. 軟件產(chǎn)品準(zhǔn)確執(zhí)行軟件需求規(guī)格說明書中所規(guī)定的任務(wù)的能力叫做軟件的( )。
A. 可維護(hù)性 B. 可復(fù)用性 C. 兼容性 D. 正確性
101. 面向?qū)ο筌浖_發(fā)中使用的OOA表示( )。
A. 面向?qū)ο蠓治? B. 面向?qū)ο笤O(shè)計
C. 面向?qū)ο笳Z言 D. 面向?qū)ο蠓椒?
102. 面向?qū)ο筌浖_發(fā)中使用的OOD表示( )。
A. 面向?qū)ο蠓治? B. 面向?qū)ο笤O(shè)計
C. 面向?qū)ο笳Z言 D. 面向?qū)ο蠓椒?
103. 關(guān)于面向?qū)ο笙到y(tǒng)分析,下列說法中不正確的是( )。
A. 術(shù)語“面向?qū)ο蠓治觥笨梢杂每s寫OOA表示
B. 面向?qū)ο蠓治鲭A段對問題域的描述比實現(xiàn)階段更詳細(xì)
C. 面向?qū)ο蠓治霭▎栴}域分析和應(yīng)用分析兩個步驟
D. 面向?qū)ο蠓治鲂枰R別對象的內(nèi)部和外部特征
104. 在一個類的定義中,包含有( )成員的定義。
A. 數(shù)據(jù) B. 函數(shù) C. 數(shù)據(jù)和函數(shù) D. 數(shù)據(jù)或函數(shù)
105. 在類作用域中能夠通過直接使用該類的( )成員名進(jìn)行訪問。
A. 私有 B. 公用 C. 保護(hù) D. 任何
106. 在關(guān)鍵字public后面定義的成員為類的( )成員。
A. 私有 B. 公用 C. 保護(hù) D. 任何
107. 在關(guān)鍵字private后面定義的成員為類的( )成員。
A. 私有 B. 公用 C. 保護(hù) D. 任何
108. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為( )。
A. x(a) B. x[a] C. x->a D. x.a
109. 假定AA為一個類,a()為該類公有的函數(shù)成員,x為該類的一個對象,則訪問x對象中函數(shù)成員a()的格式為( )。
A. x.a B. x.a() C. x->a D. x->a()
110. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,px為指向該類對象的一個指針,則訪問px所指對象中數(shù)據(jù)成員a的格式為( )。
A. px(a) B. px[a] C. px->a D. px.a
111. 假定AA為一個類,a為該類私有的數(shù)據(jù)成員,GetValue()為該類公有函數(shù)成員,它返回a的值,x為該類的一個對象,則訪問x對象中數(shù)據(jù)成員a的格式為( )。
A. x.a B. x.a() C. x->GetValue() D. x.GetValue()
112. 假定AA為一個類,int a()為該類的一個成員函數(shù),若該成員函數(shù)在類定義體外定義,則函數(shù)頭為( )。
A. int AA::a() B. int AA:a()
C. AA::a() D. AA::int a()
113. 假定AA為一個類,a為該類公有的數(shù)據(jù)成員,若要在該類的一個成員函數(shù)中訪問它,則書寫格式為( )。
A. a B. AA::a C. a() D. AA::a()
114. 若需要把一個類外定義的成員函數(shù)指明為內(nèi)聯(lián)函數(shù),則必須把關(guān)鍵字( )放在函數(shù)原型或函數(shù)頭的前面。
A. in B. inline C. inLine D. InLiner
115. 在多文件結(jié)構(gòu)的程序中,通常把類的定義單獨存放于( )中。
A. 主文件 B. 實現(xiàn)文件 C. 庫文件 D. 頭文件
116. 在多文件結(jié)構(gòu)的程序中,通常把類中所有非內(nèi)聯(lián)函數(shù)的定義單獨存放于( )中。
A. 主文件 B. 實現(xiàn)文件 C. 庫文件 D. 頭文件
117. 在多文件結(jié)構(gòu)的程序中,通常把含有main()函數(shù)的文件稱為( )。
A. 主文件 B. 實現(xiàn)文件 C. 程序文件 D. 頭文件
118. 一個C++程序文件的擴(kuò)展名為( )。
A. .h B. .c C. .cpp D. .cp
119. 在C++程序中使用的cin標(biāo)識符是系統(tǒng)類庫中定義的( )類中的一個對象。
A. istream B. ostream C. iostream D. fstream
120. 在C++程序中使用的cout標(biāo)識符是系統(tǒng)類庫中定義的( )類中的一個對象。
A. istream B. ostream C. iostream D. fstream
121. 假定AA是一個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)的類型為( )。
A. int B. char C. AA D. AA*
122. 假定AA是一個類,abc是該類的一個成員函數(shù),則參數(shù)表中隱含的第一個參數(shù)為( )。
A. abc B. *this C. this D. this&
123. 假定AA是一個類,“AA& abc();”是該類中一個成員函數(shù)的原型,若該函數(shù)存在對*this賦值的語句,當(dāng)用x.abc()調(diào)用該成員函數(shù)后,x的值( )。
A. 已經(jīng)被改變 B. 可能被改變
C. 不變 D.不受函數(shù)調(diào)用的影響
124. 假定AA是一個類,“AA* abc()const;”是該類中一個成員函數(shù)的原型,若該函數(shù)返回this值,當(dāng)用x.abc()調(diào)用該成員函數(shù)后,x的值( )。
A. 已經(jīng)被改變 B. 可能被改變
C. 不變 D. 受到函數(shù)調(diào)用的影響
125. 類中定義的成員默認(rèn)為( )訪問屬性。
A. public B. private C. protected D. friend
126. 結(jié)構(gòu)中定義的成員默認(rèn)為( )訪問屬性。
A. public B. private C. protected D. friend
127. 當(dāng)類中一個字符指針成員指向具有n個字節(jié)的存儲空間時,它所能存儲字符串的最大長度為( )。
A. n B. n+1 C. n-1 D. n-2
128. 在一個用數(shù)組實現(xiàn)的隊列類中,假定數(shù)組長度為MS,隊首元素位置為first,隊列長度為length,則隊尾(即最后一個)元素的位置為( )。
A. length+1 B. first+length
C. (first+length-1)%MS D. (first+length)%MS
129. 在一個用數(shù)組實現(xiàn)的隊列類中,假定數(shù)組長度為MS,隊首元素位置為first,隊列長度為length,則隊尾的后一個位置為( )。
A. length+1 B. first+length
C. (first+length-1)%MS D. (first+length)%MS
130. 在一個用數(shù)組實現(xiàn)的隊列類中,假定數(shù)組長度為MS,隊首元素位置為first,隊列長度為length,則隊首的后一個位置為( )。
A. first+1 B. (first+1)%MS
C. (first-1)%MS D. (first+length)%MS
131. 在一個用鏈表實現(xiàn)的隊列類中,假定每個結(jié)點包含的值域用elem表示,包含的指針域用next表示,鏈隊的隊首指針用elemHead表示,隊尾指針用elemTail表示,若鏈隊非空,則進(jìn)行插入時必須把新結(jié)點的地址賦給( )。
A. elemHead B. elemTail
C. elemHead->next和elemHead D. elemTail->next和elemTail
132. 在一個用鏈表實現(xiàn)的隊列類中,假定每個結(jié)點包含的值域用elem表示,包含的指針域用next表示,鏈隊的隊首指針用elemHead表示,隊尾指針用elemTail表示,若鏈隊為空,則進(jìn)行插入時必須把新結(jié)點的地址賦給( )。
A. elemHead B. elemTail
C. elemHead和elemTail D. elemHead或elemTail
133. 隊列具有( )的操作特性。
A. 先進(jìn)先出 B. 先進(jìn)后出 C. 進(jìn)出無序 D. 進(jìn)出任意
134. 棧具有( )的操作特性。
A. 先進(jìn)先出 B. 先進(jìn)后出 C. 進(jìn)出無序 D. 進(jìn)出任意
135. 對于一個類的構(gòu)造函數(shù),其函數(shù)名與類名( )。
A. 完全相同 B. 基本相同 C. 不相同 D. 無關(guān)系
136. 對于一個類的析構(gòu)函數(shù),其函數(shù)名與類名( )。
A. 完全相同 B. 完全不同 C. 只相差一個字符 D. 無關(guān)系
137. 類的構(gòu)造函數(shù)是在定義該類的一個( )時被自動調(diào)用執(zhí)行的。
A. 成員函數(shù) B. 數(shù)據(jù)成員 C. 對象 D. 友元函數(shù)
138. 類的析構(gòu)函數(shù)是一個對象被( )時自動調(diào)用的。
A. 建立 B. 撤消 C. 賦值 D. 引用
139. 一個類的構(gòu)造函數(shù)通常被定義為該類的( )成員。
A. 公用 B. 保護(hù) C. 私有 D. 友元
140. 一個類的析構(gòu)函數(shù)通常被定義為該類的( )成員。
A. 私有 B. 保護(hù) C. 公用 D. 友元
141. 假定AB為一個類,則執(zhí)行 “AB x;”語句時將自動調(diào)用該類的( )。
A. 帶參構(gòu)造函數(shù) B. 無參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 賦值重載函數(shù)
142. 假定AB為一個類,則執(zhí)行 “AB x(a,5);”語句時將自動調(diào)用該類的( )。
A. 帶參構(gòu)造函數(shù) B. 無參構(gòu)造函數(shù) C. 拷貝構(gòu)造函數(shù) D. 賦值重載函數(shù)
143. 假定AB為一個類,則執(zhí)行 “AB *s=new AB(a,5);”語句時得到的一個動態(tài)對象為_______。
A. s B. s->a C. s.a D. *s
144. 假定AB為一個類,則執(zhí)行 “AB r1=r2;”語句時將自動調(diào)用該類的( )。
A. 無參構(gòu)造函數(shù) B. 帶參構(gòu)造函數(shù) C. 賦值重載函數(shù) D. 拷貝構(gòu)造函數(shù)
145. 若需要使類中的一個指針成員指向一塊動態(tài)存儲空間,則通常在( )函數(shù)中完成。
A. 析構(gòu) B. 構(gòu)造 C. 任一成員 D. 友元
146. 當(dāng)類中的一個整型指針成員指向一塊具有n*sizeof(int)大小的存儲空間時,它最多能夠存儲( )個整數(shù)。
A. n B. n+1 C. n-1 D. 1
147. 假定一個類的構(gòu)造函數(shù)為 “A(int aa, int bb) {a=aa; b=aa*bb;}”,則執(zhí)行 “A x(4,5);”語句后,x.a和x.b的值分別為( )。
A. 4和5 B. 5和4 C. 4和20 D. 20和5
148. 假定一個類的構(gòu)造函數(shù)為 “A(int aa=1, int bb=0) {a=aa; b=bb;}”,則執(zhí)行 “A x(4);”語句后,x.a和x.b的值分別為( )。
A. 1和0 B. 1和4 C. 4和1 D. 4和0
149. 假定AB為一個類,則( )為該類的拷貝構(gòu)造函數(shù)的原型說明。
A. AB(AB x); B. AB(AB& x); C. void AB(AB& x); D. AB(int x);
150. 假定一個類的構(gòu)造函數(shù)為 “B(int ax, int bx): a(ax), b(bx) {}”,執(zhí)行 “B x(1,2),y(3,4);x=y;”語句序列后x.a的值為( )。
A. 1 B. 2 C. 3 D. 4
151. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,當(dāng)用戶不定義任何構(gòu)造函數(shù)時,系統(tǒng)為該類定義的無參構(gòu)造函數(shù)為( )。
A. AB() {a=0;} B. AB(int aa=0): a(aa) {}
C. AB(int aa): a(aa) {} D. AB() {}
152. 假定一個類AB只含有一個整型數(shù)據(jù)成員a,用戶為該類定義的帶參構(gòu)造函數(shù)可以為( )。
A. AB() {} B. AB(): a(0){}
C. AB(int aa=0) {a=aa;} D. AB(int aa) {}
153. 對于任一個類,用戶所能定義的構(gòu)造函數(shù)的個數(shù)至多為( )。
A. 0 B. 1 C. 2 D. 任意個
鏈接地址:http://m.zhongcaozhi.com.cn/p-1561718.html