全國計算機二級C語言各章節(jié)復(fù)習(xí)題_第1頁
全國計算機二級C語言各章節(jié)復(fù)習(xí)題_第2頁
全國計算機二級C語言各章節(jié)復(fù)習(xí)題_第3頁
全國計算機二級C語言各章節(jié)復(fù)習(xí)題_第4頁
全國計算機二級C語言各章節(jié)復(fù)習(xí)題_第5頁
已閱讀5頁,還剩96頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章C語言概述 略第2章 程序的靈魂-算法 一、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應(yīng)位置上。) 2.1以下敘述中正確的是 A)C語言比其他語言高級 B)C語言可以不用編譯就能被計算機識別執(zhí)行 C)C語言以接近英語國家的自然語言和數(shù)學(xué)語言作為語言的表達形式 D)C語言出現(xiàn)的最晚,具有其他語言的一切優(yōu)點 正確答案: C 2.2 以下敘述中正確的是 A)構(gòu)成C程序的基本單位是函數(shù) B)可以在一個函數(shù)中定義另一個函數(shù) C)main()函數(shù)必須放在其他函數(shù)之前 D)所有被調(diào)用的函數(shù)一定要在調(diào)用之前進行定義聲明 正確答案: A 2.3

2、以下說法正確的是 A)C語言程序總是從第一個的函數(shù)開始執(zhí)行 B)在C語言程序中,要調(diào)用函數(shù)必須在main()函數(shù)中定義 C)C語言程序總是從main()函數(shù)開始執(zhí)行 D)C語言程序中的main()函數(shù)必須放在程序的開始部分 正確答案: C 2.4 C語言規(guī)定,在一個源程序中,main函數(shù)的位置 A)必須在最開始 B)必須在系統(tǒng)調(diào)用的庫函數(shù)的后面 C)可以任意 D)必須在最后 正確答案: C 2.5 以下敘述不正確的是 A)一個C源程序可由一個或多個函數(shù)組成 B)一個C源程序必須包含一個main函數(shù) C)C程序的基本組成單位是函數(shù) D)在C程序中,注釋說明只能位于一條語句的后面任意位置 正確答案

3、: D 2.6 下列敘述中正確的是 A)C語言編譯時不檢查語法 B)C語言的子程序有過程和函數(shù)兩種 C)C語言的函數(shù)可以嵌套定義 D)C語言的函數(shù)可以嵌套調(diào)用 正確答案: D 2.7 以下敘述正確的是 A)在C程序中,每行中只能寫一條語句 B)若a是實型變量,C程序中允許賦值a=10,因此實型變量中允許存放整型數(shù) C)在C程序中,無論是整數(shù)還是實數(shù),都能被準確無誤地表示 D)在C程序中,%是只能用于整數(shù)運算的運算符 正確答案: D 2.8 以下說法錯誤的是 A)一個算法應(yīng)包含有限個步驟 B)在計算機上實現(xiàn)的算法是用來處理數(shù)據(jù)對象的 C)算法中指定的操作,不能通過已經(jīng)實現(xiàn)的基本運算執(zhí)行有限次后實

4、現(xiàn) D)算法的目的是為了求解 正確答案: C 2.9 算法是指為解決某個特定問題而采取的確定且有限的步驟,下面不屬于算法的五個特性的是 A)有零個輸入或多個輸入 B)高效性有效性 C)有窮性 D)確定性 正確答案: B 2.10 下列關(guān)于C語言的說法不正確的是 A)C語言既具有高級語言的一切功能,也具有低級語言的一些功能 B)C語言中的每一條執(zhí)行語句都必須用分號結(jié)束,分號不是C語言的一部分,是語句之間的分隔符號 C)注釋可以出現(xiàn)在程序中任意合適的地方 D)命令行后面不能加分號,命令行不是C語言的語句 正確答案: B 2.11 以下說法錯誤的是 A)高級語言都是用接近人們習(xí)慣的自然語言和數(shù)學(xué)語言

