《C語言課后習(xí)題》word版_第1頁
《C語言課后習(xí)題》word版_第2頁
《C語言課后習(xí)題》word版_第3頁
《C語言課后習(xí)題》word版_第4頁
《C語言課后習(xí)題》word版_第5頁
已閱讀5頁,還剩143頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第一章C語言概述1.1選擇題【題1.1】一個C程序的執(zhí)行是從。本程序的main函數(shù)開始,到main函數(shù)結(jié)束本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束本程序的main函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束本程序文件的第一個函數(shù)開始,到本程序main函數(shù)結(jié)束【題1.2】以下敘述正確的是。在C程序中,main函數(shù)必須位于程序的最前面C程序的每行中只能寫一條語句C語言本身沒有輸入輸出語句在對一個C程序進(jìn)行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤【題1.3】以下敘述不正確的是。一個C源程序可由一個或多個函數(shù)組成一個C源程序必須包含一個main函數(shù)C程序的基本組成單位是函數(shù)在C程序中,注釋說

2、明只能位于一條語句的后面【題1.4】C語言規(guī)定:在一個源程序中,main函數(shù)的位置。必須在最開始必須在系統(tǒng)調(diào)用的庫函數(shù)的后面可以任意必須在最后【題1.5】一個C語言程序是由。一個主程序和若干子程序組成函數(shù)組成若干過程組成若干子程序組成填空題【題1.6】C源程序的基本單位是【】?!绢}1.7】一個C源程序至少應(yīng)包括一個【】?!绢}1.8】在一個C源程序中,注釋部分兩側(cè)的分界符分別為【1】和【2】?!绢}1.9】在C語言中,輸入操作是由庫函數(shù)【1】完成的,輸出操作是由庫函數(shù)【2】完成的?!绢}1.10】C程序的三種基本結(jié)構(gòu)是【】。第三章C語言的基本數(shù)據(jù)類型與表達(dá)式3.1選擇題【題3.1】在C語言中(以16

3、位PC機(jī)為例),5種基本數(shù)據(jù)類型的存儲空間長度的排列順序?yàn)?。charintlong int=floatdoublechar=intlong int=floatdoublecharintlong int=float=doublechar=int=long int=floatdouble【題3.2】若x、i、j和k都是int型變量,則執(zhí)行下面表達(dá)式后x的值為。x=(i=4,j=16,k=32)A)4B)16C)32D)52【題3.3】假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,b+,a+b)的值是。A)7B)8C)6D)2【題3.4】下列四組選項(xiàng)中,均不是C語言關(guān)鍵字的選項(xiàng)是。defineIF

4、typegetccharprintfincludescanfcasewhilego pow【題3.5】下列四個選項(xiàng)中,均是C語言關(guān)鍵字的選項(xiàng)是。autoenumincludeswitchtypedefcontinuesignedunionscanfif structtype【題3.6】下面四個選項(xiàng)中,均不合法的用戶標(biāo)識符的選項(xiàng)是。AP_0dofloatla0_Ab-agotoint_123tempINT【題3.7】C語言中的標(biāo)識符只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符。必須為字母必須為下劃線必須為字母或下劃線可以是字母、數(shù)字和下劃線中任一種字符【題3.8】下面四個選項(xiàng)中,均是合法整

5、型常量的選項(xiàng)是。160-0 xffff011-0 xcdf01a0 xe-01986,0120668-0 x48a2e50 x【題3.9】下面四個選項(xiàng)中,均是不合法的整型常量的選項(xiàng)是。-0f1-0 xffff0011-0Xcdf01712,456-0189995e2-0 x48eg-06803f【題3.10】下面四個選項(xiàng)中,均是不合法的浮點(diǎn)數(shù)的選項(xiàng)是。1600.12e31232e4.2.e5-.18123e40.0-e3.2341e3【題3.11】下面四個選項(xiàng)中,均是合法浮點(diǎn)數(shù)的選項(xiàng)是。+1e+15e-9.403e2-.6012e-4-8e5123e1.2e-.4+2e-1-e3.2345.e

6、-0【題3.12】下面四個選項(xiàng)中,均是合法轉(zhuǎn)義字符的選項(xiàng)是。n017”018fxab0101x1f【題3.13】下面四個選項(xiàng)中,均是不合法的轉(zhuǎn)義字符的選項(xiàng)是?!眡f1011a011fabc101 xlf【題3.14】下面正確的字符常量是。A)“c”B) C) WD) 【題3.15】下面四個選項(xiàng)中,均是不正確的八進(jìn)制數(shù)或十六進(jìn)制數(shù)的選項(xiàng)是。0160 x8f0180abc0170 xa010-0 x110 x160a127ff-123【題3.16】下面四個選項(xiàng)中,均是正確的八進(jìn)制數(shù)或十六進(jìn)制數(shù)的選項(xiàng)是。-100 x8f-0110abc-0170 xc0010-0 x110 xf10a12-0 x1

