c語(yǔ)言習(xí)題冊(cè)及答案Word版_第1頁(yè)
c語(yǔ)言習(xí)題冊(cè)及答案Word版_第2頁(yè)
c語(yǔ)言習(xí)題冊(cè)及答案Word版_第3頁(yè)
c語(yǔ)言習(xí)題冊(cè)及答案Word版_第4頁(yè)
c語(yǔ)言習(xí)題冊(cè)及答案Word版_第5頁(yè)
已閱讀5頁(yè),還剩63頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除!第3章 課后練習(xí)及作業(yè)習(xí)題指導(dǎo)(參考答案)作業(yè)01 C語(yǔ)言基礎(chǔ)知識(shí)一、選擇題1.C語(yǔ)言程序的基本單位是( )。 A)函數(shù) B)過(guò)程 C)子程序 D)子例程2.下列個(gè)選項(xiàng)中,合法的C語(yǔ)言關(guān)鍵字是( )。 A)integer B)sin C)string D)void3.下列選項(xiàng)中,不是C語(yǔ)言提供的合法關(guān)鍵字的是( )。 A)switch B)cher C)default D)case4.以下選項(xiàng)中合法的用戶(hù)標(biāo)識(shí)符是( )。A)int B)a# C)5mem D)_2435.C語(yǔ)言程序一行寫(xiě)不下時(shí),應(yīng)該( )。 A)用回車(chē)換行 B)在任意空格處

2、換行 C)用分號(hào)換行 D)用逗號(hào)換行6.在C程序中,可以作為用戶(hù)標(biāo)識(shí)符的一組標(biāo)識(shí)符是( )。 A)void define WORD B)as_b3 _224 Else C)switch wer case D)4b DO SIG7.在C語(yǔ)言中,下列合法的字符常量是( )。 A)039 B)x76 C)ab D)o8.以下說(shuō)法正確的是( )。 A)C語(yǔ)言程序是從第一個(gè)定義的函數(shù)開(kāi)始執(zhí)行 B)在C語(yǔ)言程序中,要調(diào)用的函數(shù)必須在main()函數(shù)中定義 C)C語(yǔ)言程序是從main()函數(shù)開(kāi)始執(zhí)行的 D)C語(yǔ)言程序中的main()函數(shù)必須放在程序的開(kāi)始部分9.( )是構(gòu)成C語(yǔ)言程序的基本單位A)函數(shù) B)

3、變量 C)子程序 D)語(yǔ)句10.一個(gè)C語(yǔ)言程序總是從( )開(kāi)始執(zhí)行的A)主過(guò)程 B)主函數(shù) C)子程序 D)主程序11.以下敘述不正確的是( ) A)一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成 B)一個(gè)C源程序必須包含一個(gè)main()函數(shù) C)C程序的基本組成單位是函數(shù) D)在C程序中,注釋說(shuō)明只能位于一條語(yǔ)句的后面12.C語(yǔ)言規(guī)定:在一個(gè)源程序中,main()函數(shù)的位置( ) A)必須在最開(kāi)始 B)必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面 C)可以任意 D)必須在最后13.以下敘述正確的是( ) A)在C程序中,main()函數(shù)必須位于程序的最前面 B)C程序中的每行中只能寫(xiě)一條語(yǔ)句 C)C語(yǔ)言本身沒(méi)有輸入輸出