5、作為語言的表達形式B)計算機只能處理由0和1的代碼構(gòu)成的二進制指令或數(shù)據(jù) C)C語言源程序經(jīng)過C語言編譯程序編譯之后生成一個后綴為.EXE(c)的二進制文件 D)每一種高級語言都有它對應(yīng)的編譯程序 正確答案: C 2.12 C語言中用于結(jié)構(gòu)化程序設(shè)計的3種基本結(jié)構(gòu)是 A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu) B)if,switch,break C)for,while,do-while D)if,for,continue 正確答案: A 二、填空題(請將每一個空的正確答案寫在答題卡相應(yīng)序號后。) 2.13 用高級語言編寫的程序稱為【1】程序,它可以通過解釋程序翻譯一句執(zhí)行一句的方式執(zhí)行,也可以通過編譯程

6、序一次翻譯產(chǎn)生目標(biāo)程序,然后執(zhí)行。 正確答案: 源程序 2.14 C語言程序的注釋可以出現(xiàn)在程序中的任何地方,一個注釋以【2】作為開始和結(jié)束。 正確答案: /* */第3章 數(shù)據(jù)類型運算符與表達式一、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應(yīng)位置上。)3.1 C語言中最簡單的數(shù)據(jù)類型包括A)整型、實型、邏輯型 B)整型、實型、字符型 C)整型、字符型、邏輯型 D)字符型、實型、邏輯型 3.2 C語言中的標(biāo)識符只能由字母,數(shù)字和下劃線三種字符組成,且第一個字符A)必須為字母 B)必須為下劃線C)必須為字母或下劃線 D)可以是字母,數(shù)字

7、和下劃線中任一字符 3.3 下列可用于C語言用戶標(biāo)識符的一組是A)void,define,0WORD B)a3_b3,_123,Car C)For,-abc,IFCase D)2a,DO,sizeof 3.4 下面四個選項中,均是不正確的8進制數(shù)或16進制數(shù)的選項是A)016 0x8f 018 B)0abc 017 0xa C)010 -0x11 0x16 D)0a12 7ff -123 3.5 下列數(shù)據(jù)中,不合法的C語言實型數(shù)據(jù)的是A)0.123 B)123e3 C)2.1e3.5 D)789.0 3.6 在16位C編譯系統(tǒng)上,若定義long a;,則能給a賦40000的正確語句是long后

8、面要加L,%ldA)a=20000+20000; B)a=4000*10; C)a=30000+10000; D)a=4000L*10L; 3.7 若有說明語句:char c='72';則變量cA)包含1個字符 B)包含2個字符 C)包含3個字符 D)說明不合法,c的值不確定 3.8 有字符串如下,"n407as1"xabc",則字符串的長度為A)6 B)7 C)8 D)9 正確答案: D3.9 C語言中運算對象必須是整型的運算符是A)%= (%兩側(cè)均要求為整數(shù)) B)/ C)= D)<= 正確答案: A3.10 若變量已正確定義并賦值,以下

9、符合C語言語法的表達式是A)a:=b+1 B)a=b=c+2 C)int 18.5%3 D)a=a+7=c+b 正確答案: B3.11 若變量a,i已正確定義,且i已正確賦值,合法的語句是A)a= =1 B)+i; C)a=a+=5; D)a=int(i); 正確答案: B3.12 若有定義:int a=7;float x=2.5,y=4.7;則表達式x+a%3*(int)(x+y)%2/4的值是A)2.500000 B)2.750000 C)3.500000 D)0.000000 正確答案: A3.13 若有運算符<<,sizeof,&=,則它們按優(yōu)先級由高至低的正確排列

10、次序是A)sizeof,&=,<<, B)sizeof,<<,&= C),<<,sizeof,&= D)<<,&=,sizeof 正確答案: B3.14 以下不正確的敘述是A)在C程序中,逗號運算符的優(yōu)先級最低 B)在C程序中,APH和aph是兩個不同的變量C)若a和b類型相同,在計算了賦值表達式a=b后b中的值將放入a中,而b中的值不變D)當(dāng)從鍵盤輸入數(shù)據(jù)時,對于整型變量只能輸入整型數(shù)值,對于實型變量只能輸入實型數(shù)值 正確答案: D3.15 已知int i,a;執(zhí)行語句i=(a=3,a+,- -a,a+4,a+5

11、,+a);后,變量i的值為A)2 B)3 C)4 D)5 正確答案: C3.16 設(shè)變量a是int型,f是float型,i是double型,則表達式10+a+i*f值的數(shù)據(jù)類型為A)int B)float C)double D)不確定 正確答案: C3.17 在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是A)補碼 B)反碼 C)原碼 D)ASCII碼 正確答案: D3.18 字符型數(shù)據(jù)在機器中是用ASCII碼表示的,字符5和7在機器中表示為A)10100011和 01110111 B)01000101和01100011C)00110101和00110111 D)01100101和0110011

