C語(yǔ)言題海,題庫(kù)(含答案)_第1頁(yè)
C語(yǔ)言題海,題庫(kù)(含答案)_第2頁(yè)
C語(yǔ)言題海,題庫(kù)(含答案)_第3頁(yè)
C語(yǔ)言題海,題庫(kù)(含答案)_第4頁(yè)
已閱讀5頁(yè),還剩112頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第一章C語(yǔ)言概述ー 單項(xiàng)選擇題.ー個(gè)C程序的執(zhí)行是從(A).A)本程序的main函數(shù)開(kāi)始,到main函數(shù)結(jié)束B(niǎo))本程序文件的第一個(gè)函數(shù)開(kāi)始,到本程序文件的最后一個(gè)函數(shù)結(jié)束C)本程序的main函數(shù)開(kāi)始,到本程序文件的最后一個(gè)函數(shù)結(jié)束D)本程序文件的第一個(gè)函數(shù)開(kāi)始,到本程序的main函數(shù)結(jié)束.以下敘述正確的是(CA)在C程序中,main函數(shù)必須位于程序的最前面B)C程序的每行中只能寫一條語(yǔ)句0C語(yǔ)言本身沒(méi)有輸入輸出語(yǔ)句D)在對(duì)ー個(gè)C程序進(jìn)行編譯的過(guò)程中,可發(fā)現(xiàn)注釋中的拼寫錯(cuò)誤3.以下敘述不正確的是(D).一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成ー個(gè)C源程序必須包含ー個(gè)main函數(shù)0C程序的基本組成單位是函數(shù)D)在C程序中,注釋說(shuō)明只能位于一條語(yǔ)句的后面C語(yǔ)言規(guī)定,在ー個(gè)源程序中,main函數(shù)的位置(CA)必須在最開(kāi)始 B)必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面0可以任意 D)必須在最后ー個(gè)C語(yǔ)言源程序是由(B),A)一個(gè)主程序和若干子程序組成 B)函數(shù)組成0若干過(guò)程組成 D)若干子程序組成二填空題.C源程序的基本單位是 函數(shù)0.ー個(gè)C源程序中至少應(yīng)包括ー個(gè)main函數(shù)〇TOC\o"1-5"\h\z.在一個(gè)C源程序中,注釋部分兩側(cè)的分界符分別為 /* 和?/。.ー個(gè)函數(shù)是由兩部分組成的,它們分別是 函數(shù)名 和 函數(shù)體 。.在C語(yǔ)言中,ー個(gè)函數(shù)的函數(shù)體一般包括 聲明部分 和 執(zhí)行部分 。.在每個(gè)C語(yǔ)句和數(shù)據(jù)定義的最后必須有一個(gè) 分號(hào)。.C語(yǔ)言本身沒(méi)有輸入輸出語(yǔ)句。其輸入輸出是由 系統(tǒng)定義的標(biāo)準(zhǔn)輸入輸出函數(shù) 來(lái)完成。.程序是指 (一系列可執(zhí)行)指令的集合〇.源程序是指 (未編譯的)源代碼。C源程序文件的擴(kuò)展名為 c。.目標(biāo)程序是指 由源程序經(jīng)編譯后產(chǎn)生的可連接文件?目標(biāo)程序文件的擴(kuò)展名為 obi。

.可執(zhí)行程序是指由目標(biāo)程序連接后產(chǎn)生的可執(zhí)行程序〇可執(zhí)行程序文件的擴(kuò)展名為 exe。.上機(jī)運(yùn)行一個(gè)C源程序的步驟一般為:① 寫(無(wú)錯(cuò)的)源程序;②(正確通過(guò))編譯 ;③連接;④運(yùn)行〇第三章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式ー 單項(xiàng)選擇題.下面四個(gè)選項(xiàng)中,均不是c語(yǔ)言關(guān)鍵字的選項(xiàng)是(A).defineIFTypeC)includescanfcasedefineIFTypeC)includescanfcasegetccharprintfD)whilegopow.C語(yǔ)言中的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符(CA)必須為字母 B)必須為下劃線C)必須為字母或下劃線 D)可以是字母、數(shù)字和下劃線中任一種字符.下列四個(gè)選項(xiàng)中,均是C語(yǔ)言關(guān)鍵字的選項(xiàng)是(B).A)auto enum include B)switchtypedef continueC)signedunion scanf D)ifstructtype.下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)是(C)。AP_0doC)b-agotoAP_0doC)b-agotointfloat laO _AD)_123 temp int.以下有4組用戶標(biāo)識(shí)符,其中合法的ー組是(C)For-subCase4dDOSizef2_G3IFabcWORDvoiddefineFor-subCase4dDOSizef2_G3IFabcWORDvoiddefine.下列選項(xiàng)中,合法的C語(yǔ)言關(guān)鍵字是(D)〇A)VARB)cherC)integerD)default.下面四個(gè)選項(xiàng)中,均是合法整型常量的選項(xiàng)是(A)〇A)160-Oxffff 011 B)-Oxcdf Ola OxeC)-01986 012 0668 D)-0x48a 2e5 Oxe.下面四個(gè)選項(xiàng)中,均是正確的ハ進(jìn)制數(shù)或十六進(jìn)制數(shù)的選項(xiàng)是(C)〇A)-10 0x8f-011 B)Oabc -017OxcC)010 -0x11Oxfl D)0al2 -0x123-Oxa.設(shè)C語(yǔ)言中,ー個(gè)int型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié),則unsignedint型數(shù)據(jù)的取值范圍為(CA)〇?255 B)0-32767〇0-65535D)0—2147483647.在C語(yǔ)言中,不正確的int類型的常數(shù)是(A).A)32768 B)0 0037D)OxAF

.下面四個(gè)選項(xiàng)中,均是不合法的整型常量的選項(xiàng)是(D)?TOC\o"1-5"\h\zA)-Ofl -Oxffff 0011 B)-Oxcdf 017 12456C)-018 999 5e2 D)-0x48eg -068 03f.下面四個(gè)選項(xiàng)中,均是不合法的浮點(diǎn)數(shù)的選項(xiàng)是(B)〇A)160. 0.12 e3 B)123 2e4.2 .e5C)-.18 123e4 0.0 D)-e3 .234 le3.下面四個(gè)選項(xiàng)中,均是合法的浮點(diǎn)數(shù)的選項(xiàng)是(B).A) +le+l5e-9.4 03e2 B)-.60 12e-4 -8e5C) 123e 1.2e-.4 +2e~l D)-e3 .8e_4 5.e_0.下列變量定義中合法的是(AA)short_a=l~.le-l; B)doubleb=l+5e2.5;C)longdo=0xfdaL; D)float2一and=『e-3;.以下選項(xiàng)中合法的字符常量是(B).A)、、B" B)'\010, C)68 D)D.以下選項(xiàng)中,非法的字符常量是(C).A)へt' B)'\17"C)"n"D)'\xaa'.以下所列的C語(yǔ)言常量中,錯(cuò)誤的是(B)。A)OxFFB)1.2e0.5C)2LD)、、72,.在C語(yǔ)言中,char型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是(D).A)補(bǔ)碼B)反碼〇原碼D)ASCI!碼.下面四個(gè)選項(xiàng)中,均是合法轉(zhuǎn)義字符的選項(xiàng)是(A)〇A)、ヽ,,'\\, '\n, B)、ヽ,'\017, 'ヽ”,〇'\018, '\f,'xab, D)'\\0, '\101,'xlf,.下面四個(gè)選項(xiàng)中,均是不合法的轉(zhuǎn)義字符的選項(xiàng)是(〇).A)'\",', '\\, '\xf, B)'\10ir 'ヽ,'\a,C)'\011, '\f, 'ヽ}, D)'\abc,'\101z'xlf,/Z上題中,紅色部分表示合法的轉(zhuǎn)義字符。.下面正確的字符常量是(C).A)''c"B)、、、,,A)''c"B)、、、,,〇'W, D)',.下面四個(gè)選項(xiàng)中,均是正確的數(shù)值常量或字符常量的選項(xiàng)是(X)。0.0 Of 8.9e'&0.0 Of 8.9e'&,C)'3, 011OxffOO0a'a, 3.9e-2.5lei'ヽ,,D)+001 Oxabcd 2e2 50..下面不正確的字符串常量是(A)A)'abc, B)"1212"A)'abc, B)"1212"C)"0"D)"".在C語(yǔ)言中(以16位PC機(jī)為例),5種基本數(shù)據(jù)類型的存儲(chǔ)空間長(zhǎng)度的排列順序?yàn)椋ˋ).A)char<int<longint<=float<doublechar二intくlongint<=float<doublechar<int<longint二float二doublechar=int=longint<=float<double.若有說(shuō)明語(yǔ)句:chareゴ、72、則變量c(A)〇A)包含1個(gè)字符 B)包含2個(gè)字符0包含3個(gè)字符 D)說(shuō)明不合法,c的值不確定.設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+a+i*f值的數(shù)據(jù)類型為(C)〇A)int B)float C)double D)不確定.表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為(C)〇A)int B)float C)double D)不確定.設(shè)有說(shuō)明:charw;intx;floaty;doublez;則表達(dá)式w*x+z-y值的數(shù)據(jù)類型為(D)。A)floatB)charC)intD)double.以下選項(xiàng)中屬于C語(yǔ)言的數(shù)據(jù)類型是(C)?A)復(fù)數(shù)型B)邏輯型0雙精度型 D)集合型.以下程序的輸出結(jié)果是(A)〇main()(charc='z';printf("%c”,c-25);)A)aB)ZC)z-25D)y.若有定義:inta=7;floatx=2.5,y=4.7;則表達(dá)式x+a%3*(im)(x+y)%2/4的值是(A)〇A)2.500000B)2.750000C)3.500000D)0.000000.若有代數(shù)式3ae/bc,則不正確的c語(yǔ)言表達(dá)式是(C)。A)a/b/c*e*3B)3*a*e/b/cC)3*a*e/b*cD)a*e/c/b*3.設(shè)有intx=ll;則表達(dá)式(x++*1/3)的值是(AA)3 B)4C)llD)12.以下變量x.、y、z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子x/yz的C語(yǔ)言表達(dá)式是(A)〇A)x/y*z B)x*(l/(y*z)) C)x/y*l/z D)x/y/z.C語(yǔ)言中運(yùn)算對(duì)象必須是整型的運(yùn)算符是(A)。A)%= B)/〇=D)<=.下列程序的輸出結(jié)果是(C)〇main()doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf(,,%d\n,\d*y);)A)3 B)3.2 C)0D)3.07.若x,i,j和k都是int型變量,則計(jì)算下面表達(dá)式x=(i=4,j=16,k=32)后,x的值為(C).A)4B)16C)32D)52.假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,b++,a+b)的值是(B),A)7B)8 C)6 D)2.假定x和y為double型,則表達(dá)式x=2,y=x+3/2的值是(D)〇A)3.500000 B)3C)2.000000D)3.000000.若以下變量均是整型,且num=sum=7;則計(jì)算表達(dá)式sum=num++,sum++,++num后sum的值為(B),A)7 B)8 C)9D)10.若有定義intk=7,x=12;,則以下能使值為3的表達(dá)式是(D).A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5D)(x%=k)-(k%=5).設(shè)以下變量均為int類型,則值不等于7的表達(dá)式是(C).A)(x=y=6,x+y,x+1) B)(x=y=6,x+y,y+1)0(x=6,x+l,y=6,x+y) D)(y=6,y+1,x=y,x+1).下列程序執(zhí)行后的輸出結(jié)果是(A).main()(intx='f';printf("枇、n",'A'+(x-'a'+1));}A)GB)HC)ID)J.下列程序執(zhí)行后的輸出結(jié)果是(C).main(){charx=0xFFFF;printf(n%d\n”,x-);)A)-32767B)FFFEC)-lD)-32768.以下程序的輸出結(jié)果是(Dmain(){inta=3;printf(,,%d\n,,,(a+=a-=a*a));}A)-6B)12 C)0 D)-12.若變量已正確定義并賦值,下面符合C語(yǔ)言語(yǔ)法的表達(dá)式是(B)。A)a:=b+l B)a=b=c+2C)int18.5%3D)a=a+7=c+b.若有以下程序段,

intcl=l,c2=2,c3;c3=1.0/c2*cl;則執(zhí)行后,c3中的值是(A)〇A)0B)0.5C)1 D)2.有如下程序main(){inty=3,x=3,z=l;printf(6t%d%d\n”,(++x,y++),z+2);}運(yùn)行該程序的輸出結(jié)果是(D)〇A)34 B)42 C)43D)33.已知大寫字母A的ASCI!碼為65,以下程序的運(yùn)行結(jié)果為(A#include<stdio.h>main()(charcl='Ar,c2='Yz;printf %d\n〃,cl,c2);}A)65,89B)A,YC)65,88.以下程序的輸出結(jié)果是(D)〇#include<stdio.h>main()(inta=010,b=10;printf(''%d,%d\n,z,a++1-b);}A)10,10B)8,10C)10,9.以下程序的輸出結(jié)果是(B).main()(inta,b;a=100;b=200;printf(''%d\nz,,(a,b));}A)100B)200C)20000.執(zhí)行語(yǔ)句y=10;x=y++;的結(jié)果是(CA)x=10,y=10B)x=ll,y=llD)65,90D)8,9D)100=200C)x=10,y=ll D)x=ll,y=10unsignedintunsignedshortlongintunsignedlong.在表示C語(yǔ)言的整型變量時(shí),表示“無(wú)符號(hào)長(zhǎng)整型”的符號(hào)是(D)65,90D)8,9D)100=200C)x=10,y=ll D)x=ll,y=10unsignedintunsignedshortlongintunsignedlong.在下列形式的常數(shù)中,C程序不允許出現(xiàn)的是(B).A).45B)±123〇25.6e-2D)4e3.以下程序的輸出結(jié)果是(Cmain(){floatx=3.6;inti;i=(int)x;printf(''x=%f,i=%d”,x,i);}A)x=3.600000,i=4 B)x=3,i=3C)x=3.600000,i=3 D)x=3.000000,i=3.600000.在C語(yǔ)言中,要求運(yùn)算數(shù)必須是整型數(shù)據(jù)的運(yùn)算符是(B).A)/B)%〇!D)<.執(zhí)行下列語(yǔ)句的結(jié)果是(Di=3;printf("刎,",++i);printf("%d",i++);A)3,3B)3,4C)4,3D)4,4.已知x=3,y=2,則表達(dá)式x*=y+8的值為(CA)3B)2C)30D)14.執(zhí)行語(yǔ)句inti=65536;printf(w%d\n,,,i);的結(jié)果是(BA)65536B)0C)有語(yǔ)法錯(cuò)誤,無(wú)輸出結(jié)果D)-1.在C語(yǔ)言中,不正確的int類型的常數(shù)是(A).A)32768B)0C)037D)OxAF.C語(yǔ)言提供的合法關(guān)鍵字是(D).A)swicthB)chanC)CaseD)default.表示“在使用x之前,先使x的值加!n的正確方式是(AA).A)++xB)x++C)+xD)+x+.設(shè)x的值為5,貝リ表達(dá)式(++x)+(++x)+(++x)的值是(22D).A)24B)20〇!5D)21641在C語(yǔ)言中,合法的字符常量是(B),A)'\084, B)'\x43, C)'ab, D)'、、〇”.若已定義x和y為double類型,則表達(dá)式:x=l,y=x+3/2的值是(C)。A)1B)2〇2.0D)2.6.若t為double類型,表達(dá)式t=l,t+5,t++的值是(DA)1B)6.0〇2.0D)1.0.若有以下定義和語(yǔ)句,則輸出結(jié)果是(Bcharcl='b',c2-'e';printf(''%d,%c\n,,)c2-cl,c2"a,+fAf);A)2,MB)3,EC)2,ED)輸出項(xiàng)與對(duì)應(yīng)的格式控制不一致,輸出結(jié)果不確定.設(shè)有如下的變量定義:inti=8,a,b;doublex=L42,05.2;則以下符合c語(yǔ)言語(yǔ)法的表達(dá)式是(A工A)a+=a-=(b=4)*(a=3) B)x%(-3)C)a=a*3=2 D)y=float(i).若有以下定義和語(yǔ)句!intu=010,v=0xl0,w=10;printf(、、%d,%d,%d\n〃,u,v,w);則輸出結(jié)果是(A)〇A)8,16,10B)10,10,10C)8,8,10D)8,10,10二填空題.若X和a均是int型變量,則計(jì)算表達(dá)式⑴后的x值為12 ,計(jì)算表達(dá)式(2)后的xTOC\o"1-5"\h\z值為4 。⑴x=(a=4,6*2)⑵x=a=4,6*2.若a是int型變量,則表達(dá)式(a=4*5,a*2).a+6的值為26 0.若b是int型變量,則表達(dá)式b=25/3%3的值為2 0.若s是int型變量,且s=6則下面表達(dá)式s%2+(s+l)%2的值為1 。.若a,b和c均是int型變量,則計(jì)算表達(dá)式a=(b=4)+(c=2)后,a值為6 ,b值為4,c值為2 。.若x和n均是int型變量,且x和n的初值均為5I則計(jì)算表達(dá)式x+=n++后x的值為10,n的值為 6 。7,若有定義:出ル=7;(1?112=2.5じ=4.7;貝。表達(dá)式2+(也。(ル3*(小リ(2+〇/2)%4的值為4.5 。.若有定義:inta=2,b=3;floatx=3.5,y=2.5;則表達(dá)式(float)(a+b)/2+(int)x%(int)y的值為3.5?.若有定義:intx=3,y=2;floata=2.5,b=3.5;則表達(dá)式(x+y)%2+(int)a/(int)b的值為 1 0.若x和n均是整型變量,且x的初值為12,n的初值為5,則計(jì)算表達(dá)式x%=(n%=2)后x的值為0 。.以下稈序的輸出結(jié)果是 0 。main(){unsignedshorta=65536;intb;printf(u%d\n,,,b=a);}.請(qǐng)寫出數(shù)學(xué)式a/bc的C語(yǔ)言表達(dá)式 a/(b*c) ..設(shè)a、b、c為整型數(shù),且a=2、b=3、c=4,則執(zhí)行完語(yǔ)句a?=16+(b++)-(++c)后,a的值是28O第四章最簡(jiǎn)單的C程序設(shè)計(jì)ーー順序程序設(shè)計(jì)ー 單項(xiàng)選擇題1?5BDDAB.printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列,如果字符串長(zhǎng)度大于5,則輸出按方式(B).A)從左起輸出該字符串,右補(bǔ)空格B)按原字符長(zhǎng)從左向右全部輸岀0右對(duì)齊輸出該字串,左補(bǔ)空格D)輸出錯(cuò)誤信息.已有定義inta=-2;和輸出語(yǔ)句printf(“%8x”,a);以下正確的敘述是(D)。A)整型變量的輸出形式只有%d一?種B)%x是格式符的一種,它可以適用于任何ー種類型的數(shù)據(jù)0版是格式符的ー種,其變量的值按十六進(jìn)制輸出,但%8x是錯(cuò)誤的D)%8x不是錯(cuò)誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度.若x,y均定義成int型,z定義為double型,以下不合法的scanf函數(shù)調(diào)用語(yǔ)句是(D)?scanf(fct%d%x,%le,\&x,&y,&z);scanfp%2d*%d,%lf\&x,&y,&z);scanfi("%x%*d%o”,&x,&y);scanf(fct%x%o%6.2f;&x,&y,&z);.以下程序的輸出結(jié)果是(D).main(){intk=17;printf("%d,%o,%x\n”,k,k,k);}A)17,021,0x11 B)17,17,17B)17,0x11,021 D)17,21,11.下列程序的運(yùn)行結(jié)果是(B)〇#include<stdio.h>main(){inta=2,c=5;printf(*a=%d,b=%d\n*,a,c);}A)a=%2,b=%5 B)a=2,b=5C)a=d,b=d D)a=2,c=56.語(yǔ)句printf("a\bre\,hNy\\\bou\n");的輸出結(jié)果是(C(說(shuō)明:へげ是退格符)A)a\bre\,hi\,y\\\bou B)a\bre\'hi\'y\bouC)re'hi'you D)abre'hi*y\bouフ.x、y、z被定義為int型變量,若從鍵盤給x、y、z輸入數(shù)據(jù),正確的輸入語(yǔ)句是(B)。

A)INPUTx、y、z;C)scanf("%d%d%d';x,y,z);A)INPUTx、y、z;C)scanf("%d%d%d';x,y,z);D)read(n%d%d%d';&x,&y,&z);8.若變量已正確說(shuō)明為float類型,要通過(guò)語(yǔ)句scanf("%f%f%f”,&a,&b,&c);給a賦于A)10〈回車〉22〈回車〉33〈回車〉10.0A)10〈回車〉22〈回車〉33〈回車〉10.0〈回車〉22.033.0V回車〉B)10.0,22.0,33.0V回車〉1022〈回車〉33〈回車〉9.以下程序的輸出結(jié)果是(A、n=24)?main()intn;(n=6*4,n+6),n*2;printf(vn=%d\nintn;(n=6*4,n+6),n*2;printf(vn=%d\n,z,n);}A)24 B)1210.以下程序的輸出結(jié)果是(main()(intx=2,y,z;x*=3+l;printf(ヽ、%d,”,x++);x+=y=z=5;printf(''%d,",x);x=y=z;printf(''%d\n",x);}A)8,14,1B)8,14,511.下面程序的輸出結(jié)果是(main()(intx,y,z;x=0;y=z=-l;x+=-z y;printf(''x=%d\n",x);A)x=4B)x=0C)26B)<?D)20C)8,13,5 D)9,14,5C)oC)x=2D)x=3.設(shè)x為int型變量,則執(zhí)行語(yǔ)句x=10;x+=x?ニx?x;后,x的值為(B)。A)10A)10B)20C)40D)30.只能向終端輸出ー個(gè)字符的函數(shù)是(B)。A)printf函數(shù) B)putchar函數(shù)C)getchar函數(shù) D)scanf函數(shù)14.下列程序執(zhí)行后的輸出結(jié)果是(小數(shù)點(diǎn)后只寫一位)(A)〇main(){doubled;floatf;long1;inti;i=f=l=d=2O/3;printf(M%d%ld%f%f\nM,i,l,f,d);}A)6 6 6.0 6.0 B)6 6 6.7 6.7C)6 6 6.0 6.7 D)6 6 6.7 6.0.在下列敘述中,錯(cuò)誤的一條是(C)。primf函數(shù)可以向終端輸出若干個(gè)任意類型的數(shù)據(jù)putchar函數(shù)只能向終端輸出字符,而且只能是ー個(gè)字符getchar函數(shù)只能用來(lái)輸入字符,但字符的個(gè)數(shù)不限scanf函數(shù)可以用來(lái)輸入任何類型的多個(gè)數(shù)據(jù).以下程序的輸出結(jié)果為(B)〇main()(charclゴa',c2=tb,,c3='c';printf("a%cb%c\tc%c\n”,cI,c2,c3);)A)abcabcabc B)aabbcc C)abe D)aaaabb.若輸入12345和abc,以下程序的輸出結(jié)果是(C).main()(inta;charch;scanf("%3d%3c”,&a,&ch);printf("%d,%c”,a,ch);)A)123,abc B)123,4 C)I23,a D)12345,abc.以下程序的輸出結(jié)果是(Dmain()(unsignedxl;intb=-1;xl=b;printf("%u”,xl);}A)%u B)-l C)%u-l D)65535.在printf函數(shù)中用來(lái)輸出十六進(jìn)制無(wú)符號(hào)整數(shù)的格式字符是(BA)d格式符 B)x格式符 C)u格式符 D)〇格式符.設(shè)a=12、b=12345t執(zhí)行語(yǔ)句printfド%4d,%4d”,a,b)的輸出結(jié)果為(B)〇A)12,123 B)12,12345 C)12,1234 D)12,123456.以下程序的輸出結(jié)果是(C)〇#include<stdio.h>#include<math.h>main()(inta=l,b=4,c=2;floatx=10.5,y=4.0,z;z=(a+b)/c+sqrt((double)y)*1.2/c+x;printf(M%AnM,z);)A)14.000000 B)15.400000 C)13.700000 D)14.900000.以下程序的輸出結(jié)果是(D)〇main()(inta=2,c=5;printf(ifca=%%d,b二%%d\n”,a,c);)A)a=%2,b=%5 B)a=%2,c=%5C)a=%%d,b=%%d D)a=%d,b=%d.請(qǐng)讀程序:main()(inta;floatb,c;scanfft%2d%3f%4f,,&a,&b,&c);printf("\na=%d,b=%f,c二%f\n”,a,b,c);)若運(yùn)行時(shí)從鍵盤上輸入9876543210<CR>(<CR>表示回車),則上面程序的輸出結(jié)果是(C)?A)a=98,b=765,c=4321 B)a=10,b=432,c=8765C)a=98,b=765.000000,¢=4321.000000 D)a=98,b=765.O,c=4321.0.若有定義:intX,y;chara,b,c;并有以下輸入數(shù)據(jù)(此處<CR>代表回車,U代表空格):U2<CR>AUBUC<CR>則能給x賦整數(shù)1,給、賦整數(shù)2,給a賦字符A,給b賦字符B,給c賦字符C的正確程序段是(Dscanf("x二%d,y二%d”,&x,&y);a二getchar();b二getchar();c二getchar();scanf("%d%d”,&x,&y);a=getchar();b二getchar();c=getchar();scanf(fcfc%d%d%c%c%c'\&x,&y,&a,&b,&c);scanfCt%d%d%c%c%c%c%c%c,\&x,&y,&a,&a,&b,&b,&c,&c);25,下列可作為C語(yǔ)言賦值語(yǔ)句的是(C).A)x=3,y=5; B)a=b=6 C)i-; D)y=int(x);.設(shè)i是int型變量,f是float型變量,用下面的語(yǔ)句給這兩個(gè)變量輸入值:scanf("i=%d,f=%『,&i,&f);為了把100和765.12分別賦給i和f,則正確的輸入為(B)。A)100〈空格>765.12(回車〉 B)i=l()0,f=765.12V回車〉C)100V回車>765.12(回車〉 D)x=100〈回車〉y=765.12V回車〉.以下敘述中正確的是(D)〇A)輸入項(xiàng)可以是ー個(gè)實(shí)型常量,例如:scanf("%「,3.5);B)只有格式控制,沒(méi)有輸入項(xiàng),也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scanf("a=%d,b=%d");C)當(dāng)輸入一個(gè)實(shí)型數(shù)據(jù)時(shí),格式控制部分可以規(guī)定小數(shù)點(diǎn)后的位數(shù),例如:scanf(“%4.2「,&f);D)當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量地址,例如:scanf("%「,&f);.設(shè)x和y均為int型變量,則以下語(yǔ)句:x+=y;y=x-y;x-=y;的功能是(D).A)把x和y按從小到大排序 B)把x和y按從大到小排序C)無(wú)確定結(jié)果 D)交換x和y中的值二填空題.下面程序的運(yùn)行結(jié)果是i:dec=4,oct=4,hex=4,unsigned=655310main()(shorti;i=-4;printffへni:dec=%d,oct=%o,hex=%x,unsigned二%u\n”,i,i,i,i);).若想通過(guò)以下輸入語(yǔ)句使a=5.0,b=4,c=3,則輸入數(shù)據(jù)的形式應(yīng)該是ー5.0,4,c=3 “intb,c;floata;scanf(*'%f,%d,c=%dn,&a,&b,&c);.下列程序的輸出結(jié)果是16.00,請(qǐng)?zhí)羁铡ain(){inta=9,b=2;floatx=6.6 ,y=l.l,z;z=a/2+b*x/y+l/2;printf(M%5.2f\nM,z);).在printf格式字符中,只能輸出ー個(gè)字符的格式字符是 c:用于輸出字符串的格式字符是 s:以小數(shù)形式輸岀實(shí)數(shù)的格式字符是 f;以標(biāo)準(zhǔn)指數(shù)形式輸出實(shí)數(shù)的格式字符是 e。三編程題.若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,cl='a',c2='b'o想得到以下的輸出格式和結(jié)果,請(qǐng)寫出完整的程序(包括定義變量類型和設(shè)計(jì)輸出)。要求輸出的結(jié)果如下:a=く空格>3く空格>く空格〉b二〈空格〉4〈空格〉〈空格〉c=V空格>5x=1.200000,y=2.400000,z=-3.600000x+y=〈空格〉3.60〈空格〉〈空格〉y+z=-1.20〈空格〉〈空格〉z(mì)+x二?2.40u=〈空格〉51274〈空格〉〈空格〉n=〈空格〉〈空格〉〈空格〉128756cl=a〈空格〉or〈空格〉97(ASCII)c2=B〈空格〉or〈空格〉98(ASCH)浮voidmain()inta,b,c;unsignedu;longintn;floatx,y,z;charcl,c2;a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,cl-a1,c2=V;printf(f,a=%2db=%2dc=%2d\n",a,b,c);printf(Hx=%f,y=%f,z=%+f\nM);printf(Hx+y=%5.2fy+z=%+5.2fz+x=%+5.2f\n",x+y,y+z,z+x);printf(nu=%6dn=%9d'n");printfC'cl=%cor%d(ASCII)\n,',cl,cl);printf("c2=%cor%d(ASCII)\nH,c2-32,c2);.輸入一個(gè)華氏溫度,要求輸出攝氏溫度。公式為c=1-32)輸出要有文字說(shuō)明,取2位小數(shù)。/*voidmain()floatc,f;primf("輸入一個(gè)華氏溫度:'n");scanf(n%r,&f);c=5.0/9.0*(f-32);printf("\n輸入的華氏溫度%.2f?攝氏溫度為:%.2f\nn,f,c);.編程序,用getchar函數(shù)讀入兩個(gè)字符給cl、c2?然后分別用putchar函數(shù)和printf函數(shù)輸出這兩個(gè)字符。/*voidmain()(charcl,c2;cl=getchar();c2=getchar();putchar(cl);putchar(c2);printf(H\ncl=%c;c2=%c\nn,cl,c2);)刃第五章選擇結(jié)構(gòu)程序設(shè)計(jì)ー單項(xiàng)選擇題.邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的數(shù)據(jù)類型是(D)oA)只能是?;?B)只能是〇或非〇正數(shù)0只能是整型或字符型數(shù)據(jù)D)可以是任何類型的數(shù)據(jù).已知x=43,ch=A,y=0;則表達(dá)式(x>=y&&chぐ啲值是(C)。A)0 B)語(yǔ)法錯(cuò) 01 D)“假”.已知intx=10,y=20,z=30;以下語(yǔ)句執(zhí)行后x,y,z的值是(B)〇if(x>y)z=x;x=y;y=z;A)x=10,y=20,z=30 B)x=20,y=30,z=30C)x=20,y=30,z=10 D)x=20,y=30,z=20.執(zhí)行下列語(yǔ)句后a的值為(2),b的值為(1)。(C)inta,b,c;a=b=c=l;++aII++b&&++c;A)錯(cuò)誤1 B)22 C)21 D)11.若希望當(dāng)A的值為奇數(shù)時(shí),表達(dá)式的值為“真”,A的值為偶數(shù)時(shí),表達(dá)式的值為“假”,則以下不能滿足要求的表達(dá)式是(C)〇A)A%2==1 B)!(A%2==0) C)!(A%2)D)A%26a設(shè)有:inta=l,b=2,c=3,d=4,m=2,n=2;執(zhí)行(m=a>b)&&(n=c>d)后n的值是(B)。A)0 B)2 C)3 D)47.判斷char型變量cl是否為小寫字母的正確表達(dá)式是(DA)匕'<=cl<=B)(cl>=a)&&(cl<=z)C)(匕’>=cl)II(*z'<=cl) D)(cl>=*a')&&(cl<=2).以下不正確的if語(yǔ)句形式是(C)〇if(x>y&&x!=y);if(x==y)x+=y;if(x!=y)scanf(“%d”,&x)elsescanf(“%d”,&y)if(x<y){x++;y++;}.請(qǐng)閱讀以下程序:inta=5,b=0,c=0;if(a=b+c)printf("***\n");elseprintf("$$$\n”);)以上程序(D)〇A)有語(yǔ)法錯(cuò)不能通過(guò)編譯B)可以通過(guò)編譯但不能通過(guò)連接C)輸出?**D)輸出$$$.當(dāng)a=l,b=3,c=5,d=4時(shí),執(zhí)行完下面一段程序后x的值是(B)〇if(a<b)if(c<d)x=l;elseif(a<c)if(b<d)x=2;elsex=3;elsex=6;elsex=7;A)1 B)2 C)3 D)6.以下程序的輸出結(jié)果是(c).{inta=100,x=10,y=20,okl=5,ok2=0;if(x<y)if(y!=10)if(!okl)a=l;elseif(ok2)a=10;a=T;printf("%d\n",a);)A)1 B)10 0-1 D)值不確定.以下程序的輸出結(jié)果是(B).main(){intx=2,y=-],z=2;if(x<y)if(y<0)z=0;elsez+=l;printf("%d\n”,z);}A)3 B)2 C)1 D)0.為了避免在嵌套的條件語(yǔ)句if-else中產(chǎn)生二義性,C語(yǔ)言規(guī)定:else子句總是與(B)配對(duì)。A)縮排位置相同的if B)其之前最近的if0其之后最近的if D)同一行上的14,若有條件表達(dá)式(exp)?a++:b-,則以下表達(dá)式中能完全等價(jià)于表達(dá)式(exp)的是(B)。A)(exp==O) B)(exp!=O) C)(exp==l)D)(exp!=l).若運(yùn)行時(shí)給變量x輸入12,則以下程序的運(yùn)行結(jié)果是(A)〇main(){intx,y;scanf("%d",&x);y=x>12?x+10:x-12;printf("%d\n",y);)A)0 B)22 C)12 D)10.語(yǔ)句:printグ%d”,(a=2)&&(b=-2))s的輸出結(jié)果是(D).A)無(wú)輸出 B)結(jié)果不確定 0-1 D)1.當(dāng)c的值不為。時(shí),在下列選項(xiàng)中能正確將c的值賦給變量a、b的是(C).A)c=b=a; B)(a=c)|I(b=c): C)(a=c)&&(b=c); D)a=c=b;18.能正確表示a和b同時(shí)為正或同時(shí)為負(fù)的表達(dá)式是(D),A)(a>=0||b>=0)&&(a<0b<0) B)(a>=0&&b>=0)&&(a<0&&b<0)C)(a+b>0)&&(a+b<=0) D)a*b>019.能正確表示邏輯關(guān)系:“a》0或aVO”的C語(yǔ)言表達(dá)式是(C)?A)a>=10ora〈=0 B)a>=0|a〈=10C)a>=10&&a<=0 D)a>=10||a<=020.有如下程序段inta=14,b=15,x;charc二'A';x=(a&&b)&&(cく吁);

if(x>0)y=l;elseif(x<0)y=-l;elsey=0;0y=-lif(x)if(x>O)y=l;elseif(x=O)yif(x>0)y=l;elseif(x<0)y=-l;elsey=0;0y=-lif(x)if(x>O)y=l;elseif(x=O)y=。;elsey=-l;23.閱讀以下程序:main(){intx;scanf&x);if(x—<5)printf("機(jī)T,if(x)if(x>0)y=l;elseif(x<0)y=-l;elsey二。;D)y=0;if(x>ニ。)if(x>O)y=l;elseyニー1;x);A)ture B)falseC)0D)121.以下程序的輸出結(jié)果是(CA)-l1 B)01main(){inta=-l,b=l,k;if((++aく。)&&!(b-くニ。))printf(*%d%d\n*,a,b);elseprintf(*%d%d\n*,b,a);C)10D)0022.與y=(x>O?l:x<O?-l:O);的功能相同的if語(yǔ)句是(A),elseprintf("%d”,x++);程序運(yùn)行后,如果從鍵盤上輸入5,則輸出結(jié)果是(B)〇A)3 B)4 C)5 D)6.假定w、x、y>z、m均為int型變量,有如下程序段:w二1;x二2;y二3;z二4;m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;則該程序運(yùn)行后,m的值是(D)〇A)4 B)3 C)2 D)1.有如下程序main(){floatx=2.0,y;if(x<0.0)y二。,。;elseif(x<10.0)y=l.0/x;elsey二1.。;

printf(w%f\nw,y);}該程序的輸出結(jié)果是(C)〇A)0.000000 B)0.250000 C)0.500000 D)1.000000.有如下程序main(){inta=2,b=-l,c=2;if(a)if(b<0)c二〇;elsec++;printf("%d\n”,c);}該程序的輸出結(jié)果是(A)〇TOC\o"1-5"\h\zA)0 B)1 C)2 D)3.若有定義:floatw;inta,b;則合法的switch語(yǔ)句是(Dswitch(x){case1,2:printfswitch(x){case1,2:printf("ヽn");case3:printf('**\n");}switch(a+b);{case1:printfl*\n");case2:printfl**\n");default:printf('\n");}正確的switch語(yǔ)句是(D)〇B)switch(a*a+b*b){case3:case1:y=a+b;break;case3:y=b-a;break;}D)switch(a-b){default:y=a*b;break;case3:case4:x=a+b;break;case10:case11:y=a-b;break;{case1.0:printf("*\n");case2.0:printf('**\n");}C)switch(b) D)(case1:printf("*\n");default:printf("\n");case1+2:printf('**\n");)28.若a、b、cl、c2、x、y均是整型變量A)swich(a+b);{case1:y=a+b;break;case0:y=a-b;break;)C)switcha{casecl:y=a-b;break;casec2:x=a*d;break;default:x=a+b;)29.有如下程序main(){intx=l,a二〇,b二〇;switch(x){case0:b++;case1:a++;case2:a++;b++;

)printf(wa=%d,b=%d\nn,a,b);}該程序的輸出結(jié)果是(A)〇A)a=2,b=l B)a=l,b=l C)a=l,b=0 D)a=2,b=2.當(dāng)輸入19、2、21時(shí),以下程序的輸出結(jié)果是(A).main(){inta,b,c,max;printf("pleaseinputthreenumbersa,b,c:\n");scanf("%d,%d,%d",&a,&b,&c);max=a;if(max<b)max=b;if(max<c)max=c;printf("maxis:%d\n”,max);}A)maxis:21 B)maxis:19 C)maxis:42.若輸入B,以下程序的輸出結(jié)果是(C)〇main(){chargrade;scanf("%cJ,,&grade);switch(grade)(case'A':printf(">=85.w;case'B':case*Cf:printf(">=60.w;case,D':printf("<60.99);default:printf("error.99);})A)>=85. B)>=60. C)>=60.<60.error.D)maxis:40D)error.32.當(dāng)執(zhí)行以下語(yǔ)句后的輸出結(jié)果是(D)〇D)maxis:40D)x=3,y=0;printf("%d,%d”,-l>x>-10&&l<x<10,-l>y>-10&&l<y<10);A)0 3 B)3 0 C)3 3 D)1 1A)-1B)0 C)1 D)533.執(zhí)行x=5>l+2&&2||2*4<4?!0后,x的值為(CA)-1B)0 C)1 D)534.以下程序的輸出結(jié)果為(C)〇main(){inta,b,c,x,y,z;a=10;b=2;c=!(a%b);x=!(a/b);y=(a<b)&&(b>=0);z=(a<b)II(b>=0);printf(ac=%d,x=%d,y=%d,z=%d\n”,c,x,y,z);}A)c=0,x=l,y=l,z=0 B)c=5,x=0,y=l,z=0C)c=l,x=0,y=0,z=l D)c=10,x=2,y=0,z=l.下列運(yùn)算符中,不屬于關(guān)系運(yùn)算符的是(D)。A)< B)>= 〇= D)!.以下程序的輸出結(jié)果是(B)〇main(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(4<%d,%d\n”,a,b);}A)6,1 B)2,1 C)6,0 D)2,0.設(shè)ch是char型變量,其值為A,且有下面的表達(dá)式:ch=(ch>=6A,&&ch<=tZ,)?(ch+32):ch上面表達(dá)式的值是(B)〇A)A B)a C)Z D)z.若k是int型變量,且有下面的程序片段:k=-3;if(k<=0)printfC####'')elseprintff€&&&&M)上面程序片段的輸出結(jié)果是(D)〇a)nnnn b)&&&& c)####&&&& d)有語(yǔ)法錯(cuò)誤,無(wú)輸出結(jié)果.請(qǐng)讀程序:main(){floatx,y;scanf(44%f\&x);if(x<0.0)y=0.0;elseif((x<5.0)&&(x!=2.0))y=1.0/(x+2.0);elseif(x<10.0)y=1.0/x;elsey=10.0;printf(“%An”,y);)若運(yùn)行時(shí)從鍵盤上輸入2.0<CR>(<CR>表示回車),則上面程序的輸出結(jié)果是(C).A)0.000000 B)0.250000 〇0.500000 D)1.000000.請(qǐng)讀程序:main()(intx=l,y=0,a=0,b=0;switch(x)(switch(y){caseO:a++;break;case1:b++;break;)a++;b++;break;)printf(4ta=%d,b=%d\n,\a,b);)上面程序的輸出結(jié)果是(A).A)a=2,b=l B)a=l,b=l C)a=l,b=0 D)a=2,b=241.為表示關(guān)系應(yīng)使用C語(yǔ)言表達(dá)式(A)。A)(x>=y)&&(y>=z) B)(x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)||(y>=z)42.若要求在if后ー對(duì)圓括號(hào)中表示a不等于〇的關(guān)系,則能正確表示這ー關(guān)系的表達(dá)式為(D)。A)a<>0 B)!a C)a=0 D)a.兩次運(yùn)行下面的程序,如果從鍵盤上分別輸入6和4,則輸出結(jié)果是(A)。main()(intx;scanf("%d”,&x);if(x++>5)primf("%d”,x);elseprintf("%d\n”,x—);)A)7和5 B)6和3 C)7和4 D)6和4.以下程序的輸出結(jié)果是(D)〇main()inta=-1,b=4,k;k=(++a<0)&&!(b—<=0);printfCt%d%d%d\n,\k,a,b);)A)104 B)103 C)003 D)004.設(shè)a為整型變量,不能正確表達(dá)數(shù)學(xué)關(guān)系10vavl5的C語(yǔ)言表達(dá)式是(A)?A)10<a<15 B)a==ll||a==12||a==13||a==14C)a>10&&a<15 D)!(a<=10)&&!(a>=15).假定所有變量均已正確說(shuō)明,下列程序段運(yùn)行后x的值是(B)〇a=b=c=O;x=35;if(!a)x—;elseif(b);if(c)x=3;elsex=4;A)34 B)4 C)35 D)3.設(shè)a=l,b=2,c=3,d=4,則表達(dá)式a<b?a:c>d?a:d的結(jié)果是(D)〇A)4 B)3 02 D)1.當(dāng)a=l,b=3,c=5,d=4時(shí),執(zhí)行下面一段程序后,x的值為(Bif(a<b)if(c<b)x=l;elseif(a<c)if(b<d)x=2;elsex=3;elsex=6;elsex=7;A)1 B)2 C)3 D)6.在執(zhí)行以下程序時(shí),為了使輸出結(jié)果為t=4,則給a和1>輸入的值應(yīng)滿足的條件是(C)。main()(ints,t,a,b;scanf(w%d,%d”,&a,&b);s=l;t=l;if(a>0)s=s+l;if(a>b)t=s+t;elseif(a==b)t=5;elset=2*s;printf(ヤ%d\n”,t);)A)a>b B)a<b<0 C)0<a<b D)0>a>b.設(shè)intx=l,y=l;表達(dá)式(!x||y-)的值是(BA)0 B)1 〇2 D)-1.若變量a、i已正確定義,且i已正確賦值,合法的語(yǔ)句是(B)〇A)a==l B)++i; C)a=a++=5; D)a=int(i);.以下程序的輸出結(jié)果為(C)。main()(inta=2,b=-l,c=2;if(a<b)if(b<0)c=0;elsec++;prinlf("%d\n”,c);)TOC\o"1-5"\h\zA)0 B)1 C)2 D)3二填空題.若從鍵盤輸入58?則以下程序輸出的結(jié)果是 585858 。main(){inta;scanf( ,&a);if(a>50)printf(a%dw,a);if(a>40)printf( ,a);if(a>30)printf(a%d",a);).下面程序的運(yùn)行結(jié)果是T.main()(inta=2,b=3,c;c=a;if(a>b)c=l;elseif(a==b)c=0;elsec=-l;printf("%d\n",c);}.以下程序?qū)崿F(xiàn):輸入三個(gè)整數(shù),按從大到小的順序進(jìn)行輸出。請(qǐng)?zhí)羁铡ain()(intx,y,z,c;scanf(“対%d%d”,&x,&y,&z);{c=x;x=y;y=c;}if(x<y)if( x<z_){c=x;x=z;z=c;}if(y<z){c=y;y=z;z=c;}printf(“%d%d%d",x,y,z);.如果運(yùn)行時(shí)輸入字符Q,則下面程序的運(yùn)行結(jié)果是 Qmain()(charch;scanf("%c”,&ch);ch=(ch>='A'&&ch<=Z)?(ch+32):ch;ch=(ch>=&&&ch<=?z')?(ch-32):ch;printf("%c",ch);}.若x為int類型,請(qǐng)以最簡(jiǎn)單的形式寫出與邏輯表達(dá)式!x等價(jià)的C語(yǔ)言關(guān)系表達(dá)式x--00.表示“整數(shù)x的絕對(duì)值大于5”時(shí)值為“真”的C語(yǔ)言表達(dá)式是x>5IIxv?5〇.下列程序段的輸出結(jié)果是passwam〇intn二七';switch(n++){default:printf("errorH);break;case'a':case'A':case'b':case,B,:printf("good,');break;case'c'xase'C':printf("pass");case'd'xase'D':printf("warn");).以下程序?qū)蓚€(gè)數(shù)從小到大輸出。main()(floata,b,t;scanf("%f%F ,&a,&b);if(a>b){t=a;a=b;b=t;)printf(“%5.2f,%5.2f\n”,a,b);).若輸入8642,以下程序的輸出結(jié)果為 (請(qǐng)輸入ー個(gè)。?99999之間的整數(shù):)place=4,每位數(shù)字為:8,6,4,2 0main(){longintnum;intgw,sw,bw,qw,ww,place;printf(“請(qǐng)輸入ー個(gè)〇?99999之間的整數(shù):");scanf(“%ld”,&num);if(num>9999)place=5;elseif(num>999)place=4;elseif(num>99)place=3;elseif(num>9)place=2;elseplace=1;printf(4tplace=%d/\place);printf(“每位數(shù)字為:つ;ww=num/10000;qw=(num-ww*10000)/1000;bw=(num-ww*10000-qw*l000)/100;sw=(num-ww*l0000-qw*1000-bw*100)/10;gw=num-ww*10000-qw*1000-bw*100-sw*l0;switch(place){case5:printfC%d,%d,%d,%d,%d”,ww,qw,bw,sw,gw);break;case4:printf("%d,%d,%d,%d”,qw,bw,sw,gw);break;case3:printf("%d,%d,%d”,bw,sw,gw);break;case2:printf("%d,%d”,sw,gw);break;case1:printf("%d”,gw);break;)).若輸入1988,程序運(yùn)行的結(jié)果為 1988年是閏年。 ;若輸入1989,則結(jié)果為 1989年不是閏年。 。main(){intyear,leap;scanf("%d”,&year);if(year%4)leap=O;elseif(year%100)leap=l;elseif(year%400)leap=O;elseleap=l;if(leap)printf("%d年是閏年。\nM,year);elseprintf("%d年不是閏年。Vn”,year);).用以下程序把大寫字母A~Z轉(zhuǎn)換成對(duì)應(yīng)的小寫字母a~z,其他字符不轉(zhuǎn)換。main(){charch;scanf("%c",&ch);ch=(ch>='A'&&ch〈=Z)?ch+32:ch;printfpchar二%c\n", ch);).條件“20Vx<30或xv?100”的C語(yǔ)言表達(dá)式是x>20&&x<30IIxく?100 。.若已知a=10,b=20,則表達(dá)式!a<b的值為10.若已定義inta=25,b=14,c=19;以下三目運(yùn)算符(?:)所構(gòu)成的語(yǔ)句的執(zhí)行結(jié)果是###a二26,b二13,319〇a++<二25&&b?-v二2&&c++?printf("***a二%d,b二%d,c二%d\n”,a,b,c):printf("###a二%d,b=%d,c二%d\n”,a,b,c);.以下兩條if語(yǔ)句可合并成一條if語(yǔ)句為 if(aく二b)[x二1;Drintf("####x二%d\n",x);}else{y二2;prinlf(”****y二%d\n",y);}。if(a<=b)x=l;elsey=2;if(a>b)printfC4****y=%d\n”,y);elseprintfC####x=%d\n,\x);第六章循環(huán)控制ー 單項(xiàng)選擇題.下面程序段的運(yùn)行結(jié)果是(C)?intnニ〇;while(n++<=2);printf(<<%dw,n);A)2 B)3 04 D)有語(yǔ)法錯(cuò).設(shè)有程序段:t=O;while(printf(u*n)){t++;if(t<3)break;)下面描述正確的是(D)?A)其中循環(huán)控制表達(dá)式與〇等價(jià)B)其中循環(huán)控制表達(dá)式與’〇'等價(jià)0其中循環(huán)控制表達(dá)式是不合法的D)以上說(shuō)法都不對(duì).下面程序的功能是將從鍵盤輸入的ー對(duì)數(shù),由小到大排序輸出,當(dāng)輸入ー對(duì)相等數(shù)時(shí)結(jié)束循環(huán),請(qǐng)選擇填空(B)。#include<stdio.h>main(){inta,b,t;scanf("%d%d”,&a,&b);while(){if(a>b){t=a;a=b;b=t;}printf(a%d,%d\nw,a,b);A)!a=b B)a!=b C)a==b D)a=b.C語(yǔ)言中,while和do-while循環(huán)的主要區(qū)別是(A)?do-while的循環(huán)體至少無(wú)條件執(zhí)行一次while的循環(huán)控制條件比do-while的循環(huán)控制條件更嚴(yán)格do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)do-while的循環(huán)體不能是復(fù)合語(yǔ)句.對(duì)以下程序段描述正確的是(C)〇x=-l;do{x=x*x;}while(!x);A)是死循環(huán) B)循環(huán)執(zhí)行二次0循環(huán)執(zhí)行一次 D)有語(yǔ)法錯(cuò)誤.以下描述中正確的是(〇)〇do-while循環(huán)中循環(huán)體內(nèi)不能使用復(fù)合語(yǔ)句do-while循環(huán)由do開(kāi)始,用while結(jié)束,在while(表達(dá)式)后面不能寫分號(hào)0在do-while循環(huán)體中,一定要有能使while后面表達(dá)式的值變?yōu)榱悖ā凹佟保┑牟僮鱀)do-while循環(huán)中,根據(jù)情況可以省略while/Z此題四個(gè)選項(xiàng)均有錯(cuò)誤。/Z對(duì)于A,當(dāng)循環(huán)體不止ー個(gè)語(yǔ)句時(shí),可以用花括號(hào)包含成一個(gè)復(fù)合語(yǔ)句;/Z對(duì)于B,while(表達(dá)式)后面必須寫分號(hào);對(duì)于D,do-while是ー個(gè)整體,不可省略while;/Z對(duì)于C,可能是參考答案。但出題者忽略了特殊情況:利用恒假的判斷條件,故意使循/Z環(huán)只執(zhí)行ー次。因此,循環(huán)體中可以不必有C選項(xiàng)所強(qiáng)調(diào)的操作。.若有如下語(yǔ)句intx=3;do{printf("%3d”,x-=2);}while(!(—x));則上面程序段(B).A)輸出的是1 B)輸出的是1和一20輸出的是3和0 D)是死循環(huán).下面有關(guān)foi"循環(huán)的正確描述是(Dfor循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況for循環(huán)是先執(zhí)行循環(huán)的循環(huán)體語(yǔ)句,后判斷表達(dá)式0在for循環(huán)中,不能用break語(yǔ)句跳出循環(huán)體D)for循環(huán)的循環(huán)體語(yǔ)句中,可以包含多條語(yǔ)句,但必須用花括號(hào)括起來(lái).對(duì)for(表達(dá)式1;;表達(dá)式3)可理解為(B).A)for(表達(dá)式1;〇;表達(dá)式3) B)for(表達(dá)式1;1;表達(dá)式3)0for(表達(dá)式1;表達(dá)式1;表達(dá)式3) D)for(表達(dá)式1;表達(dá)式3;表達(dá)式3).若i為整型變量,則以下循環(huán)執(zhí)行次數(shù)是(Bfor(i=2;i==0;)printf(u%dn,i—);A)無(wú)限次 B)0次 C)1次 D)2次.以下不是無(wú)限循環(huán)的語(yǔ)句為(A)。for(y=0,x=l;x>++y;x=i++)i=x;for(;;x++=i);while(l){x++;}for(i=10;;i—)sum+=i;.下面程序段的運(yùn)行結(jié)果是(C).for(y=l;y<10;)y=((x=3*y,x+1),x-l);printf(“x=%d,y或d”,x,y);A)x=27,y=27 B)x=12,y=13 C)x=15,y=14 D)x=y=27.執(zhí)行語(yǔ)句for(i=l;i++<4;);后變量i的值是(CA)3 B)4 C)5 D)不定.有一堆零件(100到200之間),如果分成4個(gè)零件ー組的若干組,則多2個(gè)零件;若分成7個(gè)零件ー組,則多3個(gè)零件;若分成9個(gè)零件ー組,則多5個(gè)零件。下面程序是求這堆零件總數(shù),請(qǐng)選擇填空(D)〇#include<stdio.h>main(){inti;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%9==5.下面程序的功能是把316表示為兩個(gè)加數(shù)的和,使兩個(gè)加數(shù)分別能被13和11整除,請(qǐng)選擇填空(B)。#include<stdio.h>main(){inti=0,j,k;do{i++;k=316-13*i;}while();j=k/ll;printf(“316=13*%d+ll*%d",i,j);)A)k/11 B)k%ll C)k/ll==0 D)k%ll==0.下面程序的運(yùn)行結(jié)果是(D)〇#include<stdio.h>main(){inty=10;do{y一;}while(--y);printf("%d\n”,y—);1A)-1 B)1 C)8 D)0.若運(yùn)行以下程序時(shí),從鍵盤輸入ADescriptorvCRX〈CR>表示回車),則下面程序的運(yùn)行結(jié)果是(D#include<stdio.h>main(){charc;intvO=l,vl=0,v2=0;do{switch(c=getchar()){case'a':case'A':case、e':case:case'i':case'P:case、0':case'O':case'u':case'U':vl+=l;default:vO+=l;v2+=l;)}while(c!='\n');printf(vvO=%d,vl=%d,v2=%d\n,z,vO,vl,v2);A)v0=7,vl=4,v2=7 B)v0=8,vl=4,v2=8C)vO=ll,vl=4,v2=ll D)v0=12,vl=4,v2=12.下面程序的運(yùn)行結(jié)果是(B)〇??include<stdio.h>main(){inta=l,b=10;do{b-=a;a++;}while(b—<0);printf("a=%d,b二%d\n”,a,b);)A)a=3,b=ll B)a=2,b=8C)a=l,b=-l D)a=4,b=919.以下程序的輸出結(jié)果是(B)〇main(){intnum=0;while(numく二2){num++;printf("%d\n",num);}A)1 B)123.設(shè)有程序段intk=10;while(k=0)k=k-l;則下面描述中正確的是(CA)while循環(huán)執(zhí)行!0次C)循環(huán)體語(yǔ)句ー次也不執(zhí)行.設(shè)有以下程序段intx=0,s=0;while(!x!=0)s+=++x;printfs);則(B).A)運(yùn)行程序段后輸出O0程序段中的控制表達(dá)式是非法的〇! D)12B)循環(huán)是無(wú)限循環(huán)D)循環(huán)體語(yǔ)句執(zhí)行ー次B)運(yùn)行程序段后輸出1

D)程序段執(zhí)行無(wú)限次.語(yǔ)句while(!E);中的表達(dá)式!E等價(jià)于(A)〇A)E==0 B)E!=l C)E!=0 D)E==l.下面程序段的運(yùn)行結(jié)果是(Aa=l;b=2;c=2;while(a<b<c){t=a;a=b;b=t;c—;}printf(H%d,%d,%d';a,b,c);A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1.下面程序段的運(yùn)行結(jié)果是(D)〇x二yニ〇;while(x<l5)y++,x+=++y;printf(H%d,%d”,y,x);D)8,20A)20,7 B)6,12 C)20,8D)8,20.以下程序段的執(zhí)行結(jié)果是(Binta,y;a=10;y=0;do{a+=2;y+=a;printf(Ma=%dy=%d\nM,a,y);if(y>20)break;1while(a=14);

A)a=12y=12a=14y=16a=16y=2Oa=18y=24C)a=12y=12a=14y=26a=14y=44A)a=12y=12a=14y=16a=16y=2Oa=18y=24C)a=12y=12a=14y=26a=14y=4426.t為int類型,B)a=12y=12a=16y=28D)a=12y=12進(jìn)人下面的循環(huán)之前,t的值為〇,則以下敘述中正確的是(Bwhile(t=l)A)循環(huán)控制表達(dá)式的值為0 B)循環(huán)控制表達(dá)式的值為1〇循環(huán)控制表達(dá)式不合法 D)以上說(shuō)法都不對(duì).有以下程序段intk=0;while(k=l)k++;while循環(huán)執(zhí)行的次數(shù)是(A)〇A)無(wú)限次 B)有語(yǔ)法錯(cuò),不能執(zhí)行〇一次也不執(zhí)行 D)執(zhí)行1次.以下程序執(zhí)行后sum的值是(C)。main(){inti,sum;fbr(i=l;i<6;i++)sum+=i;printf(M%d\n';sum);)A)15 B)14 C)不確定 D)0.有以下程序段intx=3;do{printf(n%dH,x-=2);)while(!(—x));其輸出結(jié)果是(C)。A)1 B)30 C)1-2 D)死循環(huán).若輸入12、8,以下程序的輸出結(jié)果是(A)〇main(){inta,b,numl,num2,temp;scanf(ヽ、%d,%d〃,&numl,&num2);if(numl>num2){temp=numl;numl=num2;num2=temp;a=numl,b=num2;while(b!=0){temp=a%b;a=b;b=temp;}printf(a%d,%d>,,a,numl*num2/a);A)4,24 B)3,24.以下程序的輸出結(jié)果是(#includeくmath.h>#include<stdio.h>main(){ints=l;floatn=l,pi=0;doublet=l;while(fa

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論