7、23-0 xa【題3.17】下面四個選項(xiàng)中,均是正確的數(shù)值常量或字符常量的選項(xiàng)是。0.00f8.9e&“a”3.9E-2.51e1”30110 xFF000a+0110 xabcd2e250.【題3.18】下面不正確的字符串常量是。A)abcB)“1212”C)“0”D)“”【題3.19】對應(yīng)以下各代數(shù)式中,若變量a和x均為double類型,則不正確的C語言表達(dá)式是。代數(shù)式C語言表達(dá)式exp(x*x/2)/sqrt(2*3.14159)1.0/2.0*(a*x+(a+x)/(4*a)sqrt(pow(sin(x*3.14159/180),2.5)x*x-exp(5.0)【題3.20】若有代數(shù)式

8、,則不正確的C語言表達(dá)式是。a/b/c*e*33*a*e/b/c3*a*e/b*ca*e/c/b*3【題3.21】已知各變量的類型說明如下:int k,a,b;unsigned long w=5;double x=1.42;則以下不符合C語言語法的表達(dá)式是。A)x%(-3)B)w+=-2C)k=(a=2,b=3,a+b)D)a+=a-=(b=4)*(a=3)【題3.22】已知各變量的類型說明如下:int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;則以下符合C語言語法的表達(dá)式是。A)a+=a-=(b=4)*(a=3)B)a=a*3=2C)x%

9、(-3)D)y=float(i)【題3.23】以下不正確的敘述是。在C程序中,逗號運(yùn)算符的優(yōu)先級最低在C程序中,APH和aph是兩個不同的變量若a和b類型相同,在執(zhí)行了賦值表達(dá)式a=b后b中的值將放入a中而b中的值不變當(dāng)從鍵盤輸入數(shù)據(jù)時,對于整型變量只能輸入整型數(shù)值,對于實(shí)型變量只能輸入實(shí)型數(shù)值【題3.24】以下正確的敘述是。在C程序中,每行中只能寫一條語句若a是實(shí)型變量,C程序中允許賦值a=10,因此實(shí)型變量中允許存放整型數(shù)在C程序中,無論是整數(shù)還是實(shí)數(shù),都能被準(zhǔn)確無誤地表示在C程序中,是只能用于整數(shù)運(yùn)算的運(yùn)算符【題3.25】以下符合C語言語法的賦值表達(dá)式是。A)d=9+e+f=d+9B)d

10、=9+e,f=d+9C)d=9+e,e+,d+9D)d=9+e+=d+7【題3.26】已知字母A的ASCII碼為十進(jìn)制數(shù)65,且c2為字符型,則執(zhí)行語句c2=A+6-3;后,c2中的值為。A)DB)68C)不確定的值D)C【題3.27】在C語言中,要求運(yùn)算數(shù)必須是整型的運(yùn)算符是。A)B)C)!D)【題3.28】若以下變量均是整型,且num=sum=7;則執(zhí)行表達(dá)式sUM=num+,sUM+,+num 后sum的值為。A)7B)8C)9D)10【題3.29】在C語言中,int、char和short三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)。A)由用戶自己定義B)均為2個字節(jié)C)是任意的D)由所用機(jī)器的機(jī)

11、器字長決定【題3.30】若有說明語句:char c=72;則變量c。A)包含1個字節(jié)B)包含2個字節(jié)C)包含3個字節(jié)D)說明不合法,c的值不確定【題3.31】若有定義:int a=7; float x=2.5,y=4.7;則表達(dá)式x+a%3*(int)(x+y)%2/4的值是。A)2.500000B)2.750000C)3.500000D)0.000000【題3.32】sizeof(float)是。A)一個雙精度型表達(dá)式B)一個整型表達(dá)式C)一種函數(shù)調(diào)用D)一個不合法的表達(dá)式【題3.33】設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+a+i*f值的數(shù)據(jù)類型為。A)intB)floatC

12、)doubleD)不確定【題3.34】下面四個選項(xiàng)中,均是非法常量的選項(xiàng)是。as-0fff0 xa0112,456-0 x18011770 xf0 xabc0“a”【題3.35】若有代數(shù)式,則正確的C語言表達(dá)式是。sqrt(fabs(pow(y,x)+log(y)sqrt(abs(pow(y,x)+log(y)sqrt(fabs(pow(x,y)+log(y)sqrt(abs(pow(x,y)+log(y)【題3.36】若有代數(shù)式,則正確的C語言表達(dá)式是。fabs(x*3+log(x)abs(pow(x,3)+log(x)abs(pow(x,3.0)+log(x)fabs(pow(x,3.0)

13、+log(x)【題3.37】在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是。A)補(bǔ)碼B)反碼C)原碼D)ASCII碼【題3.38】設(shè)變量n為float類型,m為int類型,則以下能實(shí)現(xiàn)將n中的數(shù)值保留小數(shù)點(diǎn)后兩位,第三位進(jìn)行四舍五入運(yùn)算的表達(dá)式是。A)n=(n*100+0.5)/100.0B)m=n*100+0.5,n=m/100.0C)n=n*100+0.5/100.0D)n=(n/100+0.5)*100.0【題3.39】表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為。A)intB)floatC)doubleD)不確定【題3.40】設(shè)C語言中,一個int型數(shù)據(jù)在內(nèi)存中占2個字節(jié),則u

14、nsigned int型數(shù)據(jù)的取值范圍為。A)0255B)032767C)065535D)02147483647【題3.41】設(shè)有說明:char w; int x; float y; double z;則表達(dá)式w*x+z-y值的數(shù)據(jù)類型為。A)floatB)charC)intD)double【題3.42】若有以下定義,則能使值為3的表達(dá)式是。int k=7,x=12;A)x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5D)(x%=k)-(k%=5)【題3.43】設(shè)以下變量均為int類型,則值不等于7的表達(dá)式是。A)(x=y=6,x+y,x+1)B)(x=y=6,x+y,y+1)C