12、1 正確答案: C3.19 不能進行+和- -運算的數(shù)據(jù)類型為A)指針 B)整型 C)長整型 D)常量 正確答案: D3.20 設(shè)有int x=11;則表達式(x+*1/3)的值是A)3 B)4 C)11 D)12正確答案: A3.21 以下程序的輸出結(jié)果是main() int a=21,b=11;printf("%dn",- -a+b,- -b+a);A)30 B)31 C)32 D)33正確答案: A3.22 假設(shè)整型變量a,b,c的值均為5,則表達式a+b+c+的值為A)17 B)16 C)15 D)14正確答案: C3.23 已知int a=6; 則執(zhí)行a+=a-=

13、a*a;語句后,a的值為先進行a-=a*a的計算A)36 B)0 C)-24 D)-60正確答案: D3.24 設(shè)變量n為float類型,m為int類型,則以下能實現(xiàn)將n中的數(shù)值保留小數(shù)點后兩位,第三位進行四舍五入運算的表達式是A)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0C)n=n*100+0.5/100.0 D)n=(n/100+0.5)*100.0正確答案: B3.25 sizeof(float)是A)一個雙精度型表達式 B)一個整型表達式C)一種函數(shù)調(diào)用 D)一個不合法的表達式正確答案: B3.26 在C語言中,int,char和short三

14、種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)A)由用戶自己定義 B)均為2個字節(jié)C)是任意的 D)由所用機器的機器字長決定正確答案: D3.27 以下變量x,y,z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子x÷y÷z的C語言表達式是A)x/y*z B)x*(1/(y*z)C)x/y*1/z D)x/y/z正確答案: A3.28 下列關(guān)于復(fù)合語句和空語句的說法錯誤的是A)復(fù)合語句是由“”開頭,由“”結(jié)尾的B)復(fù)合語句在語法上視為一條語句C)復(fù)合語句內(nèi),可以有執(zhí)行語句,不可以有定義語句部分D)C程序中的所有語句都必須由一個分號作為結(jié)束正確答案: C3.29 下列關(guān)于字符串的說法

15、中錯誤的是A)在C語言中,字符串是借助于字符型一維數(shù)組來存放的,并規(guī)定以字符0作為字符串結(jié)束標(biāo)志B)0作為標(biāo)志占用存儲空間,計入串的實際長度C)在表示字符串常量的時候不需要人為在其末尾加入0D)在C語言中,字符串常量隱含處理成以0結(jié)尾正確答案: B二、填空題(請將每一個空的正確答案寫在答題卡相應(yīng)序號后。)3.30 以下程序的輸出結(jié)果是【1】。int a=1234;printf ("-n",a);正確答案: 12343.31 在計算機中,字符的比較是對它們的【2】進行比較。正確答案: ASCII碼3.32 在內(nèi)存中,存儲字符x要占用1個字節(jié),存儲字符串X要占用【3】個字節(jié)。正

