2023年C語言基礎(chǔ)題_第1頁
2023年C語言基礎(chǔ)題_第2頁
2023年C語言基礎(chǔ)題_第3頁
2023年C語言基礎(chǔ)題_第4頁
2023年C語言基礎(chǔ)題_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第一單元C語言概述一、選擇題1、C語言中主函數(shù)的個數(shù)為()個。A)1 B)2C)無窮個 D)任意個2、以下關(guān)于C語言描述錯誤的是()。A)一個C程序總是從main函數(shù)開始執(zhí)行B)每個語句和數(shù)據(jù)聲明的最后必須有一個分號C)C語言的注釋符是以“/*”開始并以“*/”結(jié)束的 D)一個C程序可以包含多個main函數(shù)3、C語言源程序文獻(xiàn)后綴為()。A).EXE B).OBJ C).C D).ASM4、C語言是由()組成的。A)子程序 B)主程序與子程序 C)函數(shù) D)過程5、C語言屬于()語言A)機(jī)器語言 B)匯編語言 C)高級語言 D)面向?qū)ο笳Z言第二單元C語言基礎(chǔ)一、選擇題1、C語言中普通整型變量int在內(nèi)存中占()字節(jié)。A)1 B)2 C)3 D)42、下列不是C語言基本數(shù)據(jù)類型的是()。A)字符型B)整型C)浮點型D)結(jié)構(gòu)體3、有關(guān)自增、自減運算,以下只有()是對的的。A)---fB)++78C)a—b++D)4、已知A=7.5,B=2,C=3.6,表達(dá)式(A>B&&C>A)||(A<B&&!C>B)的值是()。A)0 B)10 C)1 D)55、若有x=1,y=2,z=3,則表達(dá)式(x<y?x:y)==z的值是()。A)1 B)2 C)3 D)06、判斷char型變量ch是否為大寫字母的對的表達(dá)式是()。A)‘A’<=ch<=‘Z’B)(ch>=‘A’)&(ch<=‘Z’)C)(ch>=‘A’)&&(ch<=‘Z’)D)(‘A’<=ch)AND(‘Z’>=ch)7、判斷整型變量digit是否為數(shù)字的對的表達(dá)式是()。A)‘0’<=ch<=‘9’B)(ch>=‘0’)&(ch<=C)(ch>=‘0’)&&(ch<=‘9’)D)(‘0’<=ch)AND(8、一個C程序的執(zhí)行是從()。A)本程序的main函數(shù)開始,到main函數(shù)結(jié)柬B)本程序文獻(xiàn)的第一個函數(shù)開始,到本程序文獻(xiàn)的最后一個函數(shù)結(jié)束C)本程序的main函數(shù)開始,到本程序文獻(xiàn)的最后一個函數(shù)結(jié)束D)本程序文獻(xiàn)的第一個函數(shù)開始,到本程序main函數(shù)結(jié)束9、在以下標(biāo)記符中,合法的是()A)ifB)0xyC)_xyD)case10、C語言中各種類型的數(shù)據(jù)其實決定了占用內(nèi)存的字節(jié)數(shù)。float占()。A)一字節(jié)B)二字節(jié)C)四字節(jié)D)八字節(jié)11、下列各選項中,()是有效的標(biāo)記符。A)abB)3dayC)day-3 D)#abc12、以下敘述對的的是()。

。A)在C程序中,每行只能寫一條語句

B)若a是實型變量,C程序中不允許a=10這種賦值。C)在C程序中,%是只能用于整數(shù)運算的運算符D)在C程序中,無論是整數(shù)還是實數(shù),沒有什么區(qū)別13、有輸入語句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);為使變量a的值為1,b的值為3,c的值為2,則對的的數(shù)據(jù)輸入方式是()。A)132↙ B)1,3,2↙C)a=1b=3c=2↙ D)a=1,b=3,c=2↙14、設(shè)整型變量a為5,使b不為2的表達(dá)式是(

)。A)b=a/2

B)b=6-(--a)

C)b=a%2

D)b=a>3?2:115、以下程序的輸出結(jié)果是(

)。intx=10,y=10;

printf(“%d

%d\n”,x--,--y);A)10

10

B)9

9

C)9

10

D)10

916、選出下列標(biāo)記符中不是合法的標(biāo)記符的是(

)。A)hot_do

B)cat1

C)_pri

D)2ab17、設(shè)有如下定義:intx=10,y=3,z;則語句printf("%d\n",z=x%y);的輸出結(jié)果是(

)。A)1

B)0

C)4

D)318、各種基本數(shù)據(jù)類型的存貯空間對的的長度排列為(

)。

A)int<char<float<double

B)double<float<int<char

C)char<int<float<double

D)float<int<char<double19、下面的變量說明中(

)是對的的。