4、語(yǔ)句D)在對(duì)一個(gè)C程序進(jìn)行編譯的過(guò)程中,可發(fā)現(xiàn)注釋中的拼寫(xiě)錯(cuò)誤14.C語(yǔ)言中標(biāo)識(shí)符只能由字母、數(shù)字和下劃線(xiàn)3種字符組成,且第一個(gè)字符( )A)必須為字母 B)必須為下劃線(xiàn)C)必須為字母或下劃線(xiàn) D)可以是字母、數(shù)字和下劃線(xiàn)中任意一種字符二、填空題1.一個(gè)C語(yǔ)言編寫(xiě)的程序是從 main函數(shù) 開(kāi)始執(zhí)行的。2.結(jié)構(gòu)化程序所規(guī)定的3種基本控制結(jié)構(gòu)是 順序結(jié)構(gòu) 、 選擇結(jié)構(gòu) 和 循環(huán)結(jié)構(gòu) 。3.C語(yǔ)言的標(biāo)識(shí)符可分為 保留字 、 用戶(hù)定義標(biāo)識(shí)符 和預(yù)定義標(biāo)識(shí)符3類(lèi)。4.在C語(yǔ)言中,整數(shù)可用 十 進(jìn)制、 八 進(jìn)制和 十六 進(jìn)制三種。5.一個(gè)C語(yǔ)言程序的開(kāi)發(fā)過(guò)程包括:編輯、 編譯 、連接和運(yùn)行4步。6.一個(gè)C

5、源程序中至少應(yīng)包括一個(gè) main函數(shù) 。7.在一個(gè)C源程序中,注釋部分兩側(cè)分界符分別為 /* 和 */ 。8.C語(yǔ)言中的標(biāo)識(shí)符只能由3種字符組成,它們是 字母 、 數(shù)字 和 下劃線(xiàn) 。9.C程序執(zhí)行過(guò)程生成的3種文件及擴(kuò)展名為 .c 、 .obj 和 .exe 。作業(yè)02 數(shù)據(jù)類(lèi)型及運(yùn)算一、選擇題1. C語(yǔ)言中簡(jiǎn)單數(shù)據(jù)類(lèi)型有( )。 A)整型、實(shí)型、邏輯型 B)整型、字符型、邏輯型C)整型、實(shí)型、字符型 D)整型、實(shí)型、字符型、邏輯型2. 以下選項(xiàng)中正確的整型常量是( )。A)-37 B)32,758 C)3 2 6 D)6.3. 以下選項(xiàng)中合法的C語(yǔ)言字符常量是( )。A)t B) ”A”

6、C) 67 D)A4以下選項(xiàng)中不正確的實(shí)型常量是( )。 A)123 B)1e4 C)3.640E-1 D)0.355不合法的十六進(jìn)制數(shù)是( )。A)0xff B) 0X11 C) 0x1g D)0Xabc6以下選項(xiàng)中合法的C語(yǔ)言賦值語(yǔ)句是( )。A)a=b=34 B)a=34,b=34 C) -i D)m=(int)(x+y);7在C語(yǔ)言中,char 型數(shù)據(jù)在內(nèi)存中是以( )形式儲(chǔ)存的。A)原碼 B) 補(bǔ)碼 C) ASCII碼 D)反碼8. 以下( )是不正確的轉(zhuǎn)義字符A) B) ” C) 020 D)09. 若有代數(shù)式3aebc,則不正確的C語(yǔ)言表達(dá)式是( )。 A)a/b/c*e*3 B

7、)3*a*e/b/c C)3*a*e/b*c D)a*e/c/b*310. 在C語(yǔ)言中,要求參加運(yùn)算的數(shù)必須是整數(shù)的運(yùn)算符是( )。 A)% B)/ C)! D)*11. 若已定義x和y為double類(lèi)型,則表達(dá)式“x=1,y=x+3/2“的值是( )。A)1 B)2 C)2.0 D)2.512.若變量已正確定義并賦值,符合C語(yǔ)言語(yǔ)法的表達(dá)式是( )。A)a=a+1 B)a=7+b+c,a+ C)int(12.3/4) D)a=a+7=c+b13.若a為整型變量,則下列語(yǔ)句( )。a=-2L;printf(“%dn”,a);A)賦值不合法 B)輸出值為-2 C)輸出值不為確定值 D)輸出值為2

