20秋《C++》作業(yè)1
試卷總分:100 得分:100
一、單選題 (共 10 道試題,共 40 分)
1.定義函數(shù) int show(int a,int b) { return a+b; } 則a被稱為函數(shù)的( )
A.形參
B.返回值
C.名字
D.實(shí)參
2.C++程序從( )開始執(zhí)行。
A.預(yù)處理命令
B.第一個(gè)函數(shù)的第一條語句
C.第一條語句
D.main函數(shù)的第一條語句
3.若有語句char a[]= "test";int b=strlen(a);則執(zhí)行語句后b的值為( )。
A.3
B.4
C.5
D.0
4.使用地址作為實(shí)參傳給形參,下列說法正確的是( )。
A.實(shí)參是形參的備份
B.實(shí)參與形參無聯(lián)系
C.實(shí)參與形參是同一對象
D.形參是實(shí)參的備份
5.在C++中,下列選項(xiàng)中是合法的八進(jìn)制數(shù)的是
A.127
B.091
C.0x12
D.01011
6.若在函數(shù)定義時(shí)省去類型標(biāo)識符,則系統(tǒng)默認(rèn)函數(shù)返回值類型為( )。
A.整形
B.浮點(diǎn)型
C.字符型
D.空類型
7.C++ 中不能用來組成循環(huán)結(jié)構(gòu)的關(guān)鍵字是( )
A.for
B.while
C.switch
D.do
8.int n=0; while(n=1)n++; while循環(huán)執(zhí)行次數(shù)是( )。
A.0次
B.1次
C.不確定次
D.無限次
9.說明語句在某一個(gè)類定義、函數(shù)定義或復(fù)合語句中的變量被稱為( )
A.全局變量
B.局部變量
C.形式變量
D.實(shí)際變量
10.C++源程序的擴(kuò)展名為( )。
A..c
B..cpp
C..c++
D..cplus
二、多選題 (共 8 道試題,共 32 分)
11.設(shè)有如下定義: int (*ptr)(); 則以下敘述中不正確的是( )
A.ptr是指向一維組數(shù)的指針變量
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針
BD
12.下面的表達(dá)式中值為0的是( )
A.3/5
B.5>>3
C.! 3
D.5%3
BC
13.下列函數(shù)中,可以作為虛函數(shù)的是( )
A.析構(gòu)函數(shù)
B.成員函數(shù)
C.普通函數(shù)
D.構(gòu)造函數(shù)
BC
14.C++語言中,下面的描述不正確的是( )
A.do-while語句構(gòu)成的循環(huán),當(dāng)while語句中的表達(dá)式值為非零時(shí)結(jié)束循環(huán)
B.do-while語句構(gòu)成的循環(huán)必須用break語句才能退出
C.不能使用do-while語句構(gòu)成的循環(huán)
D.do-while語句構(gòu)成的循環(huán),當(dāng)while語句中的表達(dá)式值為零時(shí)結(jié)束循環(huán)
BC
15.下列關(guān)于數(shù)組初始化的說法正確的是( )
A.若對數(shù)組a定義:"static int x[10];",則數(shù)組元素值均為0
B."int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值為9
C.對于"int x[10];"它的元素初值是不確定的
D."int x[10]={1,2,3,4,5};"是不合法的,因?yàn)閿?shù)組長度為10,而初始值僅有5個(gè)
C
16.若有以下定義和語句: int w[2][3],(*pw)[3]; pw=w; 則對w數(shù)組元素合法引用是( )
A.pw[0][0]
B.*(pw[1]+2)
C.*(w[0]+2)
D.*(pw+1)[2]
BC
17.有以下語句: char str[4][12]={"aaa","bbbb","ccccc","dddddd"},*strp[4]; int i; for(i=0;i< 4;i++)strp[i]=str[i]; ( )是對字符串的正確引用,其中0≤k< 4。
A.strp[k]
B.*strp
C.str[k]
D.strp
BC
18.關(guān)于派生類的說法不正確的是( )
A.派生類可顯現(xiàn)基類的任何函數(shù)成員
B.派生類可重載已有的函數(shù)成員
C.派生類可以擁有自己的新成員
D.派生類無法給基類的數(shù)據(jù)成員初始化
BD
三、答案來源:(www.) (共 7 道試題,共 28 分)
19.C++中的注釋可以幫助讀者閱讀源程序,但并不參與程序的運(yùn)行。
20.在私有繼承中,基類中所有成員對派生類都是不可見的。
21.C++是最開始提出類概念的語言
22.typedef是用來定義一些C++中沒有的新數(shù)據(jù)類型。
23.構(gòu)造函數(shù)可以聲明為虛函數(shù)。
24.某類中的友元類的所有成員函數(shù)可以存取或修改該類中的私有成員。
25.C++是一種以編譯方式實(shí)現(xiàn)的高級語言。
20秋《C++》作業(yè)2
試卷總分:100 得分:100
一、單選題 (共 10 道試題,共 40 分)
1.在int a=3,int *p=&a;中,*p的值是( )
A.變量a的地址值
B.變量p的地址值
C.3
D.無意義
2.下列程序的執(zhí)行結(jié)果為( ) #include<iostream.h> void main( ) { int n=10; int* pn=&n; int* &rn=pn; (*pn)++; cout<<"n="<<n<<","; (*rn)++; cout<<"n="<<n<<endl; }
A.n=11,n=12
B.n=11,n=11
C.n=10,n=11
D.n=11,n=10
3.下列程序段的輸出結(jié)果是( )。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j);cout<<k;
A.3
B.4
C.6
D.7
4.說明語句在某一個(gè)類定義、函數(shù)定義或復(fù)合語句中的變量被稱為( )
A.全局變量
B.局部變量
C.形式變量
D.實(shí)際變量
5.若有語句char a[]= "test";則數(shù)組a[]中共有( )個(gè)變量。
A.3
B.4
C.5
D.0
6.C++ 中不能用來組成循環(huán)結(jié)構(gòu)的關(guān)鍵字是( )
A.for
B.while
C.switch
D.do
7.函數(shù)調(diào)用自身被稱為( )。
A.繼承
B.重載
C.遞歸
D.多態(tài)
8.C++中用于進(jìn)行單行注釋的符號是( )。
A.//
B./
C./**/
D.*/
9.雙精度浮點(diǎn)型的類型說明符為( )
A.int
B.double
C.float
D.long
10.在C++中,函數(shù)原型不能標(biāo)識( )。
A.函數(shù)的返回類型
B.函數(shù)參數(shù)的個(gè)數(shù)
C.函數(shù)參數(shù)類型
D.函數(shù)的功能
二、多選題 (共 8 道試題,共 32 分)
11.若有以下定義和語句: int w[2][3],(*pw)[3]; pw=w; 則對w數(shù)組元素合法引用是( )
A.pw[0][0]
B.*(pw[1]+2)
C.*(w[0]+2)
D.*(pw+1)[2]
BC
12.已知x,y,z是整型變量,則下列選項(xiàng)中正確的是( )
A.if (x&&y) cout<<"x&&y"
B.if (x=y) cout<<"x=y"
C.if (x#y) cout<<"x#y"
D.if(x<>y) cout<<"x<>y"
BD
13.以下敘述中不正確的是( )
A.函數(shù)中的形式參數(shù)是局部變量
B.在一個(gè)函數(shù)內(nèi)的復(fù)合語句中定義的變量在本函數(shù)范圍內(nèi)有效
C.在一個(gè)函數(shù)內(nèi)定義的變量只在本函數(shù)范圍內(nèi)有效
D.函數(shù)的形式參數(shù)不可以說明為register變量
D
14.C++中類的派生方式有( )。
A.private
B.static
C.public
D.protected
CD
15.下列關(guān)于數(shù)組初始化的說法正確的是( )
A.若對數(shù)組a定義:"static int x[10];",則數(shù)組元素值均為0
B."int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值為9
C.對于"int x[10];"它的元素初值是不確定的
D."int x[10]={1,2,3,4,5};"是不合法的,因?yàn)閿?shù)組長度為10,而初始值僅有5個(gè)
C
16.C++語言中,下面的描述不正確的是( )
A.do-while語句構(gòu)成的循環(huán),當(dāng)while語句中的表達(dá)式值為非零時(shí)結(jié)束循環(huán)
B.do-while語句構(gòu)成的循環(huán)必須用break語句才能退出
C.不能使用do-while語句構(gòu)成的循環(huán)
D.do-while語句構(gòu)成的循環(huán),當(dāng)while語句中的表達(dá)式值為零時(shí)結(jié)束循環(huán)
BC
17.已知x,y,z是整型變量,則下列選項(xiàng)中正確的是( )
A.if (x&&y) cout<<"x&&y"
B.if (x=y) cout<<"x=y"
C.if (x#y) cout<<"x#y"
D.if(x<>y) cout<<"x<>y"
BD
18.設(shè)有以下定義: int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*ptr)[4]=a,*p=a[0]; 則下列表達(dá)式中,能正確表示數(shù)組元素a[2][1]的表達(dá)式有( )。
A.*(p+9)
B.*(*(a+2)+1
C.(*ptr+2)+1
D.*((*ptr+2)[1])
B
三、答案來源:(www.) (共 7 道試題,共 28 分)
19.類的私有成員只能被類中的成員函數(shù)訪問,任何類以外的函數(shù)對它們的訪問都是非法的。
20.sizeof(表達(dá)式)的功能是返回指定的表達(dá)式值的數(shù)據(jù)類型在內(nèi)存中占用的字節(jié)數(shù)。
21.說明或定義對象時(shí),類名前面不需要加class關(guān)鍵字。
22.同一個(gè)數(shù)組中的各個(gè)元素?cái)?shù)據(jù)類型一定相同。
23.在C++中,運(yùn)算符優(yōu)先級相同的情況下,按照從右向左的順序進(jìn)行計(jì)算。
24.for語句中的循環(huán)控制變量必須在for語句內(nèi)部進(jìn)行聲明。
25.一個(gè)函數(shù)中可以有多于一個(gè)return語句。
20秋《C++》作業(yè)3
試卷總分:100 得分:100
一、單選題 (共 10 道試題,共 40 分)
1.定義函數(shù) int show(int a,int b) { return a+b; } 則a被稱為函數(shù)的( )
A.形參
B.返回值
C.名字
D.實(shí)參
2.有如下語句 int i=1; do { i++; }while(i<10); 則程序執(zhí)行時(shí)循環(huán)執(zhí)行( )次。
A.0
B.8
C.9
D.10
3.所謂數(shù)據(jù)封裝就是將一組數(shù)據(jù)和與這組數(shù)據(jù)有關(guān)操作組裝在一起,形成一個(gè)實(shí)體,這實(shí)體也就是( )。
A.類
B.對象
C.函數(shù)體
D.數(shù)據(jù)塊
4.語句cout << setiosflags(ios::scientific) << setprecision(4) << a << endl; 中setprecision(4)的含義是( )
A.設(shè)置輸出域?qū)挒?
B.設(shè)置用八進(jìn)制輸出數(shù)據(jù)
C.設(shè)置浮點(diǎn)數(shù)的輸出精度為4
D.設(shè)置輸出數(shù)據(jù)的間距為4
5.指針變量是用來存放( )的變量。
A.其他變量的值
B.其他變量的變量名
C.函數(shù)名
D.地址
6.若有語句char a[]= "test";則數(shù)組a[]中共有( )個(gè)變量。
A.3
B.4
C.5
D.0
7.要禁止修改指針p本身,又要禁止修改p所指向的數(shù)據(jù),這樣的指針應(yīng)定義為( )。
A.const char *p=“ABCD”
B.char *const p=“ABCD”
C.char const *p=“ABCD”
D.const char * const p=“ABCD”
8.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,首先在問題域中識別出若干個(gè) ( )。
A.函數(shù)
B.類
C.文件
D.過程
9.C++源程序的擴(kuò)展名為( )。
A..c
B..cpp
C..c++
D..cplus
10.在while循環(huán)中使用( )語句可以立即跳出整個(gè)循環(huán)體。
A.continue
B.return
C.case
D.break
二、多選題 (共 8 道試題,共 32 分)
11.下列運(yùn)算符中,優(yōu)先級相同的是( )
A.~
B.%
C./
D.>
C
12.有關(guān)sizeof(double)不正確的描述是( )
A.一種函數(shù)調(diào)用
B.一個(gè)雙精度型表達(dá)式
C.一個(gè)整型表達(dá)式
D.一個(gè)不合法的表達(dá)式
BD
13.以下說法中不正確的是( )
A.C++語言程序總是從第一個(gè)函數(shù)開始執(zhí)行
B.C++語言程序總是從main()函數(shù)開始執(zhí)行
C.C++語言程序中的main()函數(shù)必須放在程序的開始部分
D.在C++語言程序中,要調(diào)用的函數(shù)必須在main()函數(shù)中定義
CD
14.下列關(guān)于數(shù)組初始化的說法正確的是( )
A.若對數(shù)組a定義:"static int x[10];",則數(shù)組元素值均為0
B."int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值為9
C.對于"int x[10];"它的元素初值是不確定的
D."int x[10]={1,2,3,4,5};"是不合法的,因?yàn)閿?shù)組長度為10,而初始值僅有5個(gè)
C
15.在C++語言中,不合法的字符常量是( )
A.\x43'
B.'ab'
C.'\084'
D."\0"
CD
16.已知x,y,z是整型變量,則下列選項(xiàng)中正確的是( )
A.if (x&&y) cout<<"x&&y"
B.if (x=y) cout<<"x=y"
C.if (x#y) cout<<"x#y"
D.if(x<>y) cout<<"x<>y"
BD
17.下面哪些是C++標(biāo)準(zhǔn)I/O操作包含的類對象( )
A.cin
B.cerr
C.clog
D.cout
BCD
18.下列關(guān)于數(shù)組初始化的說法正確的是( )
A.若對數(shù)組a定義:"static int x[10];",則數(shù)組元素值均為0
B."int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值為9
C.對于"int x[10];"它的元素初值是不確定的
D."int x[10]={1,2,3,4,5};"是不合法的,因?yàn)閿?shù)組長度為10,而初始值僅有5個(gè)
C
三、答案來源:(www.) (共 7 道試題,共 28 分)
19.C++是一種以編譯方式實(shí)現(xiàn)的高級語言。
20.for語句的格式為:for(表達(dá)式1;表達(dá)式2;表達(dá)式3) 語句若在for語句中省略3個(gè)表達(dá)式,則循環(huán)一定執(zhí)行無數(shù)次。
21.想要在程序中正確地使用自定義的函數(shù),則必須先聲明它,然后再定義它。
22.返回值類型、參數(shù)個(gè)數(shù)和類型都相同的函數(shù)也可以重載。
23.在C++中,可以通過在當(dāng)前類中將另一個(gè)類作為自己的友元類,來在另一個(gè)類中訪問當(dāng)前類的私有成員。
24.指針指向的內(nèi)存地址可以改變,與之類似,引用指向的變量也可以改變。
25.在公有繼承中,基類中的公有成員和私有成員在派生類中都是可見的。
20秋《C++》作業(yè)4
試卷總分:100 得分:100
一、單選題 (共 10 道試題,共 40 分)
1.在C++中,14%4的運(yùn)算結(jié)果為( )
A.1
B.2
C.3
D.4
2.若有語句char a[]= "test";int b=strlen(a);則執(zhí)行語句后b的值為( )。
A.3
B.4
C.5
D.0
3.下列程序段的輸出結(jié)果是( )。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j);cout<<k;
A.3
B.4
C.6
D.7
4.在while循環(huán)中使用( )語句可以立即跳出整個(gè)循環(huán)體。
A.continue
B.return
C.case
D.break
5.在int a=3,int *p=&a;中,*p的值是( )
A.變量a的地址值
B.變量p的地址值
C.3
D.無意義
6.函數(shù)調(diào)用func((exp1,exp2),(exp3,exp4,exp5))中所含實(shí)參的個(gè)數(shù)為( )。
A.1
B.2
C.4
D.5
7.語句cout << setiosflags(ios::scientific) << setprecision(4) << a << endl; 中setprecision(4)的含義是( )
A.設(shè)置輸出域?qū)挒?
B.設(shè)置用八進(jìn)制輸出數(shù)據(jù)
C.設(shè)置浮點(diǎn)數(shù)的輸出精度為4
D.設(shè)置輸出數(shù)據(jù)的間距為4
8.多個(gè)具有不同類型或個(gè)數(shù)參數(shù)的函數(shù)共用一個(gè)函數(shù)標(biāo)識名被稱為( )函數(shù)。
A.繼承
B.重載
C.遞歸
D.多態(tài)
9.要禁止修改指針p本身,又要禁止修改p所指向的數(shù)據(jù),這樣的指針應(yīng)定義為( )。
A.const char *p=“ABCD”
B.char *const p=“ABCD”
C.char const *p=“ABCD”
D.const char * const p=“ABCD”
10.C++中用于進(jìn)行單行注釋的符號是( )。
A.//
B./
C./**/
D.*/
二、多選題 (共 8 道試題,共 32 分)
11.下列關(guān)于數(shù)組初始化的說法正確的是( )
A.若對數(shù)組a定義:"static int x[10];",則數(shù)組元素值均為0
B."int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值為9
C.對于"int x[10];"它的元素初值是不確定的
D."int x[10]={1,2,3,4,5};"是不合法的,因?yàn)閿?shù)組長度為10,而初始值僅有5個(gè)
C
12.已知x,y,z是整型變量,則下列選項(xiàng)中正確的是( )
A.if (x&&y) cout<<"x&&y"
B.if (x=y) cout<<"x=y"
C.if (x#y) cout<<"x#y"
D.if(x<>y) cout<<"x<>y"
BD
13.下列關(guān)于數(shù)組初始化的說法正確的是( )
A.若對數(shù)組a定義:"static int x[10];",則數(shù)組元素值均為0
B."int x[10]={1,2,3,4,5,6,7,8,9};"表示x[9]元素值為9
C.對于"int x[10];"它的元素初值是不確定的
D."int x[10]={1,2,3,4,5};"是不合法的,因?yàn)閿?shù)組長度為10,而初始值僅有5個(gè)
C
14.設(shè)有以下定義: int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*ptr)[4]=a,*p=a[0]; 則下列表達(dá)式中,能正確表示數(shù)組元素a[2][1]的表達(dá)式有( )。
A.*(p+9)
B.*(*(a+2)+1
C.(*ptr+2)+1
D.*((*ptr+2)[1])
B
15.用編程語言編寫程序的完整流程包括以下哪些步驟( )
A.定義一個(gè)程序目標(biāo)
B.編譯
C.測試和調(diào)試
D.程序維護(hù)
BCD
16.已知x,y,z是整型變量,則下列選項(xiàng)中正確的是( )
A.if (x&&y) cout<<"x&&y"
B.if (x=y) cout<<"x=y"
C.if (x#y) cout<<"x#y"
D.if(x<>y) cout<<"x<>y"
BD
17.下面哪些是C++標(biāo)準(zhǔn)I/O操作包含的類對象( )
A.cin
B.cerr
C.clog
D.cout
BCD
18.設(shè)有如下定義: int (*ptr)(); 則以下敘述中不正確的是( )
A.ptr是指向一維組數(shù)的指針變量
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針
BD
三、答案來源:(www.) (共 7 道試題,共 28 分)
19.typedef是用來定義一些C++中沒有的新數(shù)據(jù)類型。
20.C++中的注釋可以幫助讀者閱讀源程序,但并不參與程序的運(yùn)行。
21.一個(gè)函數(shù)中可以有多于一個(gè)return語句。
22.當(dāng)一個(gè)函數(shù)體內(nèi)定義的局部變量和全局變量同名時(shí),程序會(huì)優(yōu)先選擇使用全局變量。
23.C++語言中不允許使用宏定義方法定義符號常量,只能用關(guān)鍵字const 來定義符號常量。
24.C++語言中,函數(shù)的聲明和函數(shù)的定義必須在同一個(gè)源文件內(nèi)。
25.C++中的函數(shù)都具有返回值。