A)char:a,b,c;

B)chara;b;c;

C)chara,b,c;

D)chara,b,c。20、轉(zhuǎn)義字符“反斜杠線”的表達(dá)方法對的的是(

)。A)

\

B)

\\

C

)‘\’

D)

“\”21、若x=5,y=3則y*=x+5;y的值為(

)。A)

10

B)

20

C)

15

D)

3022、能對的表達(dá)a和b同時為正或同時為負(fù)的邏輯表達(dá)式是(

)。A)(a>=0||b>=0)&&(a<0||b<0)

B)(a>=0&&b>=0)&&(a<0&&b<0)C)(a+b>0)&&(a+b<=0)

D)a*b>023、C語言中,合法的字符型常數(shù)是(

)。A)‘A’

B)“A”

C)65

D)A24、下列程序段的輸出結(jié)果是(

)。charc1,c2;c1=65;c2=65+32+1;printf(“%c,%c”,c1,c2);

A)a,B

B)a,b

C)A,b

D)A,B25、下列語句不具有賦值功能的是(

)A)a*=b

B)x=1

C)a+b

D)a++26、在C語言中,存儲一個整型、字符型、雙精度實型變量所需的字節(jié)(

)。A)2、1、8

B)4、1、4C)4、1、4

D)2、2、827、下列程序段輸出結(jié)果是(

)。intj=2,i=1;j/=i*j;printf(“%d”,j);A)0

B)1

C)2

D)328、不是C語言提供的合法關(guān)鍵字是(

)。A)switch

B)char

C)case

D)this29、在C語言中,規(guī)定參與運算的數(shù)必須時整數(shù)的運算符是(

)。A)/B)*C)%D)=30、若已定義x和y為double類型,且x=1;則表達(dá)式y(tǒng)=x+3/2的值是(

)。A)1

B)2

C)2.0

D)2.531、設(shè)a為整型變量,不能對的表達(dá)數(shù)學(xué)關(guān)系:10<a<15的C語言表達(dá)式是(

)。A)10<a<15

B)a==11||a==12||a==13||a==14C)a>10&&a<15

D)!(a<=10)&&!(a>=15)32、表達(dá)式“10!=9”的值是(

)。A)true

B)非零值

C)0

D)133、設(shè)a,b為字符型變量,執(zhí)行scanf(“a=%c,b=%c”,&a,&b)后使a為’A’,b為’B’,從鍵盤上的對的輸入是(

)。A)’A’‘B’

B)’A’,’B’

C)A=A,B=B

D)a=A,b=B34、設(shè)有單精度變量f,其值為13.8。執(zhí)行語句“n=((int)f)%3;”后,n的值是(

)。A)4

B)1

C)4.333333

D)4.635、普通整形int可以解決的數(shù)據(jù)范圍是(

)A)-32767~32767

B)-32768~32768

C)-32767~32768

D)-32768~3276736、若定義x為double型變量,則能對的輸入x值的語句是。A)scanf(“%f”,x);B)scanf(“%f”,&x);C)scanf(“%lf”,&x);D)scanf(“%5.1f”,&x)37、執(zhí)行x=(6*7%8+9)/5;后,x的值為(

)A)1

B)2

C)3

D)438、若有代數(shù)式3ae/bc,則不對的的c語言表達(dá)式是(

)A)a/b/c*e*3

B)3*a*e/b/c

C)3*a*e/b*c

D)a*e/b/c*339、設(shè)有變量說明:floatx=4.0,y=4.0,下面使x為10.0的表達(dá)式是(

)A)x-=y*2.5

B)x/=y+9

C)x*=y-6

D)x+=y+240、以下能對的定義整型變量z、b、c并為其賦初值5的語句是(

)A)int

a=b=c=5;

B)int

a,c,c=5;C)a=5,b=5,c=5;

D)a=b=c=5;41、C語言中雙精度浮點型變量double在內(nèi)存中占()字節(jié)。A)1 B)2 C)4 D)842、以下哪個數(shù)學(xué)函數(shù)的作用是求某數(shù)的平方根()。A)sqrt() B)fabs() C)pow() D)exp()43、兩次運營下面的程序,假如從鍵盤上分別輸入6和3,則輸出結(jié)果是(

)。intx;scanf("%d",&x);if(++x>5)

printf("%d",x);else

printf("%d\n",x--);A)7和5

B)6和3

C)7和4

D)6和444、執(zhí)行語句"x=(a=3,b=a--)"后,x,a,b的值依次為(

)。A)3,3,2

B)3,2,2

C)3,2,3

D)2,3,245、讀出以下語句的輸出結(jié)果是(

)。

intx=10,y=10;printf("%d

%d\n",x--,--y);A)10

10B)9