8、14.對(duì)于條件表達(dá)式(M)?(a+):(a-),其中表達(dá)式M等價(jià)于( )。A)M= =0 B)M= =-1 C)M!=0 D)M!=115.若有定義:int x=3,y=2;float a=2.5,b=3.5;則下面表達(dá)式的值為( )。(x+y)%2+(int)a/(int)bA)1.0 B)1 C)2.0 D)216.若x和n均是int型變量,且x初值為12,n初值為5,則執(zhí)行下面表達(dá)式后x值為( )。x%=(n%=2)A)0 B)1 C)2 D)317.假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,a+,b+,a+b)的值為( )。A)7 B)8 C)9 D)1018.設(shè)int x=1,

9、y=1;表達(dá)式(!x|y-)的值是( )。A)0 B)1 C)2 D)-119.若已定義x和y為double類(lèi)型,則表達(dá)式x=1,y=x+3/2的值是( )。A)1 B)2 C)2.0 D)2.520.若變量a,i已正確定義,且i已正確賦值,則合法的語(yǔ)句是( )。A)i=int(a) B)+i; C)a=a+=5 D)a=int(i)21.若執(zhí)行以下程序段后,c3的值是( )。int c1=1,c2=2,c3; c3=1.0/c2*c1;A)0 B)0.5 C)1 D)222.能正確表示邏輯關(guān)系”a10或a0”的C語(yǔ)言表達(dá)式是( )。A)a=10 or a=0|a=10&a=10|ab)&(n

10、=cd)運(yùn)算后,n的值為( )。A)0 B)1 C)2 D)326.假定w、x、y、z、m均為int型變量,有如下程序段:w=1;x=2;y=3;z=4;m=(wx)? w:x; m=(my)? m:y; m=(mb后,變量a的值為( )。A)0 B)1 C)4 D)530.判斷char類(lèi)型數(shù)據(jù)c1是否為大寫(xiě)字母的最簡(jiǎn)單且正確的表達(dá)式為( )。A)A=c1=A)&(c1=Z)C)(A=c1) D)(c1=A)&(c1=Z)二、填空題1.若a是int型變量,則執(zhí)行表達(dá)式a=25/3%3后a的值是 2 。2.若x和n均是int型變量,且x和n的初值均為5,則執(zhí)行表達(dá)式x+=n+后x的值為 10 ,

11、n的值為 6 。3.若x和y都是double型變量,且x初值為3.0,y初值為2.0,則表達(dá)式pow(y,fabs(x)的值為 8.0 。4.表達(dá)式pow(2.8,sqrt(double(x)值的數(shù)據(jù)類(lèi)型為 double 。5.若a是int型變量,則表達(dá)式(a=4*5,a*2),a+6的值為 26 。6.若有定義int m=5,y=2;則執(zhí)行表達(dá)式y(tǒng)+=y-=m*=y后y的值為 -16 。7.已知int a=15,b=240;則表達(dá)式(a&b)&b|b的結(jié)果為 1 。8.表達(dá)式8.0*(1/2)的值為 0.0 。9.字符串“ab034x79”的長(zhǎng)度為 5 。10.若s是int型變量,且s=6,

12、則s%2+(s+1)%2表達(dá)式的值為 1 。11.若a、b和c均是int型變量,則計(jì)算表達(dá)式a=(b=4)+(c=2)后,a值為 6 ,b值為 4 ,c值為 2 。12.若有定義:char c=010;則變量c中包含的字符個(gè)數(shù)為 1 。13.若i 為int整形變量且賦值為6,則運(yùn)算i+后表達(dá)式的值為 6 變量i的值是 7 。14.若二進(jìn)制a是00101101,若想通過(guò)異或運(yùn)算ab使a的高4位取反,低4位不變,則二進(jìn)制b是 11110000 。15.表達(dá)式3&4的值為 0 ,表達(dá)式3|4的值為 7 ,表達(dá)式3&4的值為 1 。三、讀程序?qū)懡Y(jié)果1.如下程序的運(yùn)行結(jié)果是( 33 )。#include

13、void main() int y=3,x=3,z=1;printf(“%d%dn”,(+x,y+),z+2); 2.以下程序的輸出結(jié)果是( 6 )。#includevoid main() int a=5,b=4,c=6,d;printf(“%dn”,d=ab?(ac? a:c):(b); 3.在C語(yǔ)言中,如果下面的變量都是int類(lèi)型,則輸出的結(jié)果是( 7 )。sum=pad=5;pad=sum+,pad+,+pad;printf(“%dn”,pad);4.以下程序的輸出結(jié)果是( 9,10 )。#includevoid main() int i=010,j=10;printf(“%d,%dn”

14、,+i,j-); 作業(yè)03 基本語(yǔ)句一、選擇題1.若有說(shuō)明:double a;則正確輸入語(yǔ)句是( )。A)scanf(“%if”,a) B)scanf(“%lf”,&a)C)scanf(“%if”,&a) D)scanf(“%lo”,&a)2.合法的C語(yǔ)言賦值語(yǔ)句是( )。A)a=b=58 B)k=int(a+b) C)a=58,b=58 D)-i;3.若變量已確定定義,以下程序段輸出結(jié)果是( )。x=5.16894;printf(“%fn”,(int)(x*1000+0.5)/(float)(1000)”); A) 輸出格式說(shuō)明與輸出項(xiàng)不匹配,輸出無(wú)定值 B) 5.170000 C) 5.1

