22春學(xué)期(高起本1709-1803、全層次1809-2103)《程序設(shè)計(jì)基礎(chǔ)(上)》在線(xiàn)作業(yè)-00002
試卷總分:100 得分:100
一、單選題 (共 25 道試題,共 50 分)
1.已知“char s[][10]={"Microsoft","Visual","C++"};”,則語(yǔ)句“cout<<s[2];”會(huì)在屏幕上輸出##。
A.i
B.c
C.Visual
D.C++
2.已知“int a=10, *p, *&rp=p; rp=&a;*p+=20;cout<<a;”,則輸出為##。
A.10
B.20
C.30
D.程序有錯(cuò)誤
3.已知“int a=5, b, *p=&a;”,則下列語(yǔ)句中正確的是##。
A.&b=a;
B.b=*p;
C.*p=&b;
D.b=p;
4.下列個(gè)數(shù)值中,最大的數(shù)是( )。
A.7DH
B.(174)8
C.123
D.1111100B
5.下面關(guān)于循環(huán)語(yǔ)句的敘述中,正確的是##。
A.for循環(huán)只能用于循環(huán)次數(shù)已知的情況
B.for循環(huán)與while循環(huán)一樣,都是先執(zhí)行循環(huán)體后判斷條件
C.for循環(huán)體內(nèi)不能出現(xiàn)while語(yǔ)句
D.無(wú)論哪種循環(huán),都可以從循環(huán)體內(nèi)轉(zhuǎn)移到循環(huán)體外
6.已知函數(shù)原型“int fun(int, int);”,要定義一函數(shù)指針變量p使得“p=fun;”成立,則函數(shù)指針變量p的定義語(yǔ)句為##。
A.int (*p)(int, int);
B.int *p(int, int);
C.int *p[int, int];
D.以上選項(xiàng)都不對(duì)
7.已知fun()函數(shù)的函數(shù)原型為“void fun(int x, double y=3.5, char z='#');”,則下面的函數(shù)調(diào)用中,不合法的調(diào)用是##。
A.f(1);
B.f(2, 4.2);
C.f(3, 3.7, '*')
D.f(0, , '#')
8.如果需要一個(gè)變量只在某個(gè)函數(shù)中可以使用,且每次執(zhí)行函數(shù)時(shí)都重新定義并初始化該變量,那么這個(gè)變量應(yīng)定義為##。
A.局部變量
B.全局變量
C.靜態(tài)局部變量
D.靜態(tài)全局變量
9.已知“char s[]="university";”,則使用“cout<<s[3];”會(huì)在屏幕上輸出##。
A.n
B.i
C.v
D.iversity
10.關(guān)于C++和C語(yǔ)言的描述中,錯(cuò)誤的是( )。
A.C++是C語(yǔ)言的超集
B.C++對(duì)C語(yǔ)言進(jìn)行了擴(kuò)充
C.C++和C語(yǔ)言都是面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言
D.C++包含C語(yǔ)言的全部語(yǔ)法特征
11.下面程序的輸出結(jié)果為:87,則橫線(xiàn)處應(yīng)填入( )。 #include using namespace std; struct Student { char num[8]; char name[10]; int score[3]; } stu[]={{"1210101","Zhangsan",{87,97,67}},{"1210102","Lisi",{92,86,79}}}; int main() { cout<<##; return 0; }
A.stu[1].score[1]
B.stu[0].score[0]
C.stu[1].score[0]
D.stu[0].score[1]
12.32位的計(jì)算機(jī)系統(tǒng)指的是計(jì)算機(jī)的( )是32位。
A.內(nèi)存
B.硬盤(pán)
C.字長(zhǎng)
D.位長(zhǎng)
13.在C++中,要求操作數(shù)必須是整型的運(yùn)算符是( )。
A.%
B.&&
C./
D.<=
14.二進(jìn)制數(shù)1001101011轉(zhuǎn)換為等值的八進(jìn)制數(shù)是( )。
A.4651
B.1153
C.9AC
D.26B
15.C++源程序文件的擴(kuò)展名是( )。
A.DLL
B.C
C.CPP
D.EXE
16.運(yùn)算符優(yōu)先級(jí)按由高到低順序排列正確的是( )。
A.=,||,!=,%
B.=,%,||,!=
C.%,!=,||,=
D.||,!=,%,=
17.在訪問(wèn)二維數(shù)組中的某個(gè)元素時(shí),不可以用##指定待訪問(wèn)元素的行下標(biāo)或列下標(biāo)。
A.整型常量
B.整型變量
C.整型表達(dá)式
D.浮點(diǎn)型常量
18.C++規(guī)定,else與##相匹配。
A.同一列的if
B.同一行上的if
C.之后最近的if
D.之前最近的if
19.在C++中,表示單行注釋開(kāi)始的符號(hào)是( )。
A.{
B.//
C./*
D.;
20.表達(dá)式的'0'+30的值為( )。
A.30
B.95
C.78
D.錯(cuò)誤的表達(dá)式
21.已知x=3、y=5,則函數(shù)調(diào)用語(yǔ)句“fun(2*y-1,(++x,y))”中第2個(gè)實(shí)參的值為##。
A.9
B.3
C.4
D.5
22.已知“enum Color{Red, Green, Blue}; Color co;”,則下列語(yǔ)句正確的是##。
A.co=0;
B.co=Blue;
C.co=Green+1;
D.co++;
23.已知"int *p; fun(p);",其中,函數(shù)fun沒(méi)有返回值,且其形參定義為引用調(diào)用方式,則下列給出的fun函數(shù)原型中正確的是##。
A.void fun(int &a[]);
B.void fun(int[] &a);
C.void fun(int *&a);
D.void fun(int &*a);
24.在C++中,函數(shù)原型聲明中可以省略##。
A.函數(shù)類(lèi)型
B.函數(shù)名
C.形參類(lèi)型
D.形參名
25.C++語(yǔ)言對(duì)c語(yǔ)言做了很多改進(jìn),C++語(yǔ)言相對(duì)于C語(yǔ)言的最根本的變化是( )。
A.引進(jìn)了類(lèi)和對(duì)象的概念
B.允許函數(shù)重載,并允許設(shè)置缺省參數(shù)
C.規(guī)定函數(shù)說(shuō)明符必須用原型
D.增加了一些新的運(yùn)算符
二、判斷題 (共 25 道試題,共 50 分)
26.初始化列表只能在數(shù)組定義時(shí)使用。
27.全局變量和靜態(tài)變量如果不進(jìn)行初始化,系統(tǒng)會(huì)自動(dòng)初始化為0。
28.函數(shù)的形參也是全局變量
29.已知“int a[][3]={{1,2,3},{4,5,6}};”,則二維數(shù)組a的行長(zhǎng)為2。
30.已知“char s[][10]={"Microsoft","Visual","C++"};”,則使用“cout<<s[0];”會(huì)在屏幕上輸出“Microsoft”。
31.已知函數(shù)原型“double fun();”,要定義一個(gè)函數(shù)指針變量p指向該函數(shù)的首地址,則其定義語(yǔ)句為“double (*p)()=fun;”。
32.一個(gè)C++程序至少且僅能包含一個(gè)main()函數(shù)。main()函數(shù)是整個(gè)程序的入口,通過(guò)在main()函數(shù)中調(diào)用其他函數(shù)
33.SP結(jié)構(gòu)化程序設(shè)計(jì)方法也稱(chēng)面向過(guò)程的程序設(shè)計(jì)方法,反映了過(guò)程性編程的方法,根據(jù)執(zhí)行的操作來(lái)設(shè)計(jì)一個(gè)程序。
34.定義數(shù)組時(shí),數(shù)組的數(shù)據(jù)類(lèi)型必須是C++中基本數(shù)據(jù)類(lèi)型
35.已知p是一個(gè)int型指針變量,則語(yǔ)句“*p=10;”中的“*”是取內(nèi)容運(yùn)算符。
36.函數(shù)的默認(rèn)形參值可以在兩個(gè)位置指定:如果有函數(shù)聲明,則應(yīng)在函數(shù)聲明處指定;否則,直接在函數(shù)定義中指定。
37.下面程序段不能實(shí)現(xiàn)求n!功能。 int i=1, p=1,n; cin>>n; while(i<=n) { p*=i; ++i; }
38.表達(dá)式“x+1>y-2”是算數(shù)表達(dá)式。
39.? 如果一個(gè)指針指向的內(nèi)存空間中存儲(chǔ)的是常量,則只能使用該指針獲取內(nèi)存空間中的數(shù)據(jù),而不能使用該指針修改內(nèi)存空間中的數(shù)據(jù)。
40.面對(duì)問(wèn)題,需要找出解決問(wèn)題的方法,我們把這種能夠在有限的步驟內(nèi)解決問(wèn)題的過(guò)程和方法稱(chēng)為程序。
41.一個(gè)引用在初始化后,其所引用的對(duì)象可以改變。
42.如果在某個(gè)函數(shù)的函數(shù)體中定義了一個(gè)靜態(tài)局部變量,則該靜態(tài)局部變量的生存期與函數(shù)體的執(zhí)行期相同。
43.計(jì)算機(jī)中用兩個(gè)字節(jié)來(lái)存放一個(gè)漢字的編碼。
44.只能用枚舉常量為枚舉變量賦值。
45.在定義函數(shù)重載時(shí),函數(shù)名相同的函數(shù)形參列表也可以完全一樣。
46.使用if…else語(yǔ)句可以處理多選擇問(wèn)題,不會(huì)因?yàn)榍短讓哟翁喽鴮?dǎo)致程序的可讀性下降,也不容易出錯(cuò)。
47.已知“char s[10]="hello";”,則s[5]的值為'\0'。
48.如果結(jié)構(gòu)體變量中的某個(gè)成員仍然是結(jié)構(gòu)體類(lèi)型的,則要對(duì)數(shù)據(jù)成員進(jìn)行多層引用。
49.if else語(yǔ)句的測(cè)試條件表達(dá)式的類(lèi)型可以是任意類(lèi)型的表達(dá)式。
50.C++程序需要將數(shù)據(jù)放在內(nèi)存單元中,變量名就是內(nèi)存單元中數(shù)據(jù)的標(biāo)識(shí)符,通過(guò)變量名來(lái)存儲(chǔ)和訪問(wèn)相應(yīng)的數(shù)據(jù)。