9C)9

10D)10

46、C語言中,合法的字符串型常數(shù)是(

)。A)‘A’

B)"A"

C)‘a(chǎn)bcd’

D)abcd47、為表達(dá)關(guān)系x≥y≥z,應(yīng)使用C語言表達(dá)式(

)。A)(x>=y)&&(y>=z)

B)(x>=y)AND(y>=z)C)(x>=y>=z)

D)(x>=z)&(y>=z)48、C語言的輸入與輸出操作是由(

)完畢的。A)輸入語句

B)輸出語句C)輸入與輸出函數(shù)

D)輸入與輸出語句49、設(shè)有intx=11;則表達(dá)式(x+1/3)的值是(

)。A)11.3

B)11.333333

C)11

D)12

50、若已定義x和y為double類型,則表達(dá)式x=1,y=x+3/2的值是(

)A)1

B)2

C)2.0

D)2.5二、判斷題()1、“A”是一個字符常量。X()2.、在程序運營過程中其值可以改變的量稱為變量。V()3、在C語言中,變量可以先使用再定義。X()4、在C語言中,所有算術(shù)運算符的優(yōu)先級都相同。X()5、程序中若要使用數(shù)學(xué)函數(shù)就必須包含頭文獻(xiàn)”math.h”。V()6、程序中若要使用printf()函數(shù)就必須引用頭文獻(xiàn)”stdio.h”。V()7、在標(biāo)準(zhǔn)C中,“=”是判斷兩個數(shù)是否相等。X()8、在標(biāo)準(zhǔn)C中,使用所有輸入輸出函數(shù)必須包含“stdio.h”文獻(xiàn)。X()9、在C語言中輸出數(shù)據(jù)時可以指定數(shù)據(jù)的精度,即小數(shù)點后保存幾位。V( )10、C語言中的基本數(shù)據(jù)類型有字符型、整型和浮點型。V( )11、所有的C語言程序都必須有一個名為main的主函數(shù)。V ( )12、/運算符規(guī)定運算數(shù)必須是整數(shù)。 X( )13、Int,#a15,char都是合法的標(biāo)記符。 X ()14、'b'和"b"是不同的兩種常量。V()15、C語言自身沒有輸入輸出語句,要實現(xiàn)輸入輸出必須調(diào)用相應(yīng)的輸入輸出函數(shù)。V 第三單元算法一、判斷題()1、算法簡而言之就是基于某種計算機(jī)語言,運用數(shù)據(jù)結(jié)構(gòu)來解決具體問題的思緒和方法。V()2、描述算法的圖形化方法之一就是程序流程圖。V()3、描述算法可以用自然語言、傳統(tǒng)流程圖、N-S流程圖來描述。V()4、算法要有一定的邏輯性和健壯性。V()5、算法的特點之一是無窮性。X 第四單元順序結(jié)構(gòu)一、選擇題1、下列標(biāo)記符中合法的標(biāo)記符是()A)int2B)ifC)2twoD)a#b2、選出下列標(biāo)記符中不是合法的標(biāo)記符的是()A)hot_doB)cat@113C)INTD)3.、以下選項中屬于C語言的數(shù)據(jù)類型是()A)字符串型B)雙精度型C)邏輯型D)布爾型4、設(shè)有如下定義:intx=10,y=3,z;則語句printf("%d\n",z=x%y);的輸出結(jié)果是()A)3B)0C)45、設(shè)整型變量n的值為2,執(zhí)行語句"n+=n;"后,n的值是()A)0B)4C)-4二、判斷題()1、結(jié)構(gòu)化程序設(shè)計的三種結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。V()2、可以用printf("%d",123);語句輸出一個十六進(jìn)制整數(shù)。X()3、可以用scanf("%x",&da);語句從鍵盤接受一個八進(jìn)制整數(shù)給變量da。X()4、語句scanf("%5.2f",&a);是對的的。X()5、假如a是一維字符數(shù)組名,則語句scanf("%s",&a);是對的的。X第五單元選擇結(jié)構(gòu)一、選擇題1、有以下程序段inta;if(3&&2) a=1;elsea=2;執(zhí)行后a=(

)。A)1B)2C)32、表達(dá)式:10!=9的值是(

)。A)true

B)非零值

C)0

D)13、設(shè)intx=1,y=1;表達(dá)式(!x++||y--)的值是_(

)。A)0

B)1

C)2

D)-14、設(shè)整型變量s,c1,c2的值均為2,則執(zhí)行語句(s=(c1==c2))后,s的值為:(

)。

A)0

B)1

C)2