15、68000 D) 5.1690004.若有以下程序其輸出結(jié)果是( )。 int a=0 ,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf(“%d,%d,%dn”,a,b,c); A) 3,0,-10 B) 0,0,5 C) -10,3-10 D) 3,0,35.以下程序其輸出結(jié)果是( )。 #include void main() int a=2 , b=5; printf(“a=%d,b=%dn”,a,b); A) a=%2,d=%5 B) a=2,b=5 C) a=%d,b=%5 D) a=%d,b=%d6.以下程序段輸出結(jié)果是( )。 float a=3.14

16、15; printf (“|%6.0f|n”,a,b); A) |3.1415| B) | 3.0| C) | 3| D) |3. |7.以下程序段輸出結(jié)果是( )。 float a=57.666; printf(“*%010.2f*n”,a); A)*0000057.66 B) *57.66* C) *00000.57.67* D) *57.57*8.若變量c定義為float型,當(dāng)從終端輸入283.1900后按回車(chē),能給變量c賦以283.19的輸入語(yǔ)句是( )。A)scanf(“%f”,c); B)scanf(“%8.4f”,&c);C)scanf(“%d”,&c) D)scanf(“%8f

17、”,&c);9.若有以下定義語(yǔ)句,則輸出結(jié)果是( )。int u=010,v=0x10,w=10;printf(“%d,%d,%dn”,u,v,w);A)8,16,10 B)10,10,10 C)8,8,10 D)8,10,1010.下面程序的輸出是( )。 #include void main() int k=11; printf(“%d,%o,%xn”,k,k,k); A)12,11,11 B)11,13,13 C)11,013,0xb D)11,13,b11.下面程序的輸出結(jié)果是( )。#include main() int x=5,y=3; printf(“%dn”,y=x/y); A

18、)0 B)1 C)3 D)不確定的值12.若變量已正確定義,下面程序段的輸出結(jié)果是( )。/與3類(lèi)似x=5.238794;printf(“%fn”,(int)(x*1000+0.5)/(float)1000);A)5.239000 B)輸出格式說(shuō)明與輸出項(xiàng)不匹配,輸出無(wú)定值C)5.238000 D)5.24 13.下面語(yǔ)句的輸出結(jié)果是( )。print(|%8.5f|n,3461.45);A) |61.45000| B)|3461.450| C)|3461.45000| D)|3461.4500|14.執(zhí)行下面程序中的輸出語(yǔ)句后,a的值是( )。#include void main() int

