do語句能夠改寫為語句練習
do語句能夠改寫為語句篇一:C++程序設計
單選題
1.C++源程序文件的缺省擴展名為。
A.cppB.exeC.objD.lik
2.由C++源程序文件編譯而成的目標文件的缺省擴展名為。
A.cppB.exeC.objD.lik
3.由C++目標文件連接而成的可執行文件的缺省擴展名為。
A.cppB.exeC.objD.lik
4.編寫C++程序一般需經過的幾個步驟依次是。
A.編譯、編輯、連接、調試
B.編輯、編譯、連接、調試
C.編譯、調試、編輯、連接
D.編輯、調試、編輯、連接
5.以下標識符中不全是保留字的是。
A.caseforint
B.defaultthenwhile
C.boolclasslong
D.gotoreturnchar
6.能作為C++程序的基本單位是。
A.字符B.語句C.函數D.源程序文件
7.程序中主函數的名字為。
A.mainB.MAINC.MainD.任意標識符
8.C++程序的基本模塊為。
A.表達式B.標識符C.語句D.函數
9.可用作C++語言用戶標識符的一組標識符是。
A.voiddefine+WORD
B.a3_b3_123YN
C.for-abcCase
D.2aDOsizeof
10.存儲以下數據,占用存儲字節最多的是。
A.0B.‘0’C.“0”D.0.0
11.程序運行中需要從鍵盤上輸入多于一個數據時,各數據之間應使用符號作為分隔符。
A.空格或逗號B.逗號或回車C.逗號或分號D.空格或回車
12.設”inta=12;”,則執行完語句”a+=a*a;”后,a的值是。
A.12B.144C.156D.288
13.
假設在程序中a、b、c均被定義成整型,所賦的值都大于1,則下列能正確表示代數式1的表達式是。abc
A.1.0/a*b*cB.1/(a*b*c)C.1/a/b/(float)cD.1.0/a/b/c
14.設”inta=15,b=26;”,則”cout<<(a,b);”的輸出結果是。
A.15B.26,15C.15,26D.26
15.設x是一個bool型的邏輯量,y的值為10,則表達式x&&y的值為。
A.1B.0C.與x值相同D.與x值相反
16.x>0&&x<=10的相反表達式為。
A.x<=0||x>10B.x<=0&&x>10
C.x<=0||x<=10d.x>0&&x>10
17.x>0||y==5的相反表達式為。
A.x<=0||y!=5B.x<=0&&y!=5
C.x>0||y!=5D.x>0&&y==5
18.設x和y均為bool量,則x&&y為真的條件是。
A.它們均為真B.其中一個為真
C.它們均為假D.其中一個為假
19.設x和y均為bool量,則x||y為假的條件是。
A.它們均為真B.其中一個為真
C.它們均為假D.其中一個為假
20.字符串”a+b=12 ”的長度為。
A.6B.7C.8D.9
21.假定下列x和y均為int型變量,則不正確的賦值為。
A.x+=y++B.x++=y++C.x=++yD.++x=++y
22.下列的符號常量定義中,錯誤的定義是。
A.constM=10;B.constintM=20;
C.constcharch;D.constboolmark=true;
23.循環語句“for(inti=0;i<n;i++)cout<<i*i<<’’;”中循環體執行的次數為
。
A.1B.n-1C.nD.n+1
24.在下面循環語句中循環體執行的次數為。
for(inti=0;i<n;i++)
if(i>n/2)break;
A.n/2B.n/2+1C.n/2-1D.n-1
25.在下面循環語句中內層循環體S語句的執行總次數為(D)。
for(inti=0;i<n;i++)
for(intj=i;j<n;j++)S;
2A.nB.(n+1)/2C.n(n-1)/2D.n(n+1)/2
26.在下面循環語句中循環體執行的次數為。
inti=0,s=0;while(s<20){i++;s+=i;}
A.4B.5C.6D.7
27.在下面循環語句中循環體執行的次數為(A)。
inti=0;doi++;while(i*i<10);
A.4B.3C.5D.2
28.當處理特定問題時的循環次數已知時,通常采用來解決。
A.for循環B.while循環C.do循環D.switch語句
29.循環體至少被執行一次的語句為。
A.for循環B.while循環C.do循環D.任一種循環
30.switch語句能夠改寫為語句。
A.forB.ifC.doD.while
31.do語句能夠改寫為語句。
A.復合B.ifC.switchD.while
32.在下面的一維數組定義中,哪一個有語法錯誤。
A.inta={1,2,3};B.inta[10]={0};
C.inta;D.inta[5];
33.在下面的字符數組定義中,哪一個有語法錯誤。。
A.chara[20]=”abcdefg”;B.chara=”x+y=55.”;
C.chara[15];D.chara[10]=’5’;
34.在下面的二維數組定義中,正確的是。
A.inta[5];B.inta[5];
C.inta[3]={{1,3,5},{2}};D.inta(10);
35.假定一個二維數組的定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[1][2]的值為。
A.2B.4C.6D.8
36.假定一個二維數組的定義語句為“inta[3][4]={{3,4},{2,8,6}};”,則元素a[2][1]的值為。
A.0B.4C.8D.6
37.若定義了函數double*function,則函數function的返回值為。
A.實數型B.實數的地址C.指向函數的指針D.函數的地址
38.以下說法中正確的是。
A.C++程序總是從第一個定義的函數開始執行
B.C++程序總是從main函數開始執行
C.C++函數必須有返回值,否則不能使用函數
D.C++程序中有調用關系的所有函數必須放在同一個程序文件中
39.以下敘述中不正確的是。
A.在一個函數中,可以有多條return語句
B.函數的定義不能嵌套,但函數的調用可以嵌套
C.函數必須有返回值
D.不同的函數中可以使用相同名字的變量
40.函數重載是指。
A.兩個或兩個以上的函數取相同的函數名,但形參的個數或類型不同
B.兩個以上的函數取相同的名字和具有相同的參數個數,但形參的類型可以不同
C.兩個以上的函數名字不同,但形參的個數或類型相同
D.兩個以上的函數取相同的函數名,并且函數的返回類型相同
41.以下關于函數模板敘述正確的是。
A.函數模板也是一個具體類型的函數
B.函數模板的類型參數與函數的參數是同一個概念
C.通過使用不同的類型參數,函數模板可以生成不同類型的函數
D.用函數模板定義的函數沒有類型
42.下列的調用方式是引用調用。
A.形參和實參都是變量B.形參是指針,實參是地址值
C.形參是引用,實參是變量D.形參是變量,實參是地址值
43.為了提高程序的運行速度,可將不太復雜的功能用函數實現,此函數應選擇。
A.內聯函數B.重載函數C.遞歸函數D.函數模板
44.函數原型語句正確的是。
A.intFunction(voida);B.voidFunction(int);
C.intFunction(a);D.voidint(doublea);
45.C++中函數返回值的類型是由決定的。
A.return語句中表達式的類型B.該函數定義時的類型
C.調用函數時的調用語句D.系統根據結果
46.以下函數的返回結果是。
intfunction(char){
char*p=x;while(*p++);return(p-x-1);
}
A.求字符串的長度B.將字符串x連接到字符串p后面
C.將字符串
x復制到字符串p中D.將字符串x反向存放
47.函數調用func((exp1,exp2),(exp3,exp4,exp5))中所含實參的個數為個。
A.1B.2C.4D.5
48.設有如下函數定義
intf(char*s){
char*p=s;
while(*p!=’’)p++;
return(p-s);
}
在主函數中用cout<<f(“good”)調用上述函數,則輸出結果為。
A.3B.4C.5D.6
49.以下正確的函數原型語句是。
A.doublefun(intx,inty)
B.doublefun(intx;inty)
C.doublefun(int,int);
D.doublefun(intx,y);
50.以下正確的說法是。
A.用戶調用標準庫函數前,必須重新定義
B.用戶可以重新定義標準庫函數,若如此,該函數將失去原有含義
C.系統不允許用戶重新定義標準庫函數
D.用戶調用標準庫函數前,不必使用預編譯命令將該函數所在文件包括到用戶源文件中
51.函數調用不可以。
A.出現在一個表達式中
B.出現在執行語句中
C.作為一個函數的實參
D.作為一個函數的形參
52.以下正確的描述是。
A.函數的定義可以嵌套,函數的調用不可以嵌套
B.函數的定義不可以嵌套,函數的調用可以嵌套
C.函數的定義和函數的調用均可以嵌套
D.函數的定義和函數的調用均不可以嵌套
53.若用數組名作為函數調用的實參,傳遞給形參的是。
A.數組的首地址B.數組中第一個元素的值
C.數組全部元素的值D.數組元素的個數
54.以下錯誤的描述是。
A.被調用函數中可以不用return語句
B.被調用函數中可以用多個return語句
C.被調用函數中,如果有返回值,就一定要有return語句
D.被調用函數中,一個return語句可返回多個值給調用函數
55.以下正確的描述是。
A.不允許設置參數的默認值
B.設置參數的默認值只能在定義函數時設置
C.設置參數的默認值時,應該設置右邊的參數
D.設置參數的默認值時,應該全部參數都設置
56.采用重載函數的目的是。
A.實現共享B.減少空間
C.提高速度D.使用方便,提高可讀性
57.將兩個字符串連接起來組成一個字符串時,選用函數。
A.strlenB.strcapC.strcatD.strcmp
58.以下敘述中正確的是。
A.使用#define可以為常量定義一個名字,該名字在程序中可以再賦另外的值
B.使用const定義的常量名有類型之分,其值在程序運行時是不可改變的
C.在程序中使用內聯函數使程序的可讀性變差
D.在定義函數時可以在形參表的任何位置給出缺省形參值
59.下面的標識符中,是文件級作用域。
A.函數形參B.語句標號C.外部靜態類標識符D.自動類標識符
60.以下敘述不正確的是。
A.宏替換不占用運行時間B.宏名無類型
C.宏替換只是字符替換D.宏名必須用大寫字母表示
61.C++語言的編譯系統對宏命令的處理是。
A.在程序運行時進行
B.在程序連接時進行
C.和C++程序的其它語句同時進行編譯
D.在對源程序中其它成分正式編譯之前進行
62.當#include后面的文件名用雙引號括起來時,尋找被包含文件的方式是。
A.直接按系統設定的標準方式搜索目錄
B.先在源程序所在目錄搜索,再按系統設定的標準方式搜索目錄
C.僅僅搜索源程序所在目錄
D.搜索當前邏輯盤上的所有目錄
63.當#include后面的文件名用尖括號括起來時,尋找被包含文件的方式是。
A.直接按系統設定的標準方式搜索目錄
B.先在源程序所在目錄搜索,再按系統設定的標準方式搜索目錄
C.僅僅搜索源程序所在目錄
D.搜索當前邏輯盤上的所有目錄
64.在下面存儲類中,對象的可見性與生存期不一致。
A.外部類B.自動類C.內部靜態類D.寄存器類
65.在下面存儲類中,的對象不是局部變量。
A.外部靜態類B.自動類C.函數形參D.寄存器類
do語句能夠改寫為語句篇二:C++程序設計
1.以下正確的說法是。
A.用戶調用標準庫函數前,必須重新定義
B.用戶可以重新定義標準庫函數,若如此,該函數將失去原有含義
C.系統不允許用戶重新定義標準庫函數
D.用戶調用標準庫函數前,不必使用預編譯命令將該函數所在文件包括到用戶源文件中答案:B
2.do語句能夠改寫為語句。
A.復合
B.if
C.switch
D.while
答案:D
3.循環語句“for(inti=0;i<n;i++)cout<<i*i<<’’;”中循環體執行的次數為。
A.1
B.n-1
C.n
D.n+1
答案:C
4.在下面循環語句中循環體執行的次數為。for(inti=0;i<n;i++)if(i>n/2)break;
A.n/2
B.n/2+1
C.n/2-1
D.n-1
答案:B
5.下列適宜采用inline定義函數情況是。
A.函數體含有循環語句
B.函數體含有遞歸語句
C.函數代碼少、頻繁調用
D.函數代碼多、不常調用
答案:C
6.定義p并使p指向動態空間中的包含30個整數的數組所使用的定義語句為。
A.int*p=newint[30];
B.int*p=newint(30);
C.int*p=new[30];
D.*p=newint[30];
答案:A
7.將兩個字符串連接起來組成一個字符串時,選用函數。
A.strlen
B.strcap
C.strcat
D.strcmp
答案:C
8.switch語句能夠改寫為語句。
A.for
B.if
C.do
D.while
答案:B
9.關于void指針,下列說法正確的是。
A.void指針就是不能指向任何數據的指針
B.void指針就是已定義而未初始化的指針
C.指向任何類型數據的指針可直接賦值給一個void指針
D.void指針值可直接賦給一個非void指針
答案:C
10.循環while(inti=0)i--;執行次數是。
A.0
B.1
C.5
D.6
答案:A
11.預處理命令在程序中都是以符號開頭的。
A.*
B.#
C.&
D.@
答案:B
12.以下能正確地定義整型變量a,b和c,并為其賦初值5的語句是。
A.inta=b=c=5;
B.inta,b,c=5;
C.a=5,b=5,c=5;
D.a=b=c=5;
答案:A
13.若有說明語句:charc='72'則變量c。
A.包含1個字符
B.包含2個字符
C.包含3個字符
D.說明不合法,c的值不確定
答案:A
14.可用作C++語言用戶標識符的一組標識符是。
A.voiddefine+WORD
B.a3_b3_123YN
C.for-abcCase
D.2aDOsizeof
答案:B
15.以下標識符中不全是保留字的是。
A.caseforint
B.defathenwhile
C.boolclasslong
D.gotoreturnchar
答案:B
16.下列變量名中,是合法的。
A.Forest
B.byte-size
C.double
D.A+a
答案:A
17.函數調用func((exp1,exp2),(exp3,exp4,exp5))中所含實參的個數為個。
A.1
B.2
C.4
D.5
答案:B
18.this指針存在的目的是。
A.保證基類私有成員在子類中可以被訪問
B.保證基類保護成員在子類中可以被訪問
C.保證每個對象擁有自己的數據成員,但共享處理這些數據成員的代碼
D.保證基類公有成員在子類中可以被訪問
答案:C
19.定義類的動態對象數組時,系統只能夠自動調用該類的對其進行初始化。
A.友員
B.析構函數
C.無參構造函數
D.類成員
答案:C
20.對兩個數組a和b進行如下初始化:chara="ABCDEF";charb={‘A’,‘B’,‘C’,‘D’
A.a和b數組完全相同
B.a和b中都存放字符串
C.sizeof(a)比sizeof(b)大
D.sizeof(a)與sizeof(b)相同
答案:C
21.對長度為N的線性表進行順序查找,在最壞情況下所需要的比較次數為。
A.N+1
B.N
C.(N+1)/2
D.N/2
答案:B
22.二維數組在內存中的存放順序是。
A.按行存放
B.按列存放
C.由用戶自己定義
D.由編譯器決定
答案:A
23.假如指針p已經指向某個整型變量x,則(*p)++相當于。
A.x++
B.p++
C.*(p++)
D.&x++
答案:A
24.如有數組intnum[5]={12,13,14,15,16};則num[0]的值為。
A.12
B.13
C.14
D.15
答案:A
25.若p1、p2都是指向整型的指針,p1已經指向變量x,要使p2也指向x,正確的是。
A.p2=p1;
B.p2=p1;
C.p2=&p1;
D.p2=*p1;
答案:A
26.有語句inta[10]={10,9,8,7,6,5,4,3,2,1},*p=a;則數值為2的表達式是。
A.a[9]
B.*p[8]
C.*(a+8)
D.p+8
答案:C
27.在C++中,訪問一個指針所指向的對象的成員所用的指向運算符是。
A.*
B.<<
C.->
D.=
答案:C
28.在面向對象的程序設計中,將一組對象的共同特性抽象出來形成。
A.對象
B.實例
C.類
D.數組
答案:C
29.在用C++進行程序設計時,最好用代替malloc。
A.new
B.
C.指針
D.循環
答案:A
30.不同對象可以調用相同名稱的函數,但執行完全不同行為的現象稱為。
A.繼承
B.訪問控制
C.派生
D.多態性
答案:D
31.若定義了函數double*function,則函數function的返回值為。
A.實數型
B.實數的地址
C.指向函數的指針
D.函數的地址
答案:B
32.所謂數據封裝就是將一組數據和與這組數據有關操作組裝在一起,形成一個實體,這實體也就
A.類
B.對象