D)35、設(shè)整型變量a,b的值分別為1,0,那么a&&b的結(jié)果是(

)。A)0B)1C)26、設(shè)整型變量a,b的值分別為1,0,那么a||b的結(jié)果是(

)。A)0B)1C)27、設(shè)整型變量a,b的值分別為1,0,那么a!=b的結(jié)果是(

)。A)0B)1C)2D)8、設(shè)整型變量a,b的值分別為1,0,那么a||(b++)的結(jié)果是(

)。A)0B)1C)2D)9、設(shè)整型變量a,b的值分別為1,0,那么a&&(++b)的結(jié)果是(

)。A)0B)1C)2D)10、設(shè)整型變量a,b的值分別為1,2,那么表達(dá)式a>b?a+b:a-b的結(jié)果是(

)。A)1B)2C)311、下邊程序段inta=2,b=3,c=4;if(c=a+b)printf(“OK!”)elseprintf(“NO!”);輸出結(jié)果是(

)。A)OK!B)NOC)程序錯誤D)以上都不對12、設(shè)整型變量a,b的值分別為1,0,那么a==b的結(jié)果是(

)。A)0B)1C)213、設(shè)整型變量a,b的值分別為1,0,那么!(a==b)的結(jié)果是(

)。A)0B)1C)2D)14、設(shè)整型變量a,b的值分別為1,2,那么!a&&b的結(jié)果是(

)。A)0B)1C)2D)15、設(shè)x為非零,則下列描述錯誤的是(

)。A)!(x==0)B)x!=0C)3*x!=0D)16、下列表達(dá)式的值中哪個表達(dá)為邏輯假(

)。A)1B)3C)017、設(shè)整型變量a,b的值分別為6,2,那么a%b!=0的結(jié)果是(

)。A)0B)1C)218、下列屬于分支結(jié)構(gòu)的是(

)。A)whileB)switchC)forD)以上都不是19、設(shè)整型變量a,b的值分別為1,0,那么a||(++b)的結(jié)果是(

)。A)0B)1C)220、設(shè)整型變量a,b的值分別為1,0,那么a&&(b++)的結(jié)果是(

)。A)0B)1C二、判斷題()1、在分支結(jié)構(gòu)switch中,case后面跟的一定是常量。V()2、邏輯運算符優(yōu)先級高于關(guān)系運算符的優(yōu)先級。X()3、關(guān)系運算符中,==的優(yōu)先級要高于>=的優(yōu)先級。X()4、關(guān)系運算符中,>的優(yōu)先級要高于>=的優(yōu)先級。X()5、在條件表達(dá)式中,-3代表為真。V()6、在條件表達(dá)式中,非0代表為真。 V()7、條件運算符?:是2目運算符。X()8、在switch語句中,有沒有break的情況都是相同的。X()9、判斷a,b兩個數(shù)是否相等,用a=b。X()10、判斷a,b兩個數(shù)是否相等,用a==b。V第六單元for循環(huán)結(jié)構(gòu)一、選擇題1、對下邊f(xié)or循環(huán),循環(huán)體體執(zhí)行次數(shù)是()。for(i=1;i<=10;i=i+2);A)6 B)5 2、對下邊f(xié)or循環(huán),循環(huán)體執(zhí)行次數(shù)是()。for(i=5;i>1;i--);A)6 B)5 3、下邊循環(huán)執(zhí)行完后,a為()。for(a=1;a<5;a++)a=2*a;A)5 B)4 C)7 D)84、下邊循環(huán)執(zhí)行完后,s為()。for(a=1;a<5;a++)for(b=s=0;b<a;b++,s=s+a);A)6 B)4 5、下邊程序執(zhí)行完后,a,b的值是()。for(a=1;a<=10;a++)for(b=10;b>=1;b--)if(a>=b))exit(0);A)1,1 B)5,5 C)6,6 D)均不對6、下邊程序執(zhí)行后s的值是()。for(s=i=1;i<100;i++)s=s+1/i;A)0 B)2 C)1 D)難以擬定7、下邊程序段輸出結(jié)果是()。inti,a=0;for(i=0;i<10;i++) a++,i++;printf("%d",a);A)5B)6C)8、以下for循環(huán)的次數(shù)為()。for(x=0,y=0;(y=123)&&(x<4);x++) ;A)不循環(huán)B)無限次C)3D)49、從循環(huán)體內(nèi)某一層跳出,繼續(xù)執(zhí)行循環(huán)外的語句是:()。A)break語句

B)return語句

C)continue語句

D)空語句10、for(k=0;k<5;++k)

{

if(k==3)continue;

printf("%d",k);

}的輸出結(jié)果為()。A)012

B)0124

C)01234

D)沒有輸出結(jié)果11、循環(huán)語句for(x=0,y=0;(y!=123)||(x<4);x++);的循環(huán)執(zhí)行次數(shù)為(

)。A)無限次

B)不循環(huán)

C)4次