16、確答案: 23.33 在C語言中(以16位PC機為例),一個float型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為4;一個double型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【4】。正確答案: 83.34 以下程序段的輸出結(jié)果是【5】。main ()int a=2,b3,c=4;a*=16+(b+)-(+c);printf("%d",a);正確答案: 28 16+3-5=14*2=283.35 以下程序段的輸出結(jié)果是【6】 。int x=17,y=26;printf ("d",y/=(x%=6);正確答案: 5 x%=6=>x=x%6=5 y=y/5=53.36 下列y的值是

17、 【7】 。int y; y=sizeof(2.25*4);正確答案: 83.37 以下程序的輸出結(jié)果是 【8】 。main ()int i=010八進制的,j=10;pirntf ("%d,%dn",i,j);正確答案: 8,103.38 已知字母a的ASCII碼為十進制數(shù)97,且設(shè)ch為字符型變量,則表達式ch=a+8-3的值為 【9】 。正確答案: f a后移5位得f3.39 如下語句printf("%cn",B+40);在執(zhí)行后的輸出結(jié)果是 【10】 。正確答案: j B+32=b b+8=j3.40 定義int a=5,b=20;若執(zhí)行語句pr

18、intf("%dn",+a*- -b/5?);后,輸出的結(jié)果為 【11】 。正確答案: 9第到此4章 順序程序設(shè)計 一、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應(yīng)位置上。) 4.1 若變量已正確說明為float型,要通過語句scanf(%f%f%f,&a,&b,&c);給a賦予10.0,b賦予22.0,c賦予33.0,下列不正確的輸入形式是 A)10<回車>22<回車>33<回車> B)10.0,22.0,33.0<回

19、車> C)10.0<回車>22.0 33.0<回車> D)10 22<回車>33<回車> 正確答案: B 4.2 現(xiàn)有以下程序段 #include  main()  int a,b,c; scanf("a=%*d%d,b=%d%*d,c=%d",&a,&b,&c); printf("a=%d,b=%d,c=%dn",a,b,c);  若輸出的結(jié)果為a=20,b=30,c=40,則以下能夠正

20、確輸入數(shù)據(jù)的是 A)a=1020,b=2030,c=40 B)20,30,40 C)a=20,b=30,c=40 D)a=1020,b=3020,c=40 注: “”表示空格,表示回車 正確答案: D 4.3 x,y,z被定義為int型變量,若從鍵盤給x,y,z輸入數(shù)據(jù),正確的輸入語句是 A)INPUT x、y、z; B)scanf("%d%d%d",&x,&y,&z); C)scanf("%d%d%d",x,y,z); D)read("%d

21、%d%d",&x,&y,&z); 正確答案: B 4.4 已有定義int a=-2;和輸出語句 printf("%8lx",a);以下正確的敘述是 A)整型變量的輸出形式只有%d一種 B)%x是格式符的一種,它可以適用于任何一種類型的數(shù)據(jù) C)%x是格式符的一種,其變量的值按十六進制輸出,但%8lx是錯誤的 D)%8lx不是錯誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度 正確答案: D 4.5 下列程序段的輸出結(jié)果是: int a=1234; float b=12

22、3.456; double c=12345.54321; printf("-,%2.1f,%2.1f",a,b,c); A)無輸出 B)12,123.5,12345.5 C)1234,123.5,12345.5 D)1234,123.4,1234.5 正確答案: C 4.6 執(zhí)行下列程序時輸入:123<空格>456<空格>789<回車> 輸出結(jié)果是 main()  char s100; int c, i; scanf("

23、%c",&c); scanf("%d",&i); scanf("%s",s); printf("%c,%d,%sn",c,i,s); A)123,456,789 B)1,456,789 C)1,23,456,789 D)1,23,456 正確答案: D 4.7 若已定義:int a=25,b=14,c=19;以下三目運算符(?:)所構(gòu)成語句的執(zhí)行后 a<=25&&b-<=2&&c?printf(&

24、quot;*a=%d,b=%d,c=%dn",a,b,c):printf("#a=%d,b=%d,c=%dn",a,b,c);程序輸出的結(jié)果是 A)*a=25,b=13,c=19 B)*a=26,b=14,c=19 C)# a=25,b=13,c=19 D)# a=26,b=14,c=19 正確答案: C 4.8 請選出以下語句的輸出結(jié)果 printf("%dn",strlen("t"065xffn"); A)5 B)14 C)8 D)

25、輸出項不合法,無正常輸出 正確答案: A 4.9 下列程序的輸出結(jié)果是 main()  double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf("%dn", d*y); A)3 B)3.2 C)0 D)3.07 正確答案: C 4.10 調(diào)用gets和puts函數(shù)時,必須包含的頭文件是 A)stdio.h B)stdlib.h C)define D)以上都不對 正確答案