15、)(x=6,x+1,y=6,x+y)D)(y=6,y+1,x=y,x+1)3.2填空題【題3.44】在C語言中(以16位PC機(jī)為例),一個char型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【1】;一個int型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【2】?!绢}3.45】在C語言中(以16位PC機(jī)為例),一個float型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【1】;一個double型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【2】?!绢}3.46】若有以下定義,則執(zhí)行表達(dá)式y(tǒng)+=y-=m*=y后的y值是【】。int m=5,y=2;【題3.47】設(shè)C語言中,一個int型數(shù)據(jù)在內(nèi)存中占2個字節(jié),則int型數(shù)據(jù)的取值范圍為【】?!绢}3.48】在C語言中的實(shí)

16、型變量分為兩種類型,它們是【1】和【2】。【題3.49】C語言所提供的基本數(shù)據(jù)類型包括:單精度型、雙精度型、【1】、【2】和【3】?!绢}3.50】若s是int型變量,且s=6,則下面表達(dá)式的值為【】。s%2+(s+1)%2【題3.51】若a是int型變量,則下面表達(dá)式的值為【】。(a=4*5,a*2),a+6【題3.52】若x和a均是int型變量,則執(zhí)行表達(dá)式(1)后的x值為【1】,執(zhí)行表達(dá)式(2)后的x值為【2】。(1)x=(a=4,6*2)(2)x=a=4,6*2【題3.53】若a、b和c均是int型變量,則執(zhí)行下面表達(dá)式后,a值為【1】,b值為【2】,c值為【3】。a=(b=4)+(c=

17、2)【題3.54】若a是int型變量,且a的初值為6,則執(zhí)行下面表達(dá)式后a的值為【】。a+=a-=a*a【題3.55】若a是int型變量,則執(zhí)行下面表達(dá)式后a的值為【】。a=25/3%3【題3.56】若x和n均是int型變量,且x和n的初值均為5,則執(zhí)行下面表達(dá)式后x的值為【1】,n的值為【2】。x+=n+【題3.57】若有定義:int b=7; float a=2.5,c=4.7;則下面表達(dá)式的值為【】。a+(int)(b/3*(int)(a+c)/2)%4【題3.58】若有定義:int a=2,b=3; float x=3.5,y=2.5;則下面表達(dá)式的值為【】。(float)(a+b)/

18、2+(int)x%(int)y【題3.59】若有定義:char c=010;則變量c中包含的字符個數(shù)為【】?!绢}3.60】若有定義:int x=3,y=2; float a=2.5,b=3.5;則下面表達(dá)式的值為【】。(x+y)%2+(int)a/(int)b【題3.61】若x和n均是int型變量,且x的初值為12,n的初值為5,則執(zhí)行下面表達(dá)式后x的值為【 】。x%=(n%=2)【題3.62】假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,a+,b+,a+b)的值為【】?!绢}3.63】C語言中的標(biāo)識符只能由三種字符組成,它們是【1】、【2】和【3】?!绢}3.64】已知字母a的ASCII碼為十

19、進(jìn)制數(shù)97,且設(shè)ch為字符型變量,則表達(dá)式ch=a+8-3的值為【】?!绢}3.65】把以下多項(xiàng)式寫成只含七次乘法運(yùn)算,其余皆為減運(yùn)算的表達(dá)式為【】。5X7+3X6-4X5+2X4+X3-6X2+X+10【題3.66】若x和y都是double型變量,且x的初值為3.0,y的初值為2.0,則表達(dá)式pow(y,fabs(x)的值為【 】。【題3.67】若有定義:int e=1,f=4,g=2; float m=10.5,n=4.0,k;則執(zhí)行賦值表達(dá)式k=(e+f)/g+sqrt(double)n)*1.2/g+m后k的值是【】?!绢}3.68】表達(dá)式8/4*(int)2.5/(int)(1.25*(

20、3.7+2.3)值的數(shù)據(jù)類型為【】。【題3.69】表達(dá)式pow(2.8,sqrt(double)(x)值的數(shù)據(jù)類型為【】?!绢}3.70】假設(shè)m是一個三位數(shù),從左到右用a、b、c表示各位的數(shù)字,則從左到右各個數(shù)字是bac的三位數(shù)的表達(dá)式是【】。第4章順序程序設(shè)計(jì)4.1選擇題【題4.1】putchar函數(shù)可以向終端輸出一個。整型變量表達(dá)式值實(shí)型變量值字符串字符或字符型變量值【題4.2】以下程序的輸出結(jié)果是。main()printf(“n*s1=%15s*”, “chinabeijing”);printf(“n*s2=%-5s*”, “chi”);A)*s1=chinabeijing *B)*s1=

21、chinabeijing * *s2=*chi* *s2=chi *C)*s1=*chinabeijing*D)*s1= chinabeijing* *s2=chi* *s2=chi *【題4.3】printf函數(shù)中用到格式符5s,其中數(shù)字5表示輸出的字符串占用5列。如果字符串長度大于5,則輸出按方式【1】;如果字符串長度小于5,則輸出按方式【2】。從左起輸出該字串,右補(bǔ)空格按原字符長從左向右全部輸出右對齊輸出該字串,左補(bǔ)空格輸出錯誤信息【題4.4】已有定義int a=-2;和輸出語句:printf(“%8lx”,a);以下正確的敘述是。整型變量的輸出格式符只有d一種x是格式符的一種,它可以適