D)3次12、設(shè)i,j,k均為int型變量,k初值為0,執(zhí)行完下面的for循環(huán)后,k的值為(

)。for(i=0,j=10;i<=j;i++,j--)k=i+j;A)10

B)9

C)8

D)713、以下程序段的循環(huán)次數(shù)是()。

for(i=2;i=0;)printf(“%d”,i--);

A)無限次B)0次C)1次D)2次14、下邊程序段循環(huán)執(zhí)行的次數(shù)是()。inta=0,j=10;for(;j>3;j--){a++;if(a>3)break;}A)3B、4C、5D)615、for循環(huán)中,表達(dá)式1的作用是(

)。A)循環(huán)變量賦初值B)循環(huán)條件C)改變循環(huán)變量的值D)什么作用都沒有16、for循環(huán)中,表達(dá)式2的作用是(

)。A)循環(huán)變量賦初值B)循環(huán)條件C)改變循環(huán)變量的值D)什么作用都沒有17、for循環(huán)中,表達(dá)式3的作用是(

)。A)循環(huán)變量賦初值B)循環(huán)條件C)改變循環(huán)變量的值D)什么作用都沒有18、for循環(huán)中,能省略的表達(dá)式有(

)。A)表達(dá)式1B)表達(dá)式2C)表達(dá)式3D)3個都可以19、下面程序中a++總共被執(zhí)行多少次(

)。for(i=0;i<3;i++) for(j=0;j<3;j++) a++;A)3次B)2次C)6次D)9次20、下面循環(huán)體被執(zhí)行的次數(shù)是(

)。for(i=0;i<3;i++) ;A)0次B)1次C)2次D)3次21、定義變量inti=-1;則以下不是無限循環(huán)的是:()。A.for(i=0;i=1;i++);B.for(i=0;;i--);C.for(;i>-10;i--);D.for(;i<0;);22、定義變量inti=2;則以下是無限循環(huán)的是:()。A.for(i=0;i==1;i++);B.for(i=0;i<0;)--i;C.for(;i>10;i++);D.for(;i;++i);23、以下for循環(huán)語句,循環(huán)體的執(zhí)行次數(shù)是:()。for(i=1;i<=5;i+=2);A.4B.5C.6D.724、以下for循環(huán)語句,循環(huán)體的執(zhí)行次數(shù)是:()。for(i=5;i>1;i--);A.4B.5C.3D.225、下面的循環(huán)體執(zhí)行完后,a的值是:()。for(a=2;a<8;a++)a*=2;A.10B.9C.12D.11二、判斷題()1、continue語句只能用于循環(huán)語句中。V()2、在for循環(huán)中允許使用嵌套循環(huán),但只能是嵌套while循環(huán)。X()3、break語句只能用于循環(huán)語句中。X()4、for循環(huán)也許一次都不執(zhí)行。V()5、break語句是結(jié)束本層循環(huán)。V()6、break語句是結(jié)束本次循環(huán)。X()7、continue語句是結(jié)束本層循環(huán)。X()8、continue語句是結(jié)束本次循環(huán)。V()9、在循環(huán)過程中,使用break語句和continue語句的作用是同樣的。X()10、for(;;)這寫書寫for循環(huán)是合法的,即for三個表達(dá)式都是可以省略的。V三、程序閱讀1、以下程序運營完后的輸出數(shù)據(jù)是:__aaaaaaaaa__main(){inta=10;for(;a;){a--;if(a==0)break;printf("a"); }}2、以下程序運營完后a的值是:__1__main(){inti,a=0;for(i=0;i<10;i++)i++;a++; printf("%d",a); }3、以下程序運營完后a的值是:__5__main(){inti,a=0;for(i=0;i<10;i++)a++,i++; printf("%d",a); }4、以下程序運營完后的結(jié)果是:_#*#*_main(){intk;for(k=1;k<5;k++){if(k%2!=0)printf("#");elseprintf("*");}}5、以下程序運營完后s的值是:_1.0__main(){intn;floats=1.0;for(n=10;n>1;n--)s=s+1/n;printf("%6.1f\n",s);} 第七單元while與do-while循環(huán)一、選擇題1、break語句的對的的用法是()。A)無論在任何情況下,都中斷程序的執(zhí)行,退出程序。B)在多重循環(huán)中,只能退出最靠近的那一層循環(huán)語句。C)跳出多重循環(huán)。D)只能修改控制變量。2、inti=0;while(i++<5);循環(huán)結(jié)束后i的值是()。A)6B)7C)3、語句while(E);括號中的表達(dá)式E等價于()。

A)E==0B)E!=1C)E!=04、inti=1;while(--i);循環(huán)次數(shù)是()。A)無限次B)0C)25、下述程序段的運營結(jié)果是。inta=1,b=2,c=3,t;while(a<b<c){t=a;a=b;b=t;c--;}printf(“%d,%d,%d”,a,b,c);