26、: A 4.11 閱讀下面程序段 #include "stdio.h" main()  char c; c=(z-a)/2+A; putchar(c); 輸出結(jié)果為 A)M B)N C)O D)Q 正確答案: A 二、填空題(請將每一個空的正確答案寫在答題卡相應(yīng)序號后。) 4.12 下列程序的輸出結(jié)果是16.00,請?zhí)羁铡?main() int a=9, b=2; float x=【1】, y=1.1,z; z=a/2+b*x/y+1/

27、2; printf("%5.2fn", z );  正確答案: 6.6 4.13 在使用putchar和getchar函數(shù)處理字符時,必須在程序的開頭出現(xiàn)包含頭文件的命令行是【2】 。 正確答案: #include 4.14 下列程序的輸出結(jié)果是 【3】 , 【4】 。 #include  main()  float a=-1.3;b=1.3; printf("%f,%f",fabs(a),fabs(b);

28、 正確答案: 1.300 000 正確答案: 1.300 000 4.15 執(zhí)行程序時的輸入為123456789,則程序的運行結(jié)果為 【5】 。 #include "stdio.h" main()  int a,b; scanf("-%*2d",&a,&b); printf("%dn",a-b); 正確答案: 7第5章 選擇結(jié)構(gòu)程序設(shè)計一、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確

29、的,請將正確選項填涂在答題卡相應(yīng)位置上。)5.1 在C程序中,判邏輯值時,用“非0”表示邏輯值“真”, 又用“0”表示邏輯值“假”。 在求邏輯值時,用()表示邏輯表達式值為“真”,又用()表示邏輯表達式值為“假”。A)1 0 B)0 1 C)非0 非0 D)1 1正確答案: A5.2 已知int x=6,y=2,z;則執(zhí)行表達式z=x=x>y后,變量z的值為A)0 B)1 C)4 D)5正確答案: B5.3 能正確表示邏輯關(guān)系:“a10或a0”的C語言表達式是A)a>=10 or a<=0 B)a>=0|a<=10C)a>=10 &&a<

30、;=0 D)a>=10a<=0正確答案: D5.4 若變量c為char類型,能正確判斷出c為小寫字母的表達式是A)a<=c<=z B)(c>=a)|(c<=z)C)(a<=c)and(z>=c) D)(c>=a)&&(c<=z)正確答案: D5.5 設(shè)int x=1,y=1;表達式(!x|y- -)的值是A)0 B)1 C)2 D)-1正確答案: B5.6 有如下程序段int a=14,b=15,x;char c=A;x=(a&&b)&&(c<B);執(zhí)行該程序段后,x的值為A)tu

31、re B)false C)0 D)1正確答案: D5.7 以下程序的輸出結(jié)果是main() int a=4,b=5,c=0,d;d=!a&&!b|!c;printf("%dn",d); A)1 B)0 C)非0的數(shù) D)-1正確答案: A5.8 設(shè)有:int a=1,b=2,c=3,d=4,m=2,n=2;執(zhí)行 (m=a>b)&&(n=c>d)后n的值是A)1 B)2 C)3 D)4正確答案: B5.9 已知x,y,z均為整型變量,且值均為1,則執(zhí)行語句+x|+y&&+z;后,表達式x+y的值為A)1 B)2 C)

32、3 D)4正確答案: C5.10 表達式a<B|(C&D)中運算符優(yōu)先級最高的是A)| B)& C)< D)()正確答案: D5.11 若運行時給變量x輸入12,則以下程序的運行結(jié)果是main()int x,y;scanf("%d",&x);y=x>12?x+10:x-12;printf("%dn",y); A)0 B)22 C)12 D)10正確答案: A5.12 已知char ch=C;則以下表達式的值是ch=(ch>=A && ch<=Z)?(ch+32):ch;A)A B)a