19、 a; printf(%dn,(a=3*5,a*4,a+5); A)65 B)20 C)15 D)1015.以下程序不用第三個(gè)變量,實(shí)現(xiàn)將兩個(gè)數(shù)進(jìn)行對(duì)調(diào)的操作,請(qǐng)?zhí)羁眨?)。#includemain() int a,b; scanf(%d%d,&a,&b); printf(a=%d b=%d,a,b); a=a+b;b=a-b;a=_; printf(a=%d b=%dn,a,b); A) a=b B)a-b C)b*a D)a/b16.以下程序的輸出結(jié)果是( )。#includevoid main() int m=7,n=4; float a=38.4,b=6.4,x; x=m/2+n*a/

20、b+1/2; printf(%fn,x); A)27.000000 B)27.500000 C)28.000000 D)28.50000017.若變量都已正確說(shuō)明,則以下程序段輸出結(jié)果是( )。a=2;b=3;printf(“ab?*a=%d;#b=%d”,a,b); ?A) 沒(méi)有正確的輸出格式控制 B)輸出為:*a=2C)輸出為:#b=2 D)輸出為:*a=2#b=218.若已定義int a=256;,執(zhí)行語(yǔ)句printf(%x,a);的結(jié)果是( )。A)100 B)256 C)ffe D)ff19.執(zhí)行下列程序時(shí)輸入1234567,程序的運(yùn)行結(jié)果為( )。#includevoid main

21、( ) int x,y; scanf(%2d%2d,&x,&y); printf(%dn,x+y); A)17 B)46 C)15 D)920.已知int a,;int b;float c;double d;,則表達(dá)式a*b=c-d結(jié)果為( )型。?A) Double B)int C)float D)char21.已知int a,b;,用語(yǔ)句scanf(%d%d,&a,&b);輸入a,b的值時(shí),不能作為輸入數(shù)據(jù)分隔符的是( )。A) , B)空格 C)回車(chē) D)Tab鍵22.語(yǔ)句printf(%d,(a=2)&(b=-2);的輸出結(jié)果是( )。A) 無(wú)輸出 B)結(jié)果不確定 C)-1 D)123

22、.下述程序的輸出結(jié)果是( )。#includevoid main() printf(%f,2.5+1*7%2/4); A)2.50000 B)2.750000 C)3.375000 D)3.0000002、 填空題1. 變量i、j、k已定義為int類(lèi)型并有初值0,用以下語(yǔ)句進(jìn)行輸入:scanf(“%d”,&j);scanf(“%d”,&k);當(dāng)執(zhí)行以上輸入語(yǔ)句,從鍵盤(pán)輸入(代表回車(chē)鍵):12.3 則變量i、j、k的值分別是 0,12,0 。2. 復(fù)合語(yǔ)句在語(yǔ)法上被認(rèn)為是 一條語(yǔ)句 ,空語(yǔ)句的形式是 ; 。3. C語(yǔ)句句尾用 ; 結(jié)束。4. 運(yùn)行如下程序:#include void main()

23、 int a,b,c; scanf(“%d,%d,%d”,&a,&b,&c); printf(“%d,%d,%d”,a,b,c); 運(yùn)行時(shí),輸入3、4、5,輸出的值為 3,4,5 。5.字符常量使用一對(duì) 界定單個(gè)字符,而字符串常量使用一對(duì) 來(lái)界定若干個(gè)字符的序列。6.設(shè)x=2.5,a=7,y=4.7, 則x+a%3*(int)(x+y)%2/4為 2.5 。7.自增運(yùn)算符(+)或自減運(yùn)算符(-)只能用于 變量 ,不能用于 常量或表達(dá)式 。8.表達(dá)式5%(-3)的值是 2 ,表達(dá)式-5%(-3)的值是 -2 。-200,25i=-200,j=25i=-200 j=25三、讀程序?qū)懡Y(jié)果1. 下列程