A)1,2,0B)2,1,0C)程序錯誤6、程序運營的結(jié)果是()。main(){intx;x=3;do{printf("%d",x--);}while(x);}A)0B)無限循環(huán)C)3D)27、do-while語句的循環(huán)體()。A)也許一次都不執(zhí)行B)至少要執(zhí)行一次C)由循環(huán)條件決定循環(huán)次數(shù)D)BC均對的8、對下面的while語句,循環(huán)體執(zhí)行次數(shù)是()次。a=30;while(a--);A)30B)31C)39D)9、在C語言中,下列說法中對的的是()。A)不能使用"do…while"的循環(huán)。B)"dowhile"的循環(huán)必須使用break語句退出循環(huán)。C)"dowhile"的循環(huán)中,當(dāng)條件為0時將結(jié)束循環(huán)。D)"dowhile"的循環(huán)中,當(dāng)條件為非0時將結(jié)束循環(huán)。10、下面的循環(huán)執(zhí)行完后,循環(huán)次數(shù)是()次。while(k=10) k--;A)9B)10C)11D)二、判斷題()1、while適合控制循環(huán)次數(shù)不擬定的循環(huán)。(V)()2、無論循環(huán)條件是否滿足,do...while循環(huán)的循環(huán)體至少執(zhí)行一次。(V)()3、while('a');是一個死循環(huán)。(V)()4、在實際編程中,do-while循環(huán)完全可以用for循環(huán)替換。(V)()5、continue;語句和break;語句有同樣的作用。(X)第八單元數(shù)組一、選擇題1、下列描述中不對的的是(

)。A)字符型數(shù)組中也許存放字符串。B)可以對字符型數(shù)組進(jìn)行整體輸入、輸出。C)字符串函數(shù)聲明在包ctype.h中。D)字符串的結(jié)束符是’\0’2、定義如下變量和數(shù)組:inti;intx[6]={1,2,3,4,5,6};則語句for(i=0;i<3;i++)

printf("%d

",x[5-i]);的輸出結(jié)果是(

)。A)1

23

B)1

3

5

C)24

6

D)6

5

43、以下對二維數(shù)組a進(jìn)行對的初始化的是(

)。A)inta[2][3]={{1,2},{3,4},{5,6}};

B)inta[][3]={1,2,3,4,5,6};C)inta[2][]={1,2,3,4,5,6};

D)inta[2][]={{1,2},{3,4}};4、下列程序的輸出結(jié)果是(

)。chara[]="abcd",b[]="ABCD",str[50]="xyz";strcpy(str,strcat(a,b));printf("%s",str);A)xyabcAB

B)abcABz

C)ABabcz

D)abcdABCD5、不能把字符串:Hello!賦給數(shù)組b的語句是(

)。A)charb[10]={'H','e','l','l','o','!'};

B)charb[5]="Hello!";C)charb[10];

strcpy(b,"Hello!");

D)charb[10]="Hello!";6、下列對數(shù)組定義不對的的語句是()。A)intm[5];

B)charb[]={‘h’,’e’};

C)inta[10]={1,6,8,4};

D)char

p[];7、以下對二維數(shù)組a的對的定義是(

)A)inta[3][]

;

B)float

a(3,4)

;C)doublea[2][4];D)floata(3)(4);8、給出以下定義:charx[]="abcdefg";chary[]={'a','b','c','d','e','f','g'};以下對的的敘述是()。A)數(shù)組x和數(shù)組y等價B)數(shù)組x和數(shù)組y長度相等C)數(shù)組x的長度大于數(shù)組y的長度,由于還存儲了一個結(jié)束符D)數(shù)組x的長度小于數(shù)組y的長度,由于還存儲了一個結(jié)束符9、在intb[][3]={{1},{3,2},{4,5,6},{0}};中b[2][2]的值是()。A)0B)5C)6D)210、下列初始化對的的是()。A)chars1[]="abcd";B)chars2[3]="zxy";C)char*p=1000;D)chars4[2][3]={{"xyz"},{"mnp"}};11、設(shè)有定義:chars[12]="string";則printf("%d\n",strlen(s));的輸出是(

)。A)6

B)7

C)11