33、C)Z D)c正確答案: D5.13 若有條件表達式 (exp)?a+:b-,則以下表達式中能完全等價于表達式(exp)的是A)(exp=0) B)(exp!=0) C)(exp=1) D)(exp!=1)正確答案: B5.14 有以下程序main()int i=1,j=1,k=2;if(j+|k+)&&i+)printf("%d,%d,%dn",i,j,k);執(zhí)行后輸出結(jié)果是 A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3正確答案: C5.15 請閱讀以下程序:main() int a=5,b=0,c=0;if(a=b+c)printf(&

34、quot;*n");else printf("n");以上程序A)有語法錯不能通過編譯 B)可以通過編譯但不能通過連接C)輸出* D)輸出正確答案: D5.16 若執(zhí)行下述程序時,若從鍵盤輸入6和8時,結(jié)果為main()int a,b,s;scanf("%d%d",&a,&b);s=a;if(a<B)s=b;s*=s;printf("%d",s);A)36 B)64 C)48 D)以上都不對正確答案: B5.17 有如下程序main()float x=2.0,y;if(x<0.0)y=0.0;el

35、se if(x<10.0)y=1.0/x;else y=1.0;printf("%fn",y);該程序的輸出結(jié)果是A)0.000000 B)0.250000 C)0.500000 D)1.000000正確答案: C5.18 以下4個選項中,不能看做一條語句的是A); B)a=5,b=2.5,c=3.6;C)if(a<5); D)if(b!=5)x=2;y=6;正確答案: D5.19 若int k=8;則執(zhí)行下列程序后,變量k的正確結(jié)果是main()int k=8;switch(k)case 9:k+=1;case 10:k+=1;case 11:k+=1;bre

36、ak;default:k+=1;printf("%dn",k);A)12 B)11 C)10 D)9正確答案: D5.20 閱讀如下程序段#include "stdio.h"main() int a=45,b=40,c=50,d;d=a>30?b:c;switch(d) case 30 : printf("%d,",a);case 40 : printf("%d,",b);case 50 : printf("%d,",c);default : printf("#");則

37、輸出的結(jié)果是A)40,50, B)50,# C)40,# D)40,50,#正確答案: D5.21 現(xiàn)有如下程序段,此程序段編譯有錯誤,則程序段的錯誤出在#include main() int a=30,b=40,c=50,d;d=a>30?b:c;switch(d) case a:printf("%d,",a);case b:printf("%d,",b);case c:printf("%d,",c);default:printf("#");A)default:printf("#");這

38、個語句 B)d=a>30?b:c;這個語句C)case a:printf("%d,",a); case b:printf("%d,",b); case c:printf("%d,",c);這三個語句D)switch(d)這個語句正確答案: C二、填空題(請將每一個空的正確答案寫在答題卡相應(yīng)序號后。)5.22 設(shè)y是int型,請寫出y為奇數(shù)的關(guān)系表達式 【1】 。正確答案: (y%2)=1 或 (y%2)!=05.23 設(shè)int a=5,b=6,表達式(a= =b- -)?+a:-b的值是【2】 。正確答案: 75.24 將以下程

39、序?qū)懗扇窟\算表達式是【3】 。if(a>b)max=a;else max=b;正確答案: max=(a>b)?a:b;5.25 以下程序輸出的結(jié)果是【4】。main() int a=5,b=4,c=3,d;d=(a>b>c);printf("%dn",d);正確答案: 05.26 若從鍵盤輸入58,則以下程序輸出的結(jié)果是 【5】 。main()int a;scanf("%d",&a);if(a>50)printf("%d",a);if(a>40)printf("%d",

40、a);if(a>30)printf("%d",a);正確答案: 5858585.27 閱讀下面語句,則程序的執(zhí)行結(jié)果是 【6】 。#include "stdio.h"main() int a=-1,b=1,k;if(+a<0)&&!(b- -<=0)printf("%d,%dn",a,b);else printf("%d,%dn",b,a);正確答案: 1,05.28 閱讀下面程序,則在執(zhí)行時候的輸出為 【7】 。#include "stdio.h"main()

