




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2020年C程序設計考試題庫
【單選題】
1、在C++中,源程序變?yōu)榭蓤?zhí)行程序的正確順序應該是()。
A.編輯、鏈接、編譯、執(zhí)行B.編輯、編譯、鏈接、執(zhí)行
C.編譯、編輯、鏈接、執(zhí)行
D.編譯、鏈接、編輯、執(zhí)行
答案:B
分值:2
難度:1
知識點:1
2、要把高級語言編寫的源程序轉換為目標程序,需要使用()?
A.編輯程序
B.驅動程序
C.調試程序
D.編譯程序
答案:D
分值:2
難度:1
知識點:
3、下列關于C++與C語言的關系描述中,錯誤的是()。
A.C語言是C++語言的一個子集
B.C++與C語言是兼容的
C.C++對C語言進行了一些改進
D.C++和C語言都是面向對象的
答案:D
4、下面為使用面向對象語言的正確理由是()。
A.面向對象程序由三種基本結構組成,分別是順序結構、選擇結構和循環(huán)結構
B.程序語句比面向過程語言簡單
C.面向對象程序設計可以設計為自行修改錯誤
D.面向對象程序很容易概念化
答案:D
分值:2
難度:1
知識點:
5、以下選項中,合法的用戶標識符是()。
A.long
B._2Test
C.3Dmax
D.A.dat
答案:B
分值:2
難度:1
知識點:
6、下列描述中正確的是()。
A.不是每個C++程序都必須包含預處理命令#include
B.C++程序必須有relum語句
C.C++程序中的變量必須定義在主程序內部
D.C++程序中所使用的符號常量可以不進行定義
答案:A
分值:2
難度:1
知識點:
7、C++源程序文件的擴展名為()。
A..CPP
B..C
C..DLL
D..EXE
答案:A
分值:2
難度:1
知識點:
8、cout是10流庫預定義的()。
A.類
B.對象
C.包含文件
D,常量
答案:B
分值:2
難度:1
知識點:
9、C++對C語言作了很多改進,即從面向過程變成為面向對象的主要原因是()。
A.增加了一些新的運算符
B.允許函數重載,并允許設置缺省參數
C.規(guī)定函數說明符必須用原型
D,引進了類和對象的概念
答案:D
分值:2
難度:1
知識點:
10、下列選項中,()是不合法的標識符.
A.Program
B.Obj23
C.double
D.B_C_D
答案:c
分值:2
難度:1
知識點:
11、下列標識符中,不合法的用戶標識符為()。
A.a~!
B._int
C.a_10
D.PAd
答案:A
分值:2
難度:1
知識點:
12、只能向終端輸出一個字符的函數是()。
A.pringf函數
B.putchar函數
C.getchar函數
D.scanf函數
答案:B
分值:2
難度:1
知識點:
13、如果有整型量intx=5,執(zhí)行情況x+=1.9后x的值為()。
A.6
B.7
C.結果不確定
D.表達式非法
答案:A
分值:2
難度:1
知識點:
14、己知a=5,b=3,表達式a+=a*=++b*3的值為()。
A.40
B.80
C.100
D.120
答案:D
分值:2
難度:1
知識點:
15、下列語句彼此等價的是()。
A.!(a<10)&&!(a>0)和!((a<10)&&(a>0))
B.!(a==b)和(a>b)&&(a<b)
C.!((a>10)||(a<0))和(a<=10)&&(a>=0)
D.!(a>b)和avb
答案:C
16、定義如下變量:inti=2;intj=3;則i/j的結果為()。
A.0.66667
B.O
C.0.7
D.0.6666666666...
答案:B
分值:2
難度:1
知識點:
17、下面表達式的值為false的是()。
A.1<3&&5<7
B.!(2>4)
C.!(5<8)||(2<8)
D.3&&0&&1
答案:D
分值:2
難度:1
知識點:
18、設inta=3,b=4,c=5;表達式(a+b)>c&&b==c的值是()。
A.2
B.-1
C.0
D.1
答案:C
分值:2
難度:1
知識點:
19、下列符號中,不是分隔符的是()。
A.;
B.()
C.//
D.{)
答案:C
分值:2
難度:1
知識點:
20、在C++語言中,自定義的標識符()。
A.能使用關鍵字并且不區(qū)分大小寫
B,不能使用關鍵字并且不區(qū)分大小寫
C.能使用關鍵字并且區(qū)分大小寫
D.不能使用關鍵字并且區(qū)分大小寫
答案:D
分值:2
難度:1
知識點:
21、字符串常量"ME"的字符個數是()。
A.4
B.3
C.2
D.1
答案:B
分值:2
難度:1
知識點:
22、C++語言可執(zhí)行程序從()開始執(zhí)行。
A.程序中第一條可執(zhí)行語句
B.x=0,y=0,z=0
C.程序中的main函數
D.包含文件中的第一個函數
答案:C
分值:2
難度:1
知識點:
23、下列符號中,不是分隔符的是()。
A.;
B.[]
C.()
D.{)
答案:B
分值:2
難度:1
知識點:
24.在C++語言中,自定義的標識符()。
A.能使用關鍵字及標準標識符
B.不能使用關鍵字并且不區(qū)分大小寫
C.能使用關鍵字并且區(qū)分大小寫
D,不能使用關鍵字并且區(qū)分大小寫
答案:D
分值:2
難度:1
知識點:
25、在C++語言里,一條語句以()字符作為結束符。
A.,
B.;
C..
D.無符號
答案:B
分值:2
難度:1
知識點:
26、設以下變量都是int類型,則值不等于7的表達式是()。
A.x=y=6,x+y,x+l
B.x=y=6,x+y,y+l
C.x=6,x+1,y=6,x+y
D.y=6,y+1,x=y,x+1
答案:c
分值:2
難度:1
知識點:
27、x=l,y=l,z=l,執(zhí)行表達式w=++x||++y&&++z后,x、y、z的值分別為()。
A.x=2,y=l,z=l
B.x=2,y=2,z=2
C.x=l,y=l,z=l
D.x=2,y=2,z=l
答案:A
分值:2
難度:1
知識點:
28、用邏輯表達式表示“大于10而小于20的數”,正確的是()。
A.10<x<20
B.x>10||x<20
C.x>10&x<20
D.!(x<=10||x>=20)
答案:D
分值:2
難度:1
知識點:
29、設inta=10,b=11,c=12;表達式(a+b)<c&&b==c的值是()。
A.2
B.O
C.-2
D.1
答案:B
分值:2
難度:1
知識點:
30、整型變量i定義后賦初值inti=2.8*6的結果是()。
A.12
B.16
C.17
D.18
答案:B
分值:2
難度:1
知識點:
31、在C語言中合法的字符型常量是()。
A.'\t'
B."A"
C.65
D.a
答案:A
分值:2
難度:1
知識點:
32、C++語言程序的基本單位是()。
A.程序行
B.語句
C.函數
D.字符
答案:B
33、下列C++運算符中,優(yōu)先級最高的是()。
A.+(雙目)
B.*(單目)
C.<=
D.*=
答案:B
分值:2
難度:1
知識點:
34、在32位計算機中,一個ini型數據所占用的內存長度為多少字節(jié)()。
A.2
B.4
C.6
D.8
答案:B
分值:2
難度:1
知識點:
35.若變量a是int型,并執(zhí)行了語句:a='A'+1.6;,則正確的敘述是()。
A.a的值為字符C
B.a的值為浮點型
C.不允許字符型和浮點型數據相加
D.a的值為字符‘A'的ASCH值加1
答案:D
分值:2
難度:1
知識點:
36、下列十六進制整型常量的寫法中,正確的是()。
A.Oxaf
B.2f0x
C.021b
D.OxAE
答案:D
分值:2
難度:1
知識點:
37、C++對C語言作了很多改進,即從面向過程變成為面向對象的主要改進是()
A.增加了一些新的運算符
B.允許函數重載,并允許設置缺省參數
C.規(guī)定函數說明符必須用原型
D.引進了類和對象的概念
答案:D
分值:2
難度:1
知識點:
38、下列符號屬于C++語言用戶標識符的是()。
A.DO
B.if
C.void
D.switch
答案:A
分值:2
難度:1
知識點:
39、任意一個類,析構函數的個數最多是()?
A.不限個數
B.1
C.2
D.3
答案:B
分值:2
難度:1
知識點:
40'()函數是Windows應用程序開始執(zhí)行時的入口點。
A.WinMain()
B.Win()
C.Main()
D.Windows()
答案:A
分值:2
難度:1
知識點:
41、下列數據中不合法的C++實數是()。
A.3e-5
B..6
C.5.
D.6
答案:D
分值:2
難度:1
知識點:
42、下列數據中合法的C++字符常量是()。
A.'as'
B."a"
C.”23,
DJ\\'
答案:D
分值:2
難度:1
知識點:
43、表達式33/5的結果為()。
A.6
B.6.6
C.7
D.以上都不對
答案:A
分值:2
難度:1
知識點:
44、下列符號屬于C++語言用戶標識符的是()。
A.void
B.template
C.IF
D.switch
答案:C
分值:2
難度:1
知識點:
45、以下所列的C++語言常量中,錯誤的是()。
A.OxFF
B.1.2e0.5
C.2L
D.'\72r
答案:B
分值:2
難度:1
知識點:
46、若x=4,則x*=x+2的值為()。
A.36
B.24
C.18
D.20
答案:B
分值:2
難度:1
知識點:
47、以下運算符中,運算對象必須是整型的是()。
A./
B.%=
C.!=
D.〈=
答案:B
分值:2
難度:1
知識點:
48、能將數學表達式a<=c<=b表示為正確的C++表達式的是(
A.a<=c<=b
B.c<=a&&c>=b
C.c>=a&&c<=b
D.c>=a||c<=b
答案:c
分值:2
難度:1
知識點:
49、以下選項中,與k=n++完全等價的表達式是()。
A.k=n,n=n+l
B.n=n+l,k=n
C.k=++n
D.k+=n+l
答案:A
分值:2
難度:1
知識點:
【程序閱讀】
1、定義如下變量和數組:inti;intx[3][3]={1,2,34,5,6,7,8,9};
則語句for(i=0;i<3;i++)cout?x[i][l];的執(zhí)行結果是
答案:258
分值:4
難度:1
知識點:
2、以下程序的輸出結果是o
#include<iostream>
usingnamespacestd;
intmain()
inta=7,b=4,c=6,d;
cout?(d=a>b?(a>c?a:c):(b));
答案:7
分值:4
難度:1
知識點:
【程序改錯題】選做
【編程題】選做
【章節(jié)】第2章基本控制結構程序設計
【知識點】
1、算法的相關概念
2、C++語句及應用
3、C++程序的閱讀與設計、調試
【單選題】
1、結構化程序設計所規(guī)定的三種基本控制結構是()。
A.順序結構、選擇結構、循環(huán)結構
B.輸入、輸出、處理
C.for、while、switch
D.主程序、子程序、函數
答案:A
分值:2
難度:1
知識點:
2、當執(zhí)行以下程序段時,循環(huán)體將執(zhí)行().
intmain()
inty=1;
do{y—;}while(—y);
)
A.一次
B.兩次
C.無限次
D.系統(tǒng)將提示有語法錯誤
答案:C
分值:2
難度:1
知識點:
3.while(!x)中的(!x)與下面()條件等價.
A.x==l
B.x!=l
C.x!=0
D.x==0
答案:D
4、下面程序的輸出結果是()。
#include<iostream>
usingnamespacestd;
intmain()
(
intx=4;
do{
cout?(x-=3)?endl;
}while(—x);
)
A.1
B,1和-3
C.2和0
D.死循環(huán)
答案:A
分值:2
難度:1
知識點:
5、下列語句段將輸出字符’*’的個數為().
inti=100;
while(l)
1一;
if(i==0)break;
cout?
)
A.98個
B.99個
C.100個
D.101個
答案:B
分值:2
難度:1
知識點:
6、t為int類型,進入循環(huán)while(t=l){...}之前,t的值為0。則以下敘述中,正確的是()。
A.循環(huán)控制表達式的值為0
B.循環(huán)控制表達式的值為1
C.循環(huán)控制表達式不合法
D.以上說法都不對
答案:B
分值:2
難度:1
知識點:
7、為了避免在嵌套的條件語句if...else中產生歧義,C++規(guī)定的if...else語句的匹配原則是
()。
A.else子句與所排位置相同的if配對
B.else子句與其之前最近的if配對
C.else子句與其之后最近的if配對
D.else子句與同一行上的if配對
答案:B
分值:2
難度:1
知識點:
8、x=0;for(i=0;i<99;i++)if(i)x++;執(zhí)行完程序段后,x的值是().
A.0
B.30
C.98
D.90
答案:C
分值:2
難度:1
知識點:
9、下列程序的輸出結果是()。
#include<iostream>
usingnamespacestd;
voidmain()
{intx=l,a=0,b=0;
switch(x)
(
case0:b++;
case1:a++;
case2:a++;b++;
)
cout?"a="VVa?"b="vvb;
}
A.a=2b=l
B.a=lb=l
C.a=lb=0
D.a=2b=2
答案:A
分值:2
難度:1
知識點:
10、下列給字符數組進行初始化的語句中,()是正確的。
A.charsl[]="abcdn;
B.chars2[3]=,'xyzH;
C.chars3[][]={'a7x7y');
D.chars4⑵[3]={“xyz”,“mnp”!;
答案:A
分值:2
難度:1
知識點:
11、下列程序段中循環(huán)體執(zhí)行的次數為()。
intk=10;while(k==1)k=k-1;
A.循環(huán)體語句一次都不執(zhí)行
B.循環(huán)體語句執(zhí)行無數次
C.循環(huán)體語句執(zhí)行一次
D.循環(huán)體語句執(zhí)行9次
答案:A
分值:2
難度:1
知識點:
12、執(zhí)行以下程序段后,變量i的值為().
inti=2;
switch(i)
{case1:i+=10;
case2:i+=10;
case3:i++;break;
default:i++;break;}
A.24
B.14
C.12
D.13
答案:D
分值:2
難度:1
知識點:
13、C++語言中規(guī)定,if語句的嵌套結構中,else總是與()配對。
A.與最近的if配套
B.與第一個if配套
C.與縮進位置相同的if配套
D.與最近的且尚未配對的if配套
答案:D
分值:2
難度:1
知識點:
【程序閱讀題】
1、寫出以下程序的輸出結果
#include<iostream>
usingnamespacestd;
intmain()
(
inta=7,b=4,c=6,d;
cout?(d=a>b?(a>c?a:c):(b));
)
答案:7
分值:4
難度:1
知識點:
2、寫出以下程序的輸出結果
#include<iostream>
usingnamespacestd;
intmain()
(
inta=0,i;
for(i=1;i<5;i++)
(
switch(i)
(
case0:
case3:a+=2;
case1:
case2:a+=3;
default:a+=5;
)
)
cout?a?endl;
return0;
)
答案:31
分值:4
難度:2
知識點:
【編程題】選做
1、打印出所有的水仙花數。(所謂水仙花數是指一個三位數,其各位數字立方和等于該數本
身)
答案:pa201.c
#include<iostream>
usingnamespacestd;
voidmain()
{intn,a,b,c;
for(n=100;n<1000;n++)
{a=n%10;
b=n/10%10;
c=n/100;
if(a*a*a+b*b*b+c*c*c==n)
cout?n?,\t,;
)
)
結果:結果文件名??蛇x,程序輸入結果文件。沒有輸出文件則為【src】另起一行屏幕顯
不結果。
素材:
分值:10
難度:
知識點:
2、輸入100到200之間的所有素數。(所謂素數是指除了1和它本身外,不能被其他數所整
除的數)
答案:pa202.c
#include<iostream>
usingnamespacestd;
voidmain()
{intm;
for(m=100;m<=200;m++)
if(prime(m))
cout?m?,\t,;
)
intprime(intm)
{inti,k=l;
if(m<=l)k=0;
for(i=2;i<m;i++)
if(m%i==0)k=0;
returnk;
)
結果。
素材:
分值:10
難度:
知識點:
3、打印如下圖形:
*
***
*****
答案:pa203.c
#include<iostream>
usingnamespacestd;
intmain(){
inti,j;
for(i=l;i<=4;i++)
{for(j=l;j<=4-i;j++)
coutw'
for(j=1,j<=2*i-l;j++)
cout?^*^;
cout?endl;}
return0;)
結果。
素材:
分值:10
難度:
知識點:
【章節(jié)】第3章函數
【知識點】
1、C++函數的相關知識
2、函數定義與函數的調用
3、內聯(lián)函數與函數重載
【單選題】
1、在VisualBacic中,要使一個窗體不可見,但不從內存中釋放,應使用的語句是()。
A.Show
B.Hide
C.Load
D.Unload
答案:B
難度:1
分值:2
知識點:1
1、若有以下函數調用語句,在此函數調用語句中實參的個數是()。
fun(a+b,(y=10,y),fun(n,k,d));
A.3
B.4
C.5
D.6
答案:A
分值:2
難度:1
知識點:
2、以下程序的運行結果是()。
intmain()
{intk=4,m=l,p;
p=func(k,m);
cout?p?endl;
p=func(k,m);
cout?p?endl;
)
func(inta,intb)
{staticintm,i=2;
i+=m+1;
m=i+a+b;
return(m);
)
A.8,17
B.8,16
C.8,20
D.8,8
答案:A
分值:2
難度:1
知識點:
3.以下函數調用語句中,含有的實參個數是().
func(rec1,rec2+1,(rec3,rec4));
A.3
B.4
C.5
D.有語法錯誤
[答案]A
4.分析如下程序:
#include<iostream>
intf(intb[],intn)
{inti,r=l;
for(i=0;i<=n;i++)
r=r*b[i];
returnr;
)
voidmain(){
intx,a口={2,3,4,5,67,8,9};
x=f(a,3);
cout?x?endl;
)
上面程序的輸出結果是()。
A.720
B.120
C.24
D.6
答案:B
分值:2
難度:1
知識點:
5、下列函數參數默認值定義錯誤的是()。
A.Fun(intx,inty=0)
B.Fun(intx=100)
C.Fun(intx=0,inty)
D.Fun(inlx=f())(假定函數f()已經定義)
答案:C
分值:2
難度:1
知識點:
6、在函數定義前加上關鍵字“inline”表示該函數被定義為()。
A.重載函數
B.內聯(lián)函數
C.成員函數
D.普通函數
答案:B
分值:2
難度:1
知識點:
7、一個函數功能不太復雜,但要求被頻繁調用,選用()。
A.內聯(lián)函數
B.重載函數
C.遞歸函數
D.嵌套函數
答案:A
分值:2
難度:1
知識點:
8、下面有關重載函數的說法中正確的是()。
A.重載函數必須具有不同的返回值類型
B,重載函數形參個數必須不同
C.重載函數必須有不同的形參列表
D,重載函數名可以不同
答案:C
分值:2
難度:1
知識點:
9、在C++語言中,對函數參數默認值描述正確的是()。
A.函數參數的默認值只能設定一個
B.一個函數的參數若有多個,則參數默認值的設定可以不連續(xù)
C.函數必須設定默認值
D.在設定參數的默認值后,該參數后面定義的所有參數都必須設定默認值
答案:D
分值:2
難度:1
知識點:
10、考慮函數原型voidtest(inta,intb=7,charz='*'),下面的函數調用中,屬于不合法調用的是
A.test(5);
B.test(5,8);
C.test(6,'#');
D.test(O,O;*');
答案:C
分值:2
難度:1
知識點:
11、以下對C++函數的有關描述中,正確的是()。
A.C調用函數時,只能把實參的值傳給形參,形參的值不能傳遞給實參
B.C++函數既可以嵌套定義又可以遞歸調用
C.函數必須有返回值,否則不能使用函數
D.C++程序中有調用關系的所有函數必須放在同一源程序文件中
答案:A
分值:2
難度:1
知識點:
12、在C++語言中函數返回值的類型是由()決定的。
A.調用該函數時系統(tǒng)臨時
B.return語句中的表達式類型
C.定義該函數時所指定的函數類型
D.調用該函數時的主調函數類型
答案:C
分值:2
難度:1
知識點:
13、以下程序的輸出結果是()。
intfunc(inta,intb)
{returna+b;}
intmain()
{intx=6,y=7,z=8,r;
r=func(func(x,y),z-);
cout?r?endl;
A.15
B.20
C.21
D.31
答案:c
分值:2
難度:1
知識點:
14、以下程序的輸出結果是()。
voidfun(inta,c)
{a=456;b=567;c=678;}
intmain()
{intx=10,y=20,z=30;
fun(x,y,z);
cout?z?,,,,,?y?,7,?x?endl;
)
A.30,20,10
B.10,20,30
C.456,567,678
D.678,567,456
答案:A
分值:2
難度:1
知識點:
15、C++語言中,形參與實參之間的數據傳遞方式是()。
A.只能按值傳遞
B.只能按地址傳遞
C.既可以按值傳遞也可以按地址傳遞
D.以上說法都不對
答案:C
分值:2
難度:1
知識點:
16、分析以下程序:
#include<iostream>
voidfun(inlnum){cout?num?endl;}
voidfun(charch){cout?(ch+1)?endl;}
intmain(){
fun('A*);
return0;
)
以上程序的輸出結果是()。
A.65
B.66
C.A
D.B
答案:B
分值:2
難度:1
知識點:
17、一個函數為voidf(intx,chary='a'),另一個函數為voidf(int),貝坨們()。
A.不能在同一程序塊中定義
B.可以在同一個程序塊中定義并可重載
C.可以在同一個程序塊中定義,但不可以重載
D,以上說法均不正確
答案:A
分值:2
難度:1
知識點:
18、函數定義為Fun(int&i),變量定義n=100,則下面調用正確的是()。
A.Fun(20)
B.Fun(20+n)
C.Fun(n)
D.Fun(&n)
答案:c
分值:2
難度:1
知識點:
19、當一個函數無返回值時,函數的類型應為()。
A.任意
B.void
C.int
D.char
答案:B
分值:2
難度:1
知識點:
20、下列帶缺省值參數的函數說明中,正確的說明是()。
A.intFun(intx,inty=2,intz=3);
B.intFun(intx=l,inty,intz=3);
C.intFun(intx,inty=2,intz);
D.intFun(intx=l,inty,intz=3);
答案:A
分值:2
難度:1
知識點:
21、下列函數參數默認值定義錯誤的是()。
A.Fun(intx,inty=0)
B.Fun(inlx=100)
C.Fun(intx=0,inty)
D.Fun(intx=f())(假定函數f()已經定義)
答案:C
分值:2
難度:1
知識點:
22、在函數定義前加上關鍵字“inline”表示該函數被定義為()。
A.重載函數
B.內聯(lián)函數
C.成員函數
D.普通函數
答案:B
分值:2
難度:1
知識點:
23、一個函數功能不太復雜,但要求被頻繁調用,選用()。
A.內聯(lián)函數
B.重載函數
C.遞歸函數
D.嵌套函數
答案:A
分值:2
難度:1
知識點:
24、下面有關重載函數的說法中正確的是()。
A.重載函數必須具有不同的返回值類型
B,重載函數形參個數必須不同
C.重載函數必須有不同的形參列表
D.重載函數名可以不同
答案:C
分值:2
難度:1
知識點:
25、在C++語言中,對函數參數默認值描述正確的是()。
A.函數參數的默認值只能設定一個
B.一個函數的參數若有多個,則參數默認值的設定可以不連續(xù)
C.函數必須設定默認值
D.在設定參數的默認值后,該參數后面定義的所有參數都必須設定默認值
答案:D
分值:2
難度:1
知識點:
26、考慮函數原型voidtest(inta,intb=7,charz="*'),下面的函數調用中,屬于不合法調用的是
()。
A.test(5);
B.test(5,8);
C.test(6,'#');
D.test(O,O,,*,);
答案:c
分值:2
難度:1
知識點:
27、以下對C++函數的有關描述中,正確的是()。
A.C調用函數時,只能把實參的值傳給形參,形參的值不能傳遞給實參
B.C++函數既可以嵌套定義又可以遞歸調用
C.函數必須有返回值,否則不能使用函數
D.C++程序中有調用關系的所有函數必須放在同一源程序文件中
答案:A
分值:2
難度:1
知識點:
28、在C++語言中函數返回值的類型是由()決定的。
A.調用該函數時系統(tǒng)臨時
B.return語句中的表達式類型
C.定義該函數時所指定的函數類型
D.調用該函數時的主調函數類型
答案:C
分值:2
難度:1
知識點:
29、以下程序的輸出結果是()。
intfunc(inta,intb)
{returna+b;}
intmain()
{intx=6,y=7,z=8,r;
r=func(func(x,y),z-);
cout?r?endl;
}
A.15
B.20
C.21
D.31
答案:C
分值:2
難度:1
知識點:
30、以下程序的輸出結果是()。
voidfun(inta,intb,intc)
{a=456;b=567;c=678;}
intmain()
(intx=10,y=20,z=30;
fun(x,y,z);
cout?z?,,,,,?y?,7,?x?endl;
)
A.30,20,10
B.10,20,30
C.456,567,678
D.678,567,456
答案:A
分值:2
難度:1
知識點:
【程序閱讀、分析題】
1、寫出下面程序的運行結果
#include<iostream>
usingnamespacestd;
intfun(intn)
(
staticintm=2;
m=m+n;
returnm;
)
intmain()
(
inta=3,b=4;
intx;
x=fun(a);
x=fun(b);
cout?x?endl;
return0;
)
答案:9
分值:4
難度:3
知識點:
2、寫出以下程序的輸出結果
#include<iostream>
usingnamespacestd;
voidfun()
{staticinta=0;
a+=2;
cout?a;
)
intmain()
{intcc;
for(cc=l;cc<4;cc++)
fun();
cout?endl;
return0;
)
答案:246
分值:4
難度:3
知識點:
3、閱讀下面程序:
#include<iostream>
usingnamespacestd;
longfib(intn)
{if(n>2)
return(fib(n-1)+fib(n-2));
else
return2;
)
intmain()
{cout?fib(3)?endl;
return0;
)
則程序的輸出結果是:
答案:4
分值:4
難度:1
知識點:
4、寫出程序運行的結果。
#include<iostream>
usingnamespacestd;
inti=l;
intmain(void)
(
inta=3;
intb=-10;
staticintc=0;
voidother(void);
cout?"…MAIN…\n";
cout?"i:n?i?na:,'?a++?nb:M?b?Hc:"?c?endl;
c=c+8;other();
cout?n—MAIN—\nM;
cout?ni:M?i?"a:n?++a?nb:,,?b?nc:M?c?endl;
i=i+10;other();
system("pause");
return0;
)
voidother(void)
(
staticinta=2;
staticintb;
intc=10;
a+=2;i+=30;c+=5;
cout?n—OTHER—\nH;
cout?ni:a:n?a?"b:c:n?c?endl;
b=a;
)
答案:
--MAIN---
i:1a:3b:-10c:0
—OTHER--
i:31a:4b:0c:15
—MAIN一
i:31a:5b:-10c:8
—OTHER—
i:71a:6b:4c:15
分值:4
難度:4
知識點:
5、寫出下列程序的運行結果。
#include<iostream>
usingnamespacestd;
intfun(intx)
(
if(x<=1)
(
return1;
)
else
returnx*fun(x-1);
)
intmain()
(
intn;
n=fun(4);
cout?n?endl;
return0;
)
答案:24
分值:2
難度:1
知識點:
6、寫出以下程序的執(zhí)行結果
#include<iostream>
usingnamespacestd;
intmaxl(intx,inty,intz)
(
return(y>z?y:z);
)
doublemaxi(doublex,doubley)
(
return(x>y?x:y);
}
doublemax1(doublex,doubley,doublez)
(
doubletemp1=maxl(x,y);
return(y>z?y:z);
)
intmain()
(
intx2;
doubledl,d2;
x2=max1(2,34);
dl=max1(2.1,5.6);
d2=maxl(12.3,3.4,7.8);
cout?nx2=n?x2?endl;
cout?"dl=n?dl?endl;
cout?,'d2=,*?d2?endl;
system("pause");
1
答案:
x2=4
dl=5.6
d2=7.8
分值:4
難度:3
知識點:
7、寫出下列程序的運行結果。
#include<iostream>
usingnamespacestd;
intfun(intx)
(
if(x<=0)
(
return0;
)
else
returnx*x+fun(x-1);
)
intmain()
(
intx=fun(3);
cout?x?endl;
return0;
1
答案:14
分值:4
難度:2
知識點:
8、寫出下列程序的運行結果。
#include<iostream>
usingnamespacestd;
intfun(inta=10,intb=100)
(
returna+b;
}
intmain()
(
intx=100;
cout?fun(x)?endl;
return0;
(
答案:200
分值:4
難度:1
知識點:
9、寫出下列程序的運行結果。
#include<iostream>
usingnamespacesld;
voidfun(inta[],intn,int&s)
(
s=0;
for(inti=0;i<n;i+=2)
s+=a[i];
)
intmain()
(
intx[5]={2,7,5,4,9);
intm;
fun(x,5,m);
cout?m?endl;
return0;
)
答案:16
分值:2
難度:1
知識點:
10、寫出下列程序的運行結果。
#include<iostream>
usingnamespacestd;
intmax(intx,inty)
(
returnx>y?x:y;
}
intmax(intx,inty,intz)
(
intt;
t=max(x,y);
returnt>z?t:z;
)
intmain()
(
intx=5,y=8,z=3;
cout?max(x,y,z)?endl;
return0;
)
答案:8
分值:2
難度:1
知識點:
11、運行下列程序
longfib(intg)
{switch(g)
{case0:return0;
case1:return1;
case2:return1;
)
return(fib(g-l)+fib(g-2));
)
main()
{longk;
k=fib(5);
cout?k?endl;
1
其輸出結果是:
答案:5
分值:4
難度:1
知識點:
【編程題】選做
1、設計兩個函數,分別求兩個數的最大公約數和最小公倍數。
答案:pa301.txt
#include<iostream>
usingnamespacestd;
maxCommonDevisor(intn,intm){
inti;
for(i=n;i>=l;i-)
if(n%i==0&&m%i==0)break;
returni;J
minCommonMultiple(intn,intm){
inti;
for(i=n;i<=n*m;i++)
if(i%n==0&&i%m==0)break;
returni;}
intmain(){
inti,j;
coul<v”請輸入兩個整數:,'?endl;
cin?i?j;
cout<<”最大公約數:n?maxCommonDevisor(ij)
<<+'<<"最小公倍數:"?minCommonMultiple(i,j)?endl;
return0;)
分值:10
難度:
知識點:
2、設計兩個重載函數,分別求兩個整數相除的余數和兩個實數相除的余數。兩個實數求余
定義為實數四舍五入取整后相除的余數。
答案:pfa302.txt
#include<iostream>
#include<cmath>
usingnamespacestd;
mod(intn,intm){
returnn%m;
)
round(doublex){//四舍五入函數
if(x>=0)returnint(x+0.5);
elsereturnint(x-0.5);
)
mod(doublex,doubley){
returnround(x)%round(y);
)
intmain(){
cout?nmod(8,3)=,,<<mod(8,3)?endl;
cout?,'mod(8.2,3.6)=,,?mod(8.2,3.6)?endl;
cout?nmod(-8.2,-2.6)=n?mod(-8.2,-2.6)?endl;
return0;
}
分值:10
難度:
知識點:
【程序改錯題】選做
【章節(jié)】第4章數組
【知識點】
1、數組的相關概念
2、數組的定義及使用方法
3、C++字符串
4、數組的應用
【單選題】
1、若有以下程序:
#include<iostream>
usingnamespacestd;
intmain()
(
intI;
for(I=0;I<3;I++)
cout?a[i][l]?v
cout?endl;
return0;
}
執(zhí)行后的輸出結果是()o
A.495255
B.147
C.258
D.505356
答案:C
分值:2
難度:1
知識點:
2、下面程序的運行結果是()。
#include<isotream>
voidmian()
{charch[7]={“12ab56”};
intI,s=0;
fbr(I=0;ch[I]>=,0,&&ch[I]<=,9,;I+=2)
s=10*s+ch[I]-€0,;
cout?s;
)
A.1
B.12a56b
C.12ab56
D.1256
答案:A
分值:2
難度:1
知識點:
3、若有以下程序:
voidmain()
{inta[]={4,0,2,3,l}JJ,t;
for(I=l;I<5;I++)
{t=a[I];j=I-l;
while(j>=O&&t>a[j])
a[j+l]=a|j];
a|jl=t;
j-:
則該程序段的功能是()。
A.對數組a進行插入排序(升序)
B,對數組a進行插入排序(降序)
C.對數組a進行選擇排序(升序)
D,對數組a進行選擇排序(降序)
答案:B
分值:2
難度:1
知識點:
4、若有說明"inta[3][4]={0};",則下面正確的是()。
A.只有元素a[0]⑼可得到初值0
B.此說明語句不正確
C.數組a各元素都可得到初值,但其值不一定是0
D.數組a中每個元素均可得到初值0
答案:D
分值:2
難度:1
知識點:
5、以下程序的輸出結果是()。
#include<iostram>
intmain()
(
charb[尸,Hello,you”;
b[5]=0;
cout?b;
}
A.Hello,you
B.Hello
C.HeloOyou
D.Hell
答案:B
分值:2
難度:1
知識點:
6、當執(zhí)行下面的程序時,如果輸入ABC,則輸出結果是()。
#include<iostream>
#include<string>
intmain()
(
charss[10]="l,2,3,4,5”;
cin?ss;
strcat(ss,“6789”);
cout?ss;
}
A.ABC6789
B.ABC67
C.12345ABC6
D.ABC456789
答案:A
分值:2
難度:1
知識點:
7、以下程序的輸出結果是()。
#include<iostram>
intmain()
(
intb[3][3]={0,l,2,0,l,2,0,l,2),I,j,t=l;
for(I=0;I<3;i++)
f0r(j=I;j<=I;j++)
t=t+b[I][bU][j]];
cout?t;
)
A.3
B.4
C.1
D.9
答案:B
分值:2
難度:1
知識點:
8、以下不能正確賦進行字符串賦初值的語句是()。
A.charstr[5]="good!”;
B.charstr[]-,good!v;
C.char*str="good!'';
D.charstr[5]={'g','o','o','d'};
答案:A
分值:2
難度:1
知識點:
9、以下不能正確定義二維數組的選項是()。
A.inta[2H2]={{l},{2}};
B.inta[2][2]={{l},2,3};
C.inta[2][]={{l,2},{3,4}};
D.inta[][2]={l,2,3,4};
答案:C
分值:2
難度:1
知識點:
10、在“intbH[3]={{l},{3,2},{4,5,6},{。}};",中b⑵⑵的值是()。
A.0
B.5
C.6
D.2
答案:C
分值:2
難度:1
知識點:
11、對于"int*pa[5];”的描述,()是正確的
A.pa是一個指向數組的指針,所指向的數組時5個int型元素
B.pa是一個指向某數組第5個元素的指針,該元素是int型元素
C.pa⑸表示某個數組的第5個元素的值
D.pa是一個具有5個元素的指針數組,每個元素是一個int型指針
答案:D
分值:2
難度:1
知識點:
12、在下列對字符數組進行初始化中()是正確的
A.charsl[]=,,abcd,,;
B.chars2[3]="xyz”;
C.chars3口卜{'a','x','y'};
D.chars4[2][3]={"xyz”,"mnp''};
答案:A
分值:2
難度:1
知識點:
13、有以下程序:
main()
{chara[10]="AbcdE龜9[b[10];
intj,k=O;
for(j=0,k=0;afjJi-VO*;j++)
{if((a[j]>=,A,&&a[j]<=,Z,||(a[j]>=,0,&&a[j]<=,9,))
{bfk]=a[j];k++;}
)
b[k]=0;
cout?b+3;
)
執(zhí)行結果為()o
A.AbcdEfg9
B.bcdfg
C.AE9
D.以上都不正確
答案:D
分值:2
難度:3
知識點:
14、有以下程序:
main()
(ini1,4,725,8,3,6,9};
intI,j,k=2;
for(I=0;I<3;I++)
{cout?m[k][I];}
)
執(zhí)行結果是()o
A.456
B.258
C.369
D.789
答案:C
分值:2
難度:1
知識點:
15、以下程序的輸出結果是()。
#include<iostram.h>
#include<string.h>
intmain()
charst[20]=,,hello\0\f,;
cout?strlen(st)?<^^"vvsizeof(st);
)
A.99
B.520
C.1320
D.2020
答案:B
分值:2
難度:1
知識點:
16、有以下程序:
#include<iostream>
#include<string>
usingnamespacestd;
intmain()
(
chars[]=n\nl23\V;
cout?strlen(s)?“J?sizeo心)?endl;
)
該程序執(zhí)行后的輸出結果是()。
A.賦初值的字符串有錯
B.6,7
C.5,6
D.6,6
答案:C
17、如有以下定義語句:
inta[10];floatb[2];
則sizeof(a)和sizeof(b)的值為()。
A.24
B.102
C.408
D.00
答案:C
分值:2
難度:1
知識點:
18、如有數組名作為實參,則傳遞給形參的是()。
A.數組的首地址
B.第一個元素的值
C.數組中全部元素的值
D.數組元素的個數
答案:A
分值:2
難度:1
知識點:
19、有下列程序段:
#include<iostream>
usingnamespacestd;
intmain(){
charb[]=''HeIlo,you'';
b[5]=0;
cout?b?endl;
return0;
)
執(zhí)行此程序后,得到的輸出結果是()。
A.Hello,you
B.Helloyou
C.Hello
D.0
答案:C
分值:2
難度:1
知識點:
20、若有說明"inta[][4]={0,0};”則下列正確的敘述是()。
A.只有元素a[0][0]可得到初值0
B.此說明語句不正確
C.數組a中個元素都可得到初值,但其值不一定為0
D.數組a中每個元素均可到初值0
答案:B
分值:2
難度:1
知識點:
21、以下程序的輸出結果是()。
#include<iostram.h>
#include<string.h>
intmain()
(
charst[20]=,,hello\0\tn;
cout?strlen(st)?<^^9,?sizeofijst);
A.99
B.520
C.1320
D.2020
答案:B
分值:2
難度:1
知識點:
22、有以下程序:
#include<iostream>
#include<string>
usingnamespacestd;
intmain()
chars[]=M\nl23\\M;
cout?strlen(s)?“J?sizeofifs)?endl;
)
該程序執(zhí)行后的輸出結果是()。
A.賦初值的字符串有錯
B.6,7
C.5,6
D.6,6
答案:C
分值:2
難度:1
知識點:
23、如有以下定義語句:
inta[10];floatb[2];
則sizeof(a)和sizeof(b)的值為()。
A.24
B.102
C.00
D.408
答案:D
分值:2
難度:1
知識點:
24、如有數組名作為實參,則傳遞給形參的是()。
A.數組的首地址
B.第一個元素的值
C.數組中全部元素的值
D
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)新創(chuàng)業(yè)陶藝吧計劃書
- 品行養(yǎng)成教育主題班會
- 農業(yè)生態(tài)建設土地流轉合同
- 大學物理學 第一卷 經典物理基礎 第6版 課件 9 光的干涉
- 數據設備租賃合同
- 卵圓孔未閉術后護理措施
- 工作中的電氣安全
- 幼兒園公開課課件
- 兒科相關疾病護理帶教
- 阿克蘇工業(yè)職業(yè)技術學院《商務英語函電》2023-2024學年第一學期期末試卷
- 2024年資格考試-對外漢語教師資格證考試近5年真題附答案
- 會展策劃第4章展會招展策劃
- 北師大版二年級數學下冊全冊10套試卷(附答案)
- 團建活動策劃合同協(xié)議書
- 二年級下冊語文-第五單元單元解讀-人教版
- 2024年人教版新教材七年級英語上冊Unit 5 單詞精講課件
- 中國急性缺血性卒中診治指南(2023)解讀
- 一年級下冊口算題卡大全(50套直接打印版)
- DL-T5508-2015燃氣分布式供能站設計規(guī)范
- 2024屆江蘇省南京市臨江高級中學高三下學期三模物理試題
- 2024年安徽省合肥市新站區(qū)中考一模數學試題
評論
0/150
提交評論