D)1212、函數(shù)調(diào)用strcat(strcpy(str1,str2),str3)的功能是()。A)將字符串str2復(fù)制到字符串str1中后再將字符串str3連接到字符串str1之后B)將字符串str1復(fù)制到字符串str2中后再連接到字符串str3之后C)將字符串str1復(fù)制到字符串str2中后再復(fù)制到字符串str3之后D)將字符串str2連接到字符串str1中后再將字符串str1復(fù)制到字符串str3中13、使用隨機(jī)函數(shù)需要包含的頭文獻(xiàn)有()。A)#include<stdlib.h>B)#include<time.h>C)#include<conio.h>D)A和B14、若有說明inta[3][4]={0};下列敘述對的的是()。A)只有元素a[0][0]可得到初值0B)此說明語句不對的C)數(shù)組a中各元素都可得到初值,但其值不一定為0D)數(shù)組a中每個元素均可得到初值015、執(zhí)行下面的程序段后,變量k的值為()。intk=3,s[2];s[0]=k;k=s[0]*10;A)不定值B)33C)30D)16、以下定義數(shù)組的語句中對的的是()。A)inta(10)B)charstr[];C)intn=5;inta[4][n];D)#defineN10charstr[N];17、定義如下變量和數(shù)組:intk;inta[3][3]={9,8,7,6,5,4,3,2,1};則下列語句的輸出結(jié)果是()。for(k=0;k<3;k++)printf(“%d”,a[k][k]);A)753B)951C)96318、下列描述對的的是()。A)兩個字符串所包含的字符個數(shù)相同時,才干比較字符串B)字符個數(shù)多的字符串比字符個數(shù)少的字符串大C)字符串“STOP”與“STOP”相等D)字符串“That”與字符串“ThaT”不相等19、若二維數(shù)組a有n行n列,則副對角線元素是()。(假設(shè)a[0][0]位于數(shù)組的第一個位置上,且i∈[0,n))A)a[i][i]B)a[i][n-i]C)a[n-i][i]D)a[i][n-1-i]20、對以下說明語句的對的理解是()。inta[10]={6,7,8,9,10};A)將5個初值依次賦給a[1]至a[5]。B)將5個初值依次賦給a[0]至a[4]。C)將5個初值依次賦給a[6]至a[10]。D)由于數(shù)組長度與初值的個數(shù)不相同,所以此語句不對的21、判斷字符串a(chǎn)和b是否相等,應(yīng)使用()。A)if(a==b)B)if(a=b)C)if(strcpy(a,b))D)if(strcmp(a,b)==0)22、判斷字符串s1的長度是否大于字符串s2的長度,應(yīng)使用()。A)if(s1>s2)B)if(strcmp(s1,s2))C)if(strlen(s1)>strlen(s2))D)if(strcat(s1)>strcat(s2))23、下列程序段的運營結(jié)果()。charc[15]={'a','b','\0','c','\0'};printf(“%s”,c);A)'a','b'B)abC)abcD)a,b24、假設(shè)有兩個字符數(shù)組a,b,則以下對的的輸入語句是()。A)puts(a,b);B)scanf(“%s%s”,a,b);C)scanf(“%s%s”,&a,&b);D)gets(“a”);gets(“b”);25、若有說明inta[][3]={1,2,3,4,5,6,7,8,9};則a數(shù)組行數(shù)的大小為()。A)2B)3C)426.若有定義doublex[3][5];則x數(shù)組中行標(biāo)的下限為(),列標(biāo)的上限為()。A)13B)35C)0527、若有說明a[3][4];則數(shù)組a中的各元素()。A)可在程序的運營階段得到初始值0B)可在程序的編譯階段得到初始值0C)不能得到擬定的初始值D)可在程序的編譯或運營階段得到初始值28、若有下列程序段charx[80];scanf(“%s”,x);printf(“%s”,x);從鍵盤上輸入字符串“zhangsan”,則輸出結(jié)果為()。A)zhangB)zhangsanC)zhangsanD)san29、在C語言中,引用數(shù)組元素時,其數(shù)組下標(biāo)的數(shù)據(jù)類型允許為()A)整型常量B)整型表達(dá)式C)整型常量或整型表達(dá)式D)任何類型的表達(dá)式30、設(shè)有如下形式的字符數(shù)組定義:charstr[]=”welcome”;則執(zhí)行下列語句后的輸出結(jié)果()。printf(“%d\n”,strlen(strcpy(str,“Hello”)));A)7B)5C)8D)31、若有inta[3][5]={2,2},{2,6},{2,6,2}},則數(shù)組a共有(

)個元素。

A)8

B)5

C)3

D)15 32、設(shè)有如下定義:inta[100];則數(shù)組下標(biāo)區(qū)間為:()。 A)0~99B)1~99C)0~100D)1~100 33、若有定義:inta[3][4],則對數(shù)組a中某元素的對的引用是()。A)a[2][4]B)a[1][3]C)a(5)D)a[10-10]34、以下對一維整型數(shù)組a的對的說明是()。A)inta(10);B)intn=10,a[n];C)intn;D)#defineSIZE10