22、用于任何一種類型的數(shù)據(jù)x是格式符的一種,其變量的值按十六進(jìn)制輸出,但8lx是錯誤的8lx不是錯誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度【題4.5】以下C程序正確的運(yùn)行結(jié)果是。main()long y=-43456;printf(“y=%-8ldn”,y);printf(“y=%-08ldn”,y);printf(“y=%08ldn”,y);printf(“y=%+8ldn”,y);A)y= -43456B)y=-43456 y=- 43456 y=-43456 y=-0043456 y=-0043456 y=-43456 y=+-43456C)y=-43456D)y= -43456 y=-4

23、3456 y=-0043456 y=-0043456 y=00043456 y= -43456 y=+43456【題4.6】以下C程序正確的運(yùn)行結(jié)果是。main()int y=2456;printf(“y=%3on”,y);printf(“y=%8on”,y);printf(“y=%#8on”,y);A)y= 2456B)y= 4630 y= 2456 y= 4630 y=#2456 y=#4630C)y=2456D)y=4630 y= 2456 y= 4630 y= 02456 y= 04630【題4.7】以下C程序正確的運(yùn)行結(jié)果是。main()long y=23456;printf(“y=

24、%3xn”,y);printf(“y=%8xn”,y);printf(“y=%#8xn”,y);A)y=5ba0B)y= 5ba0C)y=5ba0D)y=5ba0 y= 5ba0 y= 5ba0 y=5ba0 y= 5ba0 y= 0 x5ba0 y= 0 x5ba0 y=0 x5ba0 y=#5ba0【題4.8】若x,y均定義為int型,z定義為double型,以下不合法的scanf函數(shù)調(diào)用語句是。scanf(“%d%lx,%le”,&x,&y,&z);scanf(“%2d*%d%lf”,&x,&y,&z);scanf(“%x%*d%o”,&x,&y);scanf(“%x%o%6.2f”,&

25、x,&y,&z);【題4.9】已有如下定義和輸入語句,若要求a1,a2,c1,c2的值分別為10,20,A和B,當(dāng)從第一列開始輸入數(shù)據(jù)時,正確的數(shù)據(jù)輸入方式是。int a1,a2; char c1,c2;scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);A)10A 20BB)10 A 20 BC)10A20BD)10A20 B【題4.10】已有定義int x; float y;且執(zhí)行scanf(“%3d%f”,&x,&y);語句,若從第一列開始輸入數(shù)據(jù)12345 678,則x的值為【1】,y的值為【2】?!?】A)12345B)123C)45D)345【2】A)無定值B)45

26、.000000C)678.000000D)123.000000【題4.11】已有如下定義和輸入語句,若要求a1,a2,c1,c2的值分別為10,20,A和B,當(dāng)從第一列開始輸入數(shù)據(jù)時,正確的數(shù)據(jù)輸入方式是。int a1,a2; char c1,c2;scanf(“%d%d”,&a1,&a2);scanf(“%c%c”,&c1,&c2);A)1020ABB)10 20 ABC)10 20 ABD)10 20AB【題4.12】已有程序段和輸入數(shù)據(jù)的形式如下,程序中輸入語句的正確形式應(yīng)當(dāng)為。main()int a; float f;printf(“nInput number:”);輸入語句print

27、f(“nf=%f,a=%dn”,f,a);Input number:4.5 2scanf(“%d,%f”,&a,&f);scanf(“%f,%d”,&f,&a);scanf(“%d%f”,&a,&f);scanf(“%f%d”,&f,&a);【題4.13】根據(jù)定義和數(shù)據(jù)的輸入方式,輸入語句的正確形式為。已有定義:float f1,f2;數(shù)據(jù)的輸入方式:4.523.5scanf(“%f,%f”,&f1,&f2);scanf(“%f%f”,&f1,&f2);scanf(“%3.2f %2.1f”,&f1,&f2);scanf(“%3.2f%2.1f”,&f1,&f2);【題4.14】閱讀以下程序,

28、當(dāng)輸入數(shù)據(jù)的形式為25,13,10正確的輸出結(jié)果為。main()int x,y,z;scanf(“%d%d%d”,&x,&y,&z);printf(“x+y+z=%dn”,x+y+z);x+y+z=48x+y+z=35x+z=35不確定值【題4.15】閱讀以下程序,若運(yùn)行結(jié)果為如下形式,輸入輸出語句的正確內(nèi)容是。main()int x; float y;printf(“enter x,y:”);輸入語句輸出語句輸入形式enter x,y:2 3.4輸出形式x+y=5.40scanf(“%d,%f”,&x,&y);printf(“nx+y=%4.2f”,x+y);scanf(“%d%f”,&x,

29、&y);printf(“nx+y=%4.2f”,x+y);scanf(“%d%f”,&x,&y);printf(“nx+y=%6.1f”,x+y);scanf(“%d%3.1f”,&x,&y);printf(“nx+y=%4.2f”,x+y);【題4.16】以下說法正確的是。輸入項(xiàng)可以為一實(shí)型常量,如scanf(“%f”,3.5);只有格式控制,沒有輸入項(xiàng),也能進(jìn)行正確輸入,如scanf(“a=%d,b=%d”);當(dāng)輸入一個實(shí)型數(shù)據(jù)時,格式控制部分應(yīng)規(guī)定小數(shù)點(diǎn)后的位數(shù),如scanf(“%4.2f”,&f);當(dāng)輸入數(shù)據(jù)時,必須指明變量的地址,如scanf(“%f”,&f);【題4.17】根據(jù)下面