24、序的輸出結(jié)果是( )。#includevoid main() int i=-200,j=25;printf(%d,%d,i,j);printf(i=%d,j=%dn,i,j);printf(i=%dn j=%dn,i,j); 2. 使用強(qiáng)制轉(zhuǎn)換方法將正整數(shù)轉(zhuǎn)換成字符。本程序的執(zhí)行結(jié)果是( )。#includevoid main() char c;int i; printf(輸入一個(gè)正整數(shù)(小于255):); scanf(%d,&i); c=(char)i; printf(%c的ASCII碼為%dn,c,i); 3. 下列程序的輸出結(jié)果是(560分鐘9小時(shí)20分鐘 )。#includevoid

25、main() int i=560,h,m; h=i/60; m=i-60*h; printf(%d分鐘%d小時(shí)%d分鐘n,i,h,m); 4. 下列程序的輸出結(jié)果是( *3.140000,3.142* )。#includevoid main() printf(*%f,%4.3f*n,3.14,3.1415); 5.已有定義int d=-2;執(zhí)行以下語(yǔ)句后的輸出結(jié)果是( )。printf(*d(1)=%d*d(2)=%3d*d(3)=%-3d*n,d,d,d); *d(1)=-2*d(2)= -2*d(3)=-2 *printf(*d(4)=%x*d(5)=%6x*d(6)=%-6x*n,d,d

26、,d);*d(4)=fffffffe*d(5)=fffffffe*d(6)=fffffffe*6.在scanf()函數(shù)調(diào)用語(yǔ)言,可以在格式字符和%號(hào)之間加上一個(gè)星號(hào),他的作用是(跳過(guò)對(duì)應(yīng)的輸入數(shù)據(jù));當(dāng)輸入以下數(shù)據(jù)時(shí):10 20 30 40回車(chē)(此處 代表空格),下面語(yǔ)句的執(zhí)行結(jié)果是( 103040 )。int a1,a2,a3;scanf(%d%*d%d%d,&a1,&a2,&a3);printf(%d%d%d,a1,a2,a3);7.執(zhí)行以下程序時(shí),若從第一列開(kāi)始輸入數(shù)據(jù),為使變量a=3,b=7,x=8.5,y=71.82,c1= A ,c2=a ,正確的數(shù)據(jù)輸入形式是( )。#inclu

27、devoid main() int a,b;float x,y;char c1,c2; scanf(a=%db=%d,&a,&b); a=3b=7 scanf(x=%fy=%f,&a,&b); x=8.5y=71.82 scanf(c1=%cc2=%c,&c1,&c2); c1=A,c2=aprintf(a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c,a,b,x,y,c1,c2); 四、程序填空1、給定程序的功能是:求二分之一的圓面積,函數(shù)通過(guò)形參得到圓的半徑,函數(shù)返回二分之一的圓面積(注:圓面積公式為:2,在程序中定義的變量名要與公式的變量相同)。 例如:輸入圓的半徑值:19

28、.527,輸出為:s=598.949991。 注意:部分源程序給出如下。 試題程序: #include void main()double x;printf(Enter x: );scanf(%lf,【1】); &xprintf(s=%lfn,3.14159*【2】/2.0); x*x五、編程題1.請(qǐng)編寫(xiě)程序其功能是:將兩個(gè)兩位的正整數(shù)a、b合并成一個(gè)整數(shù)放在c中。合并方式是:將a數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的十位和千位上,b數(shù)的十位和個(gè)位數(shù)依次放在c數(shù)的個(gè)位和百位上。 例如:當(dāng)a=45,b=12,調(diào)用該函數(shù)后,c=5241。 2.假設(shè)m是一個(gè)三位數(shù),則輸出將m的個(gè)位,十位,百位反序而成的三位