scanf(“%d”,&n);inta[SIZE];nta[n];35、若要使用字符函數(shù),需要引入的頭文獻(xiàn)是()。A)string.hB)ctype.hC)stdlib.hD)stdio.h二、判斷題(

)1、在定義一維數(shù)組時,可以將該數(shù)組的長度省略

V(

)2、數(shù)組的下標(biāo)從0開始。

V(

)3、數(shù)組的下標(biāo)從1開始。

X

)4、數(shù)組名代表數(shù)組的首地址。

V

)5、在C語言中,數(shù)組元素在內(nèi)存中的存放順序是按順序存放的。V(

)6、字符數(shù)組可以存放字符串。V(

)7、字符串函數(shù)strupr(str),可將串中大寫字母變成小寫字母。X(

)8、字符串函數(shù)strrev(str),可將str串字符顛倒過來。V(

)9、字符串的結(jié)束符不是’\0’。(

)10、可如此定義a數(shù)組:floata[3]={12.5,’z’,”school”};X(

)11、數(shù)組邊定義邊賦值時,大括號內(nèi)數(shù)據(jù)項的數(shù)目可以大于或等于數(shù)組的長度。X

)12、數(shù)組邊定義邊賦值時,大括號內(nèi)數(shù)據(jù)項的數(shù)目可以小于或等于數(shù)組的長度。V(

)13、字符串函數(shù)strcat(str1,str2)的作用是將字符串str2連接在字符串str1后。V(

)14、定義字符型一維數(shù)組chara[80];可用gets(a[0])給a[0]賦值。X(

)15、數(shù)組定義inta[10];也可以寫成inta(10);。X三、程序閱讀題1、下面程序的輸出結(jié)果是___65_______。main(){charch[7]={"65ab21"};inti;for(i=0;ch[i]>='0'&&ch[i]<='9';i++)printf("%c",ch[i]);}2、下面程序執(zhí)行后,s1=___15.0_____,s2=___2.7______。floatb[]={0.5,1.6,2.7,3.8,4.9,5,6.1,6.2,7.3,8.4},s1,s2;inti;for(i=0,s1=s2=0;i<9;i++){ if(i%2)s1+=(int)b[i]; if(i%3)s2+=b[i]–(int)b[i];}3、將程序補(bǔ)充完整,實現(xiàn)功能:輸出斐氏數(shù)列的前20項,菲波納契額數(shù)列具有這樣的性質(zhì):F(0)=1F(1)=2F(N)=F(N-1)+F(N-2)#include"stdio.h"voidmain(){inti; longf[20]={1,2}; for(i=2;i<20;i++) f[i]=f[i-2]+f[i-1]; for(i=0;i<20;i++) printf("%ld\t",f[i]);}4、將程序補(bǔ)充完整,實現(xiàn)功能:輸入2個字符串,判斷兩個串是否相同,相同輸出yes,不同輸出no。#include"stdio.h"#include"string.h"voidmain(){charx[80],y[80]; gets(x); gets(y); if(strcmp(x,y)==0) puts("yes"); else puts("no");}5、設(shè)有以下代碼:#include"stdio.h"voidmain(){inta[3][3],s=0;inti,j;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)for(j=0;j<i;j++)s+=a[i][j];printf("%d\n",s);}假設(shè)鍵盤上輸入的9個數(shù)據(jù)為:123456789,上面程序的輸出結(jié)果是_______19____。第九單元指針一、選擇題 1、以下定義對的的是()。A)intx;float*p=x;B)intx;int*p=x;C)intx;int*p=&x;D)intx;float*p=&x;2、以下定義對的的是()。A)floatx;float*p=x;B)floatx;int*p=x;C)floatx;int*p=&x;D)floatx;float*p=&x;3、以下定義對的的是()。A)floatx[10];float*p=x;B)floatx[10];int*p=x;C)floatx[10];int*p=&x;D)floatx[10];float*p=&x;4、以下定義對的的是()。A)intx[10];float*p=x;B)intx[10];int*p=x;C)intx[10];int*p=&x;D)intx[10];float*p=&x;5、設(shè)有以下變量定義intx;floaty;doublez;z=sizeof(x)+sizeof(y)+sizeof(z);則z的值為()。

A)8

B)4

C)6

D)10二、判斷題 ()1、數(shù)組名代表數(shù)組的首地址。對的()2、指針的類型必須跟其所指向的變量的數(shù)據(jù)或數(shù)據(jù)結(jié)構(gòu)類型一致。對的()3、指針可以不操作數(shù)組。錯誤()4、空指針的值為NULL。對的()5、指針不能實現(xiàn)對數(shù)據(jù)的間接訪問。錯誤第十一單元函數(shù)一、選擇題1、以下不對的的說法是()。A)在不同函數(shù)中可以

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論