30、的程序及數(shù)據(jù)的輸入方式和輸出形式,程序中輸入語句的正確的形式應(yīng)該為。main()char ch1,ch2,ch3;輸入語句printf(“%c%c%c”,ch1,ch2,ch3);輸入形式:A B C輸出形式:A Bscanf(“%c%c%c”,&ch1,&ch2,&ch3);scanf(“%c,%c,%c”,&ch1,&ch2,&ch3);scanf(“%c %c %c”,&ch1,&ch2,&ch3);scanf(“%c%c”,&ch1,&ch2,&ch3);【題4.18】有輸入語句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);為使變量a的值為1,b為3,c為2,從鍵

31、盤輸入數(shù)據(jù)的正確形式應(yīng)當(dāng)是。1321,3,2a=1 b=3 c=2a=1,b=3,c=2【題4.19】以下能正確地定義整型變量a,b和c并為其賦初值5的語句是。A)int a=b=c=5;B)int a,b,c=5;C)a=5,b=5,c=5;D)a=b=c=5;【題4.20】已知ch是字符型變量,下面不正確的賦值語句是。A)ch=a+b;B)ch=0;C)ch=7+9;D)ch=5+9;【題4.21】已知ch是字符型變量,下面正確的賦值語句是。A)ch=123;B)ch=xff;C)ch=08;D)ch=“”;【題4.22】若有以下定義,則正確的賦值語句是。int a,b; float x;

32、A)a=1,b=2,B)b+;C)a=b=5D)b=int(x);【題4.23】設(shè)x、y均為float型變量,則以下不合法的賦值語句是。A)+x;B)y=(x%2)/10;C)x*=y+8;D)x=y=0;【題4.24】設(shè)x、y和z均為int型變量,則執(zhí)行語句x=(y=(z=10)+5)-5;后,x、y和z的值是。A)x=10B)x=10C)x=10D)x=10 y=15 y=10 y=10 y=5 z=10 z=10 z=15 z=10【題4.25】設(shè)有說明:double y=0.5,z=1.5; int x=10;則能夠正確使用C語言庫函數(shù)的賦值語句是。z=exp(y)+fabs(x);y

33、=log10(y)+pow(y);z=sqrt(y-z);x=(int)(atan2(double)x,y)+exp(y-0.2);4.2填空題【題4.26】以下程序的輸出結(jié)果為。main()short i;i=-4;printf(“ni:dec=%d,oct=%o,hex=%x,unsigned=%un”,i,i,i,i);【題4.27】以下程序的輸出結(jié)果為。main()printf(“*%f,%4.3f*n”,3.14,3.1415);【題4.28】以下程序的輸出結(jié)果為。main()char c=x;printf(“c:dec=%d,oct=%o,hex=%x,ASCII=%cn”,c,c

34、,c,c);【題4.29】已有定義int d=-2;執(zhí)行以下語句后的輸出結(jié)果是。printf(“*d(1)=%d*d(2)=%3d*d(3)=%-3d*n”,d,d,d);printf(“*d(4)=%o*d(5)=%7o*d(6)=%-7o*n”,d,d,d);【題4.30】已有定義int d=-2;執(zhí)行以下語句后的輸出結(jié)果是。printf(“*d(1)=%d*d(2)=%3d*d(3)=%-3d*n”,d,d,d);printf(“*d(4)=%x*d(5)=%6x*d(6)=%-6x*n”,d,d,d);【題4.31】已有定義float d1=3.5,d2=-3.5;執(zhí)行以下語句后的輸出

35、結(jié)果是。printf(“*d(1)=%e*d(2)=%.4e*d(3)=%10.4e*n”,d1,d1,d1);printf(“*d(4)=%e*d(5)=%.6e*d(6)=%-12.5e*n”,d2,d2,d2);【題4.32】以下程序的輸出結(jié)果為。main()int x=1,y=2;printf(“x=%d y=%d *sum*=%dn”,x,y,x+y);printf(“10 Squared is:%dn”,10*10);【題4.33】以下程序的輸出結(jié)果為。#include main()int x=10; float pi=3.1416;printf(“(1) %dn”,x);prin

36、tf(“(2) %6dn”,x);printf(“(3) %fn”,56.1);printf(“(4) %14fn”,pi);printf(“(5) %en”,568.1);printf(“(6) %14en”,pi);printf(“(7) %gn”,pi);printf(“(8) %12gn”,pi);【題4.34】以下程序的輸出結(jié)果為。#include main()float a=123.456; double b=8765.4567;printf(“(1) %fn”,a);printf(“(2) %14.3fn”,a);printf(“(3) %6.4fn”,a);printf(“(4

37、) %lfn”,b);printf(“(5) %14.3lfn”,b);printf(“(6) %8.4lfn”,b);printf(“(7) %.4fn”,b);【題4.35】以下printf語句中*號的作用是【1】,輸出結(jié)果是【2】。#include main()int i;for(i=1;i=5;i+) printf(“#%*dn”,i,i);【題4.36】以下printf語句中-號的作用是【1】,該程序的輸出結(jié)果是【2】。#include main()int x=12; double a=3.1415926;printf(“%6d#n”,x);printf(“%-6d#n”,x);pr