29、數(shù)(例如:123反序?yàn)?21。作業(yè)04 選擇結(jié)構(gòu)一、選擇題1.下面的程序( )。#include void main() int x =3,y =0,z =0;if(x =y +z) printf( * * * *);else printf(# # # #); A)有語(yǔ)法錯(cuò)誤不能通過(guò)編譯 B)輸出 * * * * C)可以通過(guò)編譯,但是不能通過(guò)連接,因而不能運(yùn)行 D)輸出# # # #2.兩次運(yùn)行下面的程序,如果從鍵盤(pán)上分別輸入6和4,則輸出結(jié)果是( )。#include void main( ) int x;scanf( %d , &x);if(x+5) printf( %d,x);else

30、 printf( %dn, x-); A)7和5 B)6和3 C)7和4 D)6和43.以下程序的輸出結(jié)果是( )。#include void main( ) int a =-1,b =4,k; k =(+a0)&! (b- -=10or a =10| a =10& &a =10|a =05.假定所有變量以正確說(shuō)明,下列程序段運(yùn)行后x的值是( )。 a=b=c=0;x =35; if(!a)x-; else if(b); if(c) x=3; else x=4;A)34 B)4 C)35 D)36.表示關(guān)系XYZ的c語(yǔ)言表達(dá)式為 ( )。A)(X =Y)&(Y =Z) B)(X =Y)AND(

31、Y =Z)C)(X =Y =Z) D)(X =Y)&(Y =Z)7.如下程序的輸出結(jié)果是( )。#include void main() int a,b,c =246; a=c/100%9; b=(-1)&(-1); printf( %d,%dn,a,b); A)2,1 B)3,2 C)4,3 D)2, -18.當(dāng)a=1、b=2、c=5、d=5時(shí),執(zhí)行下面的程序后,x的值是( )。 if(ab) if(cd)x=1; else if(ac) if(b=0|b=0)& (a0|b=0&b=0)& (a0&b0)& (a+b010.若a、b、c1、c2、x、y、均是整型變量,正確的switch語(yǔ)句

32、是( )。 A)switch(a +b); B)switch(a +b) case 1:y =a +b;break; case 3: case 0:y =a -b;break; case 1:y =a +b;break; case 3:y =b a,break; C)switch a D)switch(a b) case c1:y =a -b;break; default:y =a *b;break; case c2:x =a *b;break; case 3:case 4:x=a +b;break;default: x =a +b; case 10:case 11:y =a -b;break

33、; 11.下列關(guān)于switch語(yǔ)句和break語(yǔ)句的結(jié)論中,正確的是( )。A)break語(yǔ)句是switch語(yǔ)句中的一部分 B)在switch語(yǔ)句中可以根據(jù)需要使用或不使用break語(yǔ)句C)在switch語(yǔ)句中必須使用break語(yǔ)句 D)break語(yǔ)句只能用于switch語(yǔ)句中12.設(shè)有說(shuō)明語(yǔ)句“int a =1,b=0;”則執(zhí)行以下語(yǔ)句后,輸出為( )。 switch(a) case 1: switch(b) case 0:printf( * * 0 * * );break; case 1:printf( * * 1 * * );break; case 2:printf( * * 2 * *

34、 );break; A)* * 0 * * B)* * 0 * * * * 2 * *C)* * 0 * * * * 1 * * * * 2 * *D)有語(yǔ)法錯(cuò)誤13.為了避免在嵌套的條件語(yǔ)句ifelse中產(chǎn)生二義性,C語(yǔ)言規(guī)定:else子句總是與( )配對(duì)。A)縮排位置相同的if B)其之前最近的ifC)其之后最近的if D)同一行上的if14.有定義語(yǔ)句:int a =1 ,b =2,c =3,x;,則以下選項(xiàng)中各程序段執(zhí)行后,x的值不等于3的是( )。A)if(c a) x =1; B)if(a3) x =3; else if(b a) x =2; else if(a 2) x =2;