41、int x=1,y=2,z=0;if(x=2)z=x,x=y,y=z;printf("%d,%dn",x,y);正確答案: 2,25.29 以下程序的輸出結(jié)果是【8】。main() int x=100, a=10, b=20, ok1=5, ok2=0;if(aelse if(ok2)x=10;else x=-1;printf("%dn", x);正確答案: -15.30 閱讀下面的程序,當(dāng)程序在執(zhí)行時,如果輸入的是A,則輸出結(jié)果為 【9】 。#include "stdio.h"main()char a;a=getchar();swi

42、tch(a) case 65: printf("%c",A);case 66: printf("%c",B);default :printf("%sn","other");正確答案: ABother第6章 循環(huán)控制 一、選擇題(在下列各題的A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項填涂在答題卡相應(yīng)位置上。) 6.1 對表達式for(表達式1; 表達式3)可理解為 A)for(表達式1;0;表達式3) B)for(表達式1;1;表達式3) C)for(

43、表達式1;表達式1;表達式3) D)for(表達式1;表達式3;表達式3) 正確答案: B 6.2 在下列選項中,沒有構(gòu)成死循環(huán)的是 A)int i=100; while(1) i=i0+1; if(i>100)break;  B)for(;); C)int k=10000; dok+;while(k>10000); D)int s=36; while(s)-s; 正確答案: D 6.3 下面有關(guān)for循環(huán)的正確描述是 A)for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況 B)for循環(huán)是先執(zhí)行循環(huán)體

44、語句,后判斷表達式 C)在for循環(huán)中,不能用break語句跳出循環(huán)體 D)for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號括起來 正確答案: D 6.4 若int i,j;,則for(i=j=0;i<10&&j<8;i+,j+=3)控制的循環(huán)體執(zhí)行的次數(shù)是 A)9 B)8 C)3 D)2 正確答案: C 6.5 閱讀下列程序段,則程序的輸出結(jié)果是 #include "stdio.h" main()  int a=10,b=10

45、,k; for(k=0;a>8;b=+k) printf("%d,%d,",a- -,- -b); printf("n"); A)10,10,10,0, B)10,9,9,0, C)10,10,9,1, D)9,9,9,1, 考生答案: 正確答案: B 6.6 有一堆零件(100到200之間),如果分成4個零件一組的若干組,則多2個零件;若分成7個零件一組,則多3個零件;若分成9個零件一組,則多5個零件。下面程序是求這堆零件總數(shù),請選擇填空。 #include 

46、; main()  int i; for(i=100;i<200;i+) if(i-2)%4=0) if(!(i-3)%7) if(_) printf("%d",i); A)i%9=5 B)i%9!=5 C)(i-5)%9!=0 D)(i-5)%9=0 正確答案: D 6.7 下列程序的輸出結(jié)果是 #include "stdio.h" main() int i,a=0,b=0; for(i=1;i<10;i+)  if(i%2= =0

47、)  a+; continue;  b+;  printf("a=%d,b=%d",a,b); A)a=4,b=4 B)a=4,b=5 C)a=5,b=4 D)a=5,b=5 正確答案: B 6.8 閱讀下列程序,則執(zhí)行結(jié)果是 #include "stdio.h" main() int a=0,b=0,c=0,i; for(i=0;i<4;i+) switch(i)  case 0:a=i+; case 1:b=i+;

48、case 2:c=i+; case 3:i+;  printf("%d,%d,%d,%dn",a,b,c,i); A)0,1,3,4 B)1,2,3,4 C)0,1,2,5 D)0,2,3,4 正確答案: C 6.9 閱讀下列程序,程序的輸出結(jié)果是 #include "stdio.h" main() int m,n; float k; for(m=6;m>2;m- -)  k=0; for(n=m;n>1;n-&#

49、160;-) k=k+m*n; printf("%fn",k); A)5.000000 B)15.000000 C)25.000000 D)35.000000 正確答案: B 6.10 下面程序的運行結(jié)果是 #include "stdio.h" main()  int j,i,k=0; for(j=50;j<=60;j+)  if(!(k) printf("n"); for(i=2;i<J;I+)&NBSP; if(

50、!(j%i) break; if(i>=j-1)  printf("%d",j); k+;  A)5359 B)5953 C)3595 D)9535 正確答案: A 6.11 已知 int t=0; while(t=1) . 則以下敘述正確的是 A)循環(huán)控制表達式的值為0 B)循環(huán)控制表達式的值為1 C)循環(huán)控制表達式不合法 D)以上說法都不對 正確答案: B 6.12 設(shè)有以下程序段 int x=0,s=0; while(!x!

51、=0)s+=+x; printf("%d",s); 則 A)運行程序段后輸出0 B)運行程序段后輸出1 C)程序段中的控制表達式是非法的 D)程序段執(zhí)行無限次 正確答案: B 6.13 下列程序的輸出結(jié)果是 #include "stdio.h" main()  int i=6; while(i- -) printf("%d",- -i); printf("n"); A)531 B)420 C)654321&