38、intf(“%14.10lf#n”,a);printf(“%-14.10lf#n”,a);【題4.37】以下程序的輸出結(jié)果為。#include main()int a=325; double x=3.1415926;printf(“a=%+06d x=%+en”,a,x);【題4.38】以下程序的輸出結(jié)果為。#include main()int a=252;printf(“a=%o a=%#on”,a,a);printf(“a=%x a=%#xn”,a,a);【題4.39】以下程序段的輸出結(jié)果為。int x=7281;printf(“(1) x=%3d,x=%6d,x=%6o,x=%6x,x=

39、%6un”,x,x,x,x,x);printf(“(2) x=%-3d,x=%-6d,x=$%-06d,x=$%06d,x=%06dn”,x,x,x,x,x);printf(“(3) x=%+3d,x=%+6d,x=%+08dn”,x,x,x);printf(“(4) x=%o,x=%#on”,x,x);printf(“(5) x=%x,x=%#xn”,x,x);【題4.40】假設(shè)變量a和b均為整型,以下語句可以不借助任何變量把a(bǔ)、b中的值進(jìn)行交換。請?zhí)羁?。a+=【1】; b=a-【2】; a-=【3】;【題4.41】假設(shè)變量a、b和c均為整型,以下語句借助中間變量t把a(bǔ)、b和c中的值進(jìn)行交換

40、,即:把b中的值給a,把c中的值給b,把a(bǔ)中的值的給c。例如:交換前,a=10,b=20,c=30;交換后,a=20,b=30,c=10。請?zhí)羁??!?】; a=b; b=c; 【2】;【題4.42】設(shè)x、y和z都是int型變量,m為long型變量,則在16位微型機(jī)上執(zhí)行下面賦值語句后,y值為【1】,z值為【2】,m值為【3】。y=(x=32767,x-1);z=m=0 xFFFF;【題4.43】若x為int型變量,則執(zhí)行以下語句后x的值是【】。x=7;x+=x-=x+x;【題4.44】若a和b均為int型變量,則以下語句的功能是【】。a+=b; b=a-b; a-=b;【題4.45】在scan

41、f函數(shù)調(diào)用語句中,可以在格式字符和號之間加一星號,它的作用是【1】;當(dāng)輸入以下數(shù)據(jù):10 20 30 40(此處每個數(shù)據(jù)之間有兩個空格),下面語句的執(zhí)行結(jié)果是【2】。int a1,a2,a3;scanf(“%d%*d%d%d”,&a1,&a2,&a3);【題4.46】有一輸入函數(shù)scanf(“%d”,k);其不能使float類型變量k得到正確數(shù)值的原因是【1】和【2】?!绢}4.47】已有定義int a; float b,x; char c1,c2;為使a=3,b=6.5,x=12.6,c1=a,c2=A,正確的scanf函數(shù)調(diào)用語句是【1】,輸入數(shù)據(jù)的方式為【2】?!绢}4.48】若有以下定義和

42、語句,為使變量c1得到字符A,變量c2得到字符B,正確的格式輸入形式是。char c1,c2;scanf(“%4c%4c”,&c1,&c2);【題4.49】執(zhí)行以下程序時,若從第一列開始輸入數(shù)據(jù),為使變量a=3,b=7,x=8.5,y=71.82,c1=A,c2=a,正確的數(shù)據(jù)輸入形式是。main()int a,b; float x,y; char c1,c2;scanf(“a=%d b=%d”,&a,&b);scanf(“x=%f y=%f”,&x,&y);scanf(“c1=%c c2=%c”,&c1,&c2);printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c

43、”,a,b,x,y,c1,c2);【題4.50】已有定義int i,j; float x;為將-10賦給i,12賦給j,410.34賦給x;則對應(yīng)以下scanf函數(shù)調(diào)用語句的數(shù)據(jù)輸入形式是。scanf(“%o%x%e”,&i,&j,&x);【題4.51】 以下程序,不借助任何變量把a(bǔ),b 中的值進(jìn)行交換。 #include stdio.h main() int a,b; printf(Input a,b:); scanf(%d%d,) ; a+=; b=-; a - =; printf(a=%d b=%dn,a,b); 第5章選擇結(jié)構(gòu)程序設(shè)計(jì)5.1選擇題【題5.1】邏輯運(yùn)算符兩側(cè)運(yùn)算對象的數(shù)據(jù)

44、類型。只能是0或1只能是0或非0正數(shù)只能是整型或字符型數(shù)據(jù)可以是任何類型的數(shù)據(jù)【題5.2】以下關(guān)于運(yùn)算符優(yōu)先順序的描述中正確的是。關(guān)系運(yùn)算符算術(shù)運(yùn)算符賦值運(yùn)算符邏輯與運(yùn)算符邏輯與運(yùn)算符關(guān)系運(yùn)算符算術(shù)運(yùn)算符賦值運(yùn)算符賦值運(yùn)算符邏輯與運(yùn)算符關(guān)系運(yùn)算符算術(shù)運(yùn)算符算術(shù)運(yùn)算符關(guān)系運(yùn)算符賦值運(yùn)算符邏輯與運(yùn)算符【題5.3】下列運(yùn)算符中優(yōu)先級最高的是。A)=1)&(x=200)&(x=1)|(x=200)|(x=1)&(x=200)&(x=1)|(x=200)|(x=210)【題5.5】表示圖中坐標(biāo)軸上陰影部分的正確表達(dá)式是。X a b c(x=b)&(x=c)(x=a)|(b=x=c)(x=b)&(x=c)