35、else x =3; else x =1;C)if(a 3) x =3; D)if(ab) x =b; if(a 2) x =2; if(bc) x =c; if(a 1) x =1; if(c b c) printf( %dn,d); else if (c-1= d) = 1); printf( %dn,d+ 1);else printf( %dn,d + 2);執(zhí)行后輸出結(jié)果是( )。A)2 B)3 C)4 D)編譯時(shí)有錯(cuò),無(wú)結(jié)果1 x 016.有一函數(shù):y = 0 x =0 ,以下程序段中不能根據(jù)x值正確計(jì)算出y值的是( )。-1 x 0) y =1; B)y =0; else if(x

36、 = =0) y =0; if(x 0) y =1; else y = -1; else if (x =0) if(x =0) if(x 0) y =1; if(x 0) y =1; else y =0; else y =-1; else y = -1;17.與y=(x 0?1:x 0) y =1; B)if(x) else if(x0) y=1; else y =0; else if(x =0) if (x 0)y =1; if(x 0) y =1;else if(x = =0) y =0; else y = -1; else y = -1;18.當(dāng)a=1,b=3,c=5,d=4時(shí),執(zhí)行下面

37、一段程序后,x的值為( )。 if (ab) if (cd) x1; else if(a c) if(b b B)a b0 C)0 a ab void main() int s,t,a,b; scanf ( %d,%d ,&a,&b); s =1;t =1; if(a0) s=s+1; if (ab) t=s+1; else if(a=b) t=5; else t=2*s; printf( %d n,t);20.對(duì)下述程序,( )是正確的判斷#includevoid main()int x,y;scanf(“%d,%d”,&x,&y);if(xy)x=y;y=x;elsex+;y+;print

38、f(“%d,%d”,x,y);A)語(yǔ)法錯(cuò)誤,不能通過(guò)編譯 B)輸入數(shù)據(jù)3和4,則輸入4和5C)輸入數(shù)據(jù)4和3,則輸入3和4 D)輸入數(shù)據(jù)4和3,則輸出4和4二、填空題1.表示“整數(shù)x的絕對(duì)值大于5”時(shí)值為“真”的c語(yǔ)言表達(dá)式是 x5 | x-5 。2.以下程序的輸出結(jié)果是 0 。#include void main( ) int a =5,b =4,c=3,d; d= (abc); printf( %d n,d);3.20x30或x-100的c語(yǔ)言表達(dá)式是 20x & x30 | x-100 。4.若int i=10;,則執(zhí)行下列程序后,變量i的正確結(jié)果是 13 。 switch(i) cas

39、e 9:i+=1; case 10:i+=1; case 11:i+=1; default:i+=1; 5.以下程序的輸出結(jié)果是 2 。#include void main( ) int x=2,y= -1,z =2; if(x y) if(y 0)z =0; else z + =1; printf( %dn,z); 6.若運(yùn)行時(shí)輸入12,則以下程序的結(jié)果 0 。#include void main( ) int x,y; scanf( %d ,&x); y =x 12? x +10:x -12; printf( %d n,y);7.設(shè)x、y、z均為int型變量,請(qǐng)寫(xiě)出描述“x或y中至少有一個(gè)

40、小于z” 的表達(dá)式 xz | y B&C A|A B的值是 0 。三、讀程序?qū)懡Y(jié)果1.以下程序運(yùn)行結(jié)果是( yes )。void main( ) int a =1,b =3,c =5;if(c =a +b) printf( yesn,);else printf( non);2.以下程序運(yùn)行結(jié)果是( 503 )。void main( ) int a =4,b =3,c =5,t =0; if (a b)t =a;a =b;b =t; if(a c)t =a;a =c;c =t; printf( %d %d %d n,a,b,c); 3.以下程序運(yùn)行結(jié)果是( 20,0 )。void main( ) int x=10,y=20,t=0; if(x=y) t=x;x=y;y=t; printf( %d ,%dn,x,y

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論