52、#160;D)死循環(huán) 正確答案: B 6.14 對下,兩個語句描述正確的是 .while(1).for(;) A)都是無限循環(huán) B)是無限循環(huán),錯誤 C)循環(huán)一次,錯誤 D)以上答案都錯 正確答案: A 6.15 以下程序段的描述,正確的是 x=-1; do x=x*x; while(!x); A)是死循環(huán) B)循環(huán)執(zhí)行兩次  C)循環(huán)執(zhí)行一次 D)有語法錯誤 正確答案: C 6.16 若有如下語句 int x=3; do printf("%dn"

53、;,x-=2);while(!(- -x); 則上面程序段 A)輸出的是1 B)輸出的是1和-2 C)輸出的是3和0 D)是死循環(huán) 正確答案: B 6.17 下面程序的運行結(jié)果是 #include  main()  int a=1,b=10; do  b-=a; a+; while(b- -<0); printf("a=%d,b=%dn",a,b); A)a=3,b=11 B)a=2,b=8 C)a=1,b=-1 D)a

54、=4,b=9 正確答案: B 6.18 若運行以下程序時,從鍵盤輸入 ADescriptor(表示回車),則下面程序的運行結(jié)果是#include  main() char c; int v0=1,v1=0,v2=0; doswitch(c=getchar() case a:case A: case e:case E: case i:case I: case o:case O: case u:case U:v1+=1; default:v

55、0+=1;v2+=1;   while(c!=n);  printf("v0=%d,v1=%d,v2=%dn",v0,v1,v2); A)v0=7,v1=4,v2=7 B)v0=8,v1=4,v2=8 C)v0=11,v1=4,v2=11 D)v0=13,v1=4,v2=12 正確答案: D 6.19 下面程序的功能是把316表示為兩個加數(shù)的和,使兩個加數(shù)分別能被13和11整除,請選擇填空。 #include  main()  int i=0,j,k; do i+;

56、 k=316-13*i; while(_); j=k/11;  printf("316=13*%d+11*%d",i,j); A)k/11 B)k C)k/11=0 D)k=0 正確答案: B 6.20 C語言中 while 和do-while循環(huán)的主要區(qū)別是 A)do-while的循環(huán)體至少無條件執(zhí)行一次 B)while的循環(huán)控制條件比do-while的循環(huán)控制條件更嚴格 C)do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi) D)do-while 的循環(huán)體不能是復(fù)合語句 正

57、確答案: A 6.21 下列說法中錯誤的是 A)只能在循環(huán)體內(nèi)使用break語句 B)在循環(huán)體內(nèi)使用break語句可以使流程跳出本層循環(huán)體,從而提前結(jié)束本層循環(huán) C)在while和dowhile循環(huán)中,continue語句并沒有使整個循環(huán)終止 D)continue的作用是結(jié)束本次循環(huán),即跳過本次循環(huán)體中余下尚未執(zhí)行的語句,接著再一次進行循環(huán)判斷 正確答案: A 二、填空題(請將每一個空的正確答案寫在答題卡相應(yīng)序號后。) 6.22 設(shè)i,j,k均為int型變量,則執(zhí)行完下面的for語句后,k的值為【1】。 for(i=0, j=10; 

58、i<=j; i+, j- -) k=i+j; 正確答案: 10 6.23 下列程序的功能是輸入一個整數(shù),判斷是否是素數(shù),若為素數(shù)輸出1,否則輸出0,請?zhí)羁铡?main() int i, x, y=1; scanf("%d", &x); for(i=2; i<=x/2; i+) if【2】 y=0; break; printf("%dn", y); 正確答案: (x%i= =0) 6.24 以下程序的輸出結(jié)果是【3】。 main()  int y=9; for(; y>0; y- -)

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論