45、(x=a)&(b=x=c)【題5.6】判斷char型變量ch是否為大寫字母的正確表達(dá)式是。A)A=ch=A)&(ch=A)&(ch=Z)D)(A=ch)【題5.7】設(shè)x、y和z是int型變量,且x=3,y=4,z=5,則下面表達(dá)式中值為0的是。x&yx=yx|y+z&y-z!(x=y&chb)&(n=cd)后n的值為。A)1B)2C)3D)4【題5.11】判斷char型變量c1是否為小寫字母的正確表達(dá)式是。A)a=c1=a)&(c1=c1)|(z=a)&(c1x)&(b=yz);+a|+b&+c;【1】A)5B)0C)2D)1【2】A)6B)0C)1D)4【題5.15】以下不正確的if語句形式

46、是。if(xy&x!=y);if(x=y) x+=y;if(x!=y) scanf(“%d”,&x) else scanf(“%d”,&y);if(xy)z=x; x=y; y=z;A)x=10,y=20,z=30B)x=20,y=30,z=30C)x=20,y=30,z=10D)x=20,y=30,z=20【題5.18】以下if語句語法正確的是。if(x0)printf(“%f”,x)else printf(“%f”,-x);if(x0)x=x+y; printf(“%f”,x);else printf(“%f”,-x);if(x0)x=x+y; printf(“%f”,x);else pr

47、intf(“%f”,-x);if(x0)x=x+y; printf(“%f”,x)else printf(“%f”,-x);【題5.19】請閱讀以下程序:main()int a=5,b=0,c=0;if(a=b+c)printf(“*n”);elseprintf(“$n”);以下程序。A)有語法錯不能通過編譯B)可以通過編譯但不能通過連接C)輸出*D)輸出$【題5.20】以下程序的運(yùn)行結(jié)果是。main()int m=5;if(m+5)printf(“%dn”,m);elseprintf(“%dn”,m-);A)4B)5C)6D)7【題5.21】當(dāng)a=1,b=3,c=5,d=4時,執(zhí)行完下面一段

48、程序后x的值是。if(ab)if(cd) x=1;elseif(ac)if(bd) x=2;else x=3;else x=6;else x=7;A)1B)2C)3D)6【題5.22】有一函數(shù)關(guān)系見下表:xy=x0 x+1下面程序段中能正確表示上面關(guān)系的是。A)y=x+1;B)y=x-1; if(x=0) if(x!=0) if(x=0) y=x; if(x0) y=x+1; else y=x-1; else y=x;C)if(x=0)D)y=x; if(x0) y=x-1; if(x=0) else y=x; if(x0) y=x-1; else y=x+1; else y=x+1;【題5.

49、23】以下程序的輸出結(jié)果是。main()int a=100,x=10,y=20,ok1=5,ok2=0;if(xy)if(y!=10)if(!ok1)a=1;elseif(ok2)a=10;a=-1;printf(“%dn”,a);A)1B)0C)-1D)值不確定【題5.24】以下程序的輸出結(jié)果是。main()int x=2,y=-1,z=2;if(xy)if(yy);if(x=y)&(x!=0) x+=y;if(x!=y) scanf(“%d”,&x); else scanf(“%d”,&y);if(xy) x+; y+; 【題5.27】請閱讀以下程序:#include main()floa

50、t a,b;scanf(“%f”,&a);if(a0.0) b=0.0;else if(a0.5)&(a!=2.0) b=1.0/(a+2.0);else if(a10.0) b=1.0/x;else b=10.0;printf(“%fn”,y);若運(yùn)行時輸入2.0,則上面程序的輸出結(jié)果是。A)0.000000B)0.500000C)1.000000D)0.250000【題5.28】若有條件表達(dá)式(exp)?a+:b-,則以下表達(dá)式中能完全等價于表達(dá)式(exp)的是。A)(exp=0)B)(exp!=0)C)(exp=1)D)(exp!=0)【題5.29】若運(yùn)行時給變量x輸入12,則以下程序的

51、運(yùn)行結(jié)果是。main()int x,y;scanf(“%d”,&x);y=x12?x+10:x-12;printf(“%dn”,y);A)0B)22C)12D)10【題5.30】以下程序的運(yùn)行結(jié)果是。main()int k=4,a=3,b=2,c=1;printf(“n%dn”,ka?k:cb?c:a);A)4B)3C)2D)1【題5.31】執(zhí)行以下程序段后,變量a,b,c的值分別是。int x=10,y=9;int a,b,c;a=(-x=y+)?-x:+y;b=x+;c=y;A)a=9,b=9,c=9B)a=8,b=8,c=10C)a=9,b=10,c=9D)a=1,b=11,c=10【題

52、5.32】若w、x、y、z、m均為int型變量,則執(zhí)行下面語句后的m值是。w=1; x=2; y=3; z=4;m=(wx)?w:x;m=(my)?m:y;m=(mz)?m:z;A)1B)2C)3D)4【題5.33】若w1、x2、y3、z4,則條件表達(dá)式wx?w:y10?x+100:x-10);printf(“%dn”,w+|z+);printf(“%dn”,!wz);printf(“%dn”,w&z);A)0B)1C)0D)0 1 1 1 1 1 1 0 0 1 1 1 05.2填空題【題5.35】當(dāng)a=3,b=2,c=1時,表達(dá)式f=abc的值是【】?!绢}5.36】當(dāng)a=5,b=4,c=2

