2011-2012第一學(xué)期_地大武漢vc 考試題及答案
《2011-2012第一學(xué)期_地大武漢vc 考試題及答案》由會(huì)員分享,可在線閱讀,更多相關(guān)《2011-2012第一學(xué)期_地大武漢vc 考試題及答案(9頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、中國地質(zhì)大學(xué)(武漢)2011-2012學(xué)年第一學(xué)期
《高級(jí)語言程序設(shè)計(jì)(VC++)》考試筆試卷A
使用班級(jí): 考試日期:2011.12.08
一、 選擇題(在A、B、C、D中選擇一個(gè)正確的,每題1分,共30分。用答題紙答題,答案依次填在1~30答題號(hào)內(nèi))
1.以下各標(biāo)識(shí)符中,合法的用戶標(biāo)識(shí)符組為 1 。
A)PAd,P#d,b-b,abc,_0123,ssiped
B)cin,a10,CPP,float,del_word,signed
C)void,max,hiy,
2、
2.在VC++中,以下語句的輸出為 2 。
short int k=-1;
cout << k << , << (unsigned short)k <
3、下程序,其輸出為 4 。
#include
4、注釋中的單詞拼寫錯(cuò)誤 D)程序中注釋的多少不會(huì)影響所生成的可執(zhí)行文件的長(zhǎng)度 6.若給定條件表達(dá)式(m)?(a++):(a--),則其中表達(dá)式m 6 。 A)和(m==0)等價(jià) B)和(m==1)等價(jià) C)和(m!=0)等價(jià) D)和(m!=1)等價(jià) 7.在C++語言的if語句中,用作判斷的表達(dá)式為 7 。 A)關(guān)系表達(dá)式 B)邏輯表達(dá)式 C)算術(shù)表達(dá)式 D)任意表達(dá)式 8.設(shè)i和k都是int類型,則以下for循環(huán)語句 8 。 for(i=0,k=-1;k=1;i++,k++) cout << "****\n";
5、 A)判斷循環(huán)結(jié)束的條件不合法 B)是無限循環(huán) C)循環(huán)體一次也不執(zhí)行 D)循環(huán)體只執(zhí)行一次 9. 字符串”\”EOF=-\61\””的長(zhǎng)度是 9 。 A) 8 B) 9 C) 12 D) 非法字符串 10. 已知int a[3][2]={3,2,1}; 則表達(dá)式“a[0][0]/a[0][1]/a[0][2]”的值是 10 。 A) 0.166667 B) 1 C) 0 D) 錯(cuò)誤的表達(dá)式 11. 已知char a[ ][20]={“Beijing”, “
6、shanghai”, “tianjin”, “chongqing”}; 語句cout<
7、) int a[ ][3]={1,2,3,4,5,6}; D) int a[2, 3]={1,2,3,4,5,6};
14. 對(duì)字符數(shù)組s賦值,不合法的一個(gè)是 14 。
A) char s[ ]=”Beijing”; B) char s[20]={”Beijing”};
C) char s[20]; s=”Beijing”; D) char s[20]={‘B’,’e’,’i’,’j’,’i’,’n’,’g’};
15. 在一個(gè)C++源程序文件中,若要定義一個(gè)只允許在該源文件中所有函數(shù)使用的變量,則該變量需要使用的存儲(chǔ)類別是 15 。
A) ext 8、ern B) register C) auto D) static
16. 定義一個(gè)函數(shù)實(shí)現(xiàn)交換x和y的值,并將結(jié)果正確返回。能夠?qū)崿F(xiàn)此功能的是 16 。
A) swap(int x, int y){ int t; t=x; x=y; y=t; }
B) swap(int *x, int *y){ int t; t=x; x=y; y=t; }
C) swap(int *x, int *y){ int t; t= *x; *x = *y; *y=t; }
D) swap(int *x, int *y){ int *t; t=x; x=y; y=t; 9、}
17. 下面函數(shù)的功能是 17 。
void fun(char s1[ ], char s2[ ]) { while(*s2++=*s1++); }
A) 字符串比較 B) 字符串復(fù)制 C) 字符串連接 D) 字符串反向
18說明語句”int (*p)( );”的含義是 18 。
A) p是一個(gè)指向一維數(shù)組的指針變量 B) p是指針變量, 指向一個(gè)整型數(shù)據(jù)
C) p是一個(gè)指向函數(shù)的指針,該函數(shù)的返回值是一個(gè)整型 D) 以上都不對(duì)
19設(shè)有說明int (*p)[ ]; 其中的標(biāo)識(shí)符p是 19 。
A) 4個(gè)指向整 10、型變量的指針變量 B) 指向4個(gè)整型變量的函數(shù)指針
C) 一個(gè)指向具有4個(gè)整型元素的一維數(shù)組的指針
D) 具有4個(gè)指向整型變量的指針元素的一維指針數(shù)組
20已知:char s[100]; int i; 則引用數(shù)組元素的錯(cuò)誤的形式是 20 。
A) s[i+10] B) *(s+i) C) *(i+s) D) *((s++)+i)
21. 數(shù)學(xué)式在C++程序中對(duì)應(yīng)正確的表達(dá)式為 21 。
A. sqrt(sin(x)>0?sin(x):-sin(x)) B. sqrt(fabs(sinx))
C. sqrt(s 11、qrt(sinx*sinx)) D. fabs(sqrt(sin(x)))
22. 設(shè)int a[]={1,2,3,4},*p=a; 則 22 不能正確計(jì)算數(shù)組a的元素個(gè)數(shù)。
A. sizeof(a)/sizeof(int) B. sizeof(a)/sizeof(a[0])
C. sizeof(p)/sizeof(int) D. sizeof(a)/sizeof(1)
23. 以下敘述不正確的是 23 。
A. 在C++程序中,嚴(yán)格區(qū)分大小寫字母
B. 一個(gè)C++源程序有且僅有一個(gè)main 12、函數(shù)
C. 在C++程序中,注釋只能位于一條語句的后面
D. 一個(gè)C++程序總是從main函數(shù)開始執(zhí)行
24. 在C++語言程序中,當(dāng)調(diào)用函數(shù)時(shí), 24 。
A. 形、實(shí)參各占一個(gè)獨(dú)立存儲(chǔ)單元 B. 形、實(shí)參可以共用存儲(chǔ)單元
C. 可由用戶指定是否共用存儲(chǔ)單元 D. 由系統(tǒng)自動(dòng)確定是否共用存儲(chǔ)單元
25. 若有以下說明和語句,則 25 是對(duì)a數(shù)組元素的錯(cuò)誤引用。
int a[12]={0},*p[3],**pp=p,i;
for(i=0;i<3;i++) p[i]=&a[i*4];
A. a[12] B. 13、p[2][3] C. a[10] D. pp[0][1]
26. 下列敘述中,不正確的是 26 。
A. 類的構(gòu)造函數(shù)可以重載 B. 類的析構(gòu)函數(shù)可以重載
C. 一個(gè)類可以不定義構(gòu)造函數(shù) D. 一個(gè)類可以不定義析構(gòu)函數(shù)
27. 下列敘述中,不正確的是 27 。
A. 含純虛函數(shù)的類為抽象類 B. 不能直接由抽象類建立對(duì)象
C. 抽象類不能作為派生類的基類 D. 純虛函數(shù)不能定義其實(shí)現(xiàn)部分
28. 下列敘述中,不正確的是 28 。
A. this指針是指向當(dāng)前調(diào)用成員函數(shù)的對(duì) 14、象的指針
B. this指針可用于類中非靜態(tài)的數(shù)據(jù)成員和函數(shù)成員
C. this指針破壞了類的封裝性
D. this指針的類型與所指對(duì)象的類型相同
29. 若有以下語句,則輸出結(jié)果為 29 。
int a=2,b=1;
cout << a>b?"a大于b":"a小于b" << endl;
A. a大于b B. a小于b C. 1 D. 輸出語句有錯(cuò)
30. 已知宏定義:
#define N 3
#define Y(n) ((N+1)*n)
執(zhí)行語句z=2*(N+Y(5+1)); 15、后,變量z的值是 30 。
A. 42 B. 48 C. 52 D. 出錯(cuò)
二、填空題(每個(gè)空格1分,共30分。請(qǐng)將答案填寫在答題紙的相應(yīng)答題號(hào)內(nèi),每個(gè)答案只占一行)
●基本概念題,共5分
1. 執(zhí)行語句cout<<"x86\082\n";后,輸出結(jié)果為 1 。
2. 用new運(yùn)算符申請(qǐng)動(dòng)態(tài)對(duì)象時(shí),系統(tǒng)將自動(dòng)調(diào)用該對(duì)象的 2 。
3. 定義內(nèi)聯(lián)函數(shù)的方法是在函數(shù)的返回值類型之前增加關(guān)鍵字 3 。
4. 在多重繼承時(shí),若欲使公共基類只在派生類中產(chǎn)生一個(gè)拷貝,則應(yīng)在派生類中將該基類用關(guān)鍵字 4 16、 。
5. 在C++的I/O流類庫中,預(yù)定義了4個(gè)流,即cin、cout、cerr和clog,其中 5 不可重定向。
●閱讀程序題,共13分
6. [程序](2分)
#include 17、clude 18、 void main(void)
{ int k, a[10]={1, 2, 3, 4, 5};
for(f(a),k=0; k<5; k++) cout<
int k=1;
void f(int m)
{ m+=k; k+=m;
{ cha 19、r k=’B’; cout<< k - ‘A’ <<’\n’; }
cout< 20、(){ return x; }
};
class B {
protected:
int x;
public:
int& Access(){ return x; }
};
class C:public A,public B {
int y;
public:
C(int a,int b,int c)
{ A::x=a; B::x=b; y=c; }
int& Accessy(){ return y; }
};
class D:public C{
21、 int z;
public:
D(int a,int b,int c,int d):C(a,b,c){ z=d; }
int& Accessz(){ return z; }
};
void main()
{ D d(35,100,300,500);
d.A::Access()+=20; d.B::Access()+=d.B::Access();
cout< 22、;
}
程序的輸出第一行是 15 ,第二行是 16 。
11. [程序](2分)
#include 23、ectangle:public Shape {
int h,w;
public:
Rectangle(int c, int d) { h=c; w=d; }
int Area() { return h*w; }
};
void fun(Shape &s) { cout< 24、,共12分
12. 下面的程序是統(tǒng)計(jì)學(xué)生中A類學(xué)生與B類學(xué)生各多少。A類學(xué)生的標(biāo)準(zhǔn)
是平均分在80分以上,其余都是B類學(xué)生。
[程序](5分)
#include 25、main()
{ int a[][4]={{60,80,90,75},{75,85,65,77},{80,88,90,98},
{89,100,78,81},{62,68,69,75},{86,85,77,91}};
int i,A=0,B=0;
for(i=0;i 26、程序中,數(shù)組類DArr通過重載運(yùn)算符“<<”實(shí)現(xiàn)數(shù)組元素的順序查找。
順序查找法的思路是:從第一個(gè)元素開始,從前向后依次與關(guān)鍵字比較,直到找到此元素或查找到數(shù)組尾部時(shí)結(jié)束。若找到,返回此元素的下標(biāo);否則返回-1。
#include 27、b[i];
}else a=0,n=0;
}
~DArr(){ delete []a; }
int& Elem(int i) { return a[i]; }
int operator<<(int f) //在當(dāng)前對(duì)象中順序查找值為f的元素
{ for(int i=0;i 28、!=-1) //在d中查找值為2的元素
cout<<"找到指定元素,其下標(biāo)為"<
struct Lnode
{ double data;
Lnode* next;
};
void ShowList(Lnode* list)
{ if(list)
{ cout< 29、st->next) 27 ;
}
}
void AddToEnd(Lnode* New,Lnode*&head)
{ if(head==NULL) head=New;
else AddToEnd(New, 28 );
}
void DeleteList(Lnode*& head)
{ Lnode* p=head;
if(p)
{ head= 29 ; delete p;
if(head) 30 ;
}
}
void main()
{ Lnode* head= 30、NULL,*temp;
temp=new Lnode;
while(temp)
{ temp->next=NULL;
cout<<"data?";
cin>>temp->data;
if(temp->data>0) AddToEnd(temp,head);
else break;
temp=new Lnode;
}
ShowList(head);
DeleteList(head);
}
2011-2012學(xué)年第一學(xué)期
《高級(jí)語言程序設(shè)計(jì)(VC++)》考試筆試卷A參考答案
一、選擇題(每題1分,共30分) 31、
1D 2D 3B 4B 5C 6C 7D 8B 9A 10B 11C 12A 13C 14C 15D
16C 17B 18C 19C 20D 21A 22C 23C 24A 25A 26B 27C 28C 29D 30B
二、填空題(每個(gè)空格1分,共30分)
1 x86
2 構(gòu)造函數(shù)
3 inline 32、
4 virtual
5 cerr和clog
6 3
7 0 33、
8 6
9 求字符串的長(zhǎng)度
10 35345
11 35745 34、
12 1
13 5,6
14 4,6
15 55,200
35、16 300,500
17 50
18 20
19 int grade[]或int *grade
20 int &tA 36、
21 int&tB
22 size
23 sizeof(a[0])
24 n=m 37、
25 a[i]==f
26 d.Elem(i)
27 ShowList(list->next )
28 head->next
29 p->next
30 DeleteList(head)
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案