53、時,表達(dá)式ab!=c的值是【】?!绢}5.37】以下程序的運(yùn)行結(jié)果是。#include void main(void)int x=1,y,z;x*=3+2;printf(“%dt”,x);x*=y=z=5;printf(“%dt”,x);x=y=z;printf(“%dn”,x);【題5.38】在C語言中,表示邏輯“真”值用【】?!绢}5.39】設(shè)y為int型變量,請寫出描述“y是奇數(shù)”的表達(dá)式【】?!绢}5.40】C語言提供的三種邏輯運(yùn)算符是【1】、【2】、【3】?!绢}5.41】設(shè)x,y,z均為int型變量,請寫出描述“x或y中有一個小于z”的表達(dá)式【】?!绢}5.42】設(shè)x,y,z均為int型變量

54、,請寫出描述“x,y和z中有兩個為負(fù)數(shù)”的表達(dá)式【】?!绢}5.43】已知A=7.5,B=2,C=3.6,表達(dá)式AB&CA|AB的值是【】?!绢}5.44】若a=6,b=4,c=2,則表達(dá)式!(a-b)+c-1&b+c/2的值是【】?!绢}5.45】若a=2,b=4,則表達(dá)式!(x=a)|(y=b)&0的值是【】?!绢}5.46】若a=1,b=4,c=3,則表達(dá)式!(ab)|!c&1的值是【】?!绢}5.47】若a=6,b=4,c=3,則表達(dá)式a&b+c|b-c的值是【】?!绢}5.48】若a=5,b=2,c=1,則表達(dá)式a-bc|b=c的值是【】?!绢}5.49】若a=3,b=4,c=5,則表達(dá)式a|b+

55、c&b=c的值是【】?!绢}5.50】條件“2x3或xc)后;n的值是【1】,m的值是【2】?!绢}5.52】以下程序的運(yùn)行結(jié)果是。main()int x,y,z;x=1; y=2; z=3;x=y-y)+(y!=z)|(x+y)&(y-z)【題5.57】有int x,y,z;且x=3,y=-4,z=5,則表達(dá)式x+ -y+(+z)的值為【】。【題5.58】有int a=3,b=4,c=5;,則表達(dá)式a|b+c&b=c的值為【】?!绢}5.59】有int a=3,b=4,c=5,x,y;,則以下表達(dá)式的值為【】。!(x=a)&(y=b)&0【題5.60】有int a=3,b=4,c=5;,則以下表達(dá)

56、式的值為【】。!(a+b)+c-1&b+c/2【題5.61】若運(yùn)行時輸入:16,則以下程序的運(yùn)行結(jié)果是。#include void main(void)int year;printf(“Input you year:”);scanf(“%d”,&year);if(year=18)printf(“you $4.5yuan/xiaoshi”);elseprintf(“you $3.0yuan/xiaoshi”);【題5.62】若運(yùn)行時輸入:2,則以下程序的運(yùn)行結(jié)果是。#include void main(void)char Class;printf(“Enter 1 for 1st class p

57、ost or 2 for 2nd post”);scanf(“%c”,&Class);if(Class=1)printf(“1st class postage is 19p”);elseprintf(“2nd class postage is 14p”);【題5.63】若運(yùn)行時輸入:4.4,則以下程序的運(yùn)行結(jié)果是。#include void main(void)float CostPrice,SellingPrice;printf(“Enter Cost Price $:”);scanf(“%f”,&CostPrice);if(CostPrice=5)SellingPrice=CostPric

58、e+CostPrice*0.25;printf(“Selling Price(0.25)$%6.2f”,SellingPrice);elseSellingPrice=CostPrice+CostPrice*0.30;printf(“Selling Price(0.30)$%6.2f”,SellingPrice);【題5.64】以下程序的運(yùn)行結(jié)果是。main()if(2*2=52*2=4)print(“T”);elseprintf(“F”);【題5.65】請閱讀以下程序:main()int t,h,m;scanf(“%d”,&t);h=(t/100)%12;if(h=0) h=12;printf

59、(“%d”,h);m=t%100;if(m10) printf(“0”);printf(“%d”,m);if(t1200|t=2400)printf(“AM”);else printf(“PM”);若運(yùn)行時輸入:1605時,程序的運(yùn)行結(jié)果是?!绢}5.66】以下程序?qū)崿F(xiàn):輸入圓的半徑r和運(yùn)算標(biāo)志m,按照運(yùn)算標(biāo)志進(jìn)行指定計(jì)算。請?jiān)凇尽績?nèi)填入正確內(nèi)容。標(biāo)志運(yùn)算 a面積 c周長 b二者均計(jì)算#define pi 3.14159main()char m;float r,c,a;printf(“input mark a c or b&rn”);scanf(“%c %f”,&m,&r);if(【1】)a=p

60、i*r*r; printf(“area is %f”,a);if(【2】)c=2*pi*r; printf(“circle is %f”,c);if(【3】)a=pi*r*r; c=2*pi*r; printf(“area&circle are %f %f”,a,c);【題5.67】若運(yùn)行時輸入:5999,則以下程序的運(yùn)行結(jié)果(保留小數(shù)點(diǎn)后一位)是。main()int x;float y;scanf(“%d”,&x);if(x=0&x&=3000&x=6000&x=a&c=v&c=a&ch0) s=a+b;if(a0)if(c0) w=a-b;else t=c;printf(“%d %d %d

溫馨提示

  • 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

提交評論