



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第一章C語言概述ー單項(xiàng)選擇題.ー個(gè)C程序的執(zhí)行是從(A)oA)本程序的main函數(shù)開始,到main函數(shù)結(jié)束B)本程序文件的第一個(gè)函數(shù)開始,到本程序文件的最后一個(gè)函數(shù)結(jié)束C)本程序的main函數(shù)開始,到本程序文件的最后一個(gè)函數(shù)結(jié)束D)本程序文件的第一個(gè)函數(shù)開始,到本程序的main函數(shù)結(jié)束.以下敘述正確的是(C)〇A)在C程序中,main函數(shù)必須位于程序的最前面B)C程序的每行中只能寫一條語句0C語言本身沒有輸入輸出語句D)在對ー個(gè)C程序進(jìn)行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤3.以下敘述不正確的是(D)〇ー個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成ー個(gè)C源程序必須包含ー個(gè)main函數(shù)0C程序的基本組成單位是函數(shù)D)在C程序中,注釋說明只能位于一條語句的后面C語言規(guī)定,在ー個(gè)源程序中,main函數(shù)的位置(C)〇A)必須在最開始 B)必須在系統(tǒng)調(diào)用的庫函數(shù)的后面0可以任意 D)必須在最后ー個(gè)C語言源程序是由(B)〇A)一個(gè)主程序和若干子程序組成 B)函數(shù)組成0若干過程組成 D)若干子程序組成二填空題1.C源程序的基本單位是 函數(shù)〇TOC\o"1-5"\h\z.ー個(gè)C源程序中至少應(yīng)包括ー個(gè) main函數(shù) 〇.在ー個(gè)C源程序中,注釋部分兩側(cè)的分界符分別為ー/*和?/ 0.ー個(gè)函數(shù)是由兩部分組成的,它們分別是 函數(shù)名和 函數(shù)體 。.在C語言中,ー個(gè)函數(shù)的函數(shù)體一般包括 聲明部分和 執(zhí)行部分 。.在每個(gè)C語句和數(shù)據(jù)定義的最后必須有一個(gè) 攵號..C語言本身沒有輸入輸出語句。其輸入輸出是由系統(tǒng)定義的標(biāo)準(zhǔn)輸入輸出函數(shù) 來完成。.程序是指 (一系列可執(zhí)行)指令的集合〇.源程序是指(未編譯的)源代碼。C源程序文件的擴(kuò)展名為 C..目標(biāo)程序是指 由源程序經(jīng)編譯后產(chǎn)生的可連接文性 〇目標(biāo)程序文件的擴(kuò)展名為 Obi..可執(zhí)行程序是指由目標(biāo)程序連接后產(chǎn)生的可執(zhí)行程序〇可執(zhí)行程序文件的擴(kuò)展名為.上機(jī)運(yùn)行ー個(gè)C源程序的步驟一般為:①寫(無錯的)源程序;② (正確通過)編譯 ;③連接;④ 運(yùn)行〇第三章數(shù)據(jù)類型、運(yùn)算符與表達(dá)式ー單項(xiàng)選擇題.下面四個(gè)選項(xiàng)中,均不是c語言關(guān)鍵字的選項(xiàng)是(A)。A)defineIFType B)getccharprintfC)includescanfcase D)whilegopow.C語言中的標(biāo)識符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符(C)。A)必須為字母 B)必須為下劃線C)必須為字母或下劃線 D)可以是字母、數(shù)字和下劃
線中任一種字符.下列四個(gè)選項(xiàng)中,均是C語言關(guān)鍵字的選項(xiàng)是(B)〇A)autoenuminclude B)switchtypedefcontinueC)signedunionscanf D)ifstructtype4.下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識符的選項(xiàng)是(CA)AP_0do B)float laO _AC)b-agoto intD)_123 temp int5.以下有4組用戶標(biāo)識符,其中合法的ー組是(C)。A)For-sub Case B)4dDOSizeC)f2_G3IF abc D)WORDvoiddefine.下列選項(xiàng)中,合法的C語言關(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)-100x8f-011B)OabcA)-100x8f-011B)Oabc-017Oxc〇010 -0x11OxflD)0al2-0x123-Oxa.設(shè)C語言中,ー個(gè)int型數(shù)據(jù)在內(nèi)存中占2個(gè)字節(jié),則unsignedint型數(shù)據(jù)的取值范圍為(C)〇A)〇?255B)〇?32767〇〇?65535D)〇?.在C語言中,不正確的int類型的常數(shù)是(A)oA)32768 B)0 C)037D)OxAFIL下面四個(gè)選項(xiàng)中,均是不合法的整型常量的選項(xiàng)是(D)〇TOC\o"1-5"\h\zA)-Ofl -Oxffff 0011B)-Oxcdf 017 12456C)-018 999 5e2 D)-0x48eg-068 03f12.下面四個(gè)選項(xiàng)中,均是不合法的浮點(diǎn)數(shù)的選項(xiàng)是(B)〇A)160. 0.12e3 B)123 2e4.2 .e5C)-.18 123e4 0.0 D)-e3 .234 le313.下面四個(gè)選項(xiàng)中,均是合法的浮點(diǎn)數(shù)的選項(xiàng)是(B)〇A)+le+1 5e-9.4 03e2 B)-.60 12e-4-8e5C)123e 1.2e~.4 +2e-l D)-e3 .8e_4 5.e-0.下列變量定義中合法的是(A)〇short_a=l-.le-l;C)longdo=OxfdaL;short_a=l-.le-l;C)longdo=OxfdaL;doubleb=l+5e2.5;D)float2_and=l-e-3;.以下選項(xiàng)中合法的字符常量是(B)〇A)、、B〃B)'\010,C)68D)D.以下選項(xiàng)中,非法的字符常量是(C)〇A),Xt, B)'\17' C)"n" D)'Xxaa'.以下所列的C語言常量中,錯誤的是(B)〇A)OxFFB)1.2e0.5C)2LD)、'72,.在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是(D)〇A)補(bǔ)碼B)反碼〇原碼D)ASCI!碼19.下面四個(gè)選項(xiàng)中,均是合法轉(zhuǎn)義字符的選項(xiàng)是(A)。TOC\o"1-5"\h\zA)、ヽ‘‘ヽ'\' '\n' B)、ヽ''\017' '\'"〇 'ヽ018' '\f' 'xab' D)'\\0' '\101' 'xlf'.下面四個(gè)選項(xiàng)中,均是不合法的轉(zhuǎn)義字符的選項(xiàng)是(〇)〇A) '\\' '\xf' B)'\1011' '\' '\a'C)'\011' '\f 'ヽ}' D)'\abc''\101''xlf'/Z上題中,紅色部分表示合法的轉(zhuǎn)義字符。.下面正確的字符常量是(C)〇A)''c"B)'\\''C)'WD)''22.下面四個(gè)選項(xiàng)中,均是正確的數(shù)值常量或字符常量的選項(xiàng)是
A)0.0Of8.9e B)'a' 3.9e-2.5leiヽ,C)'3, 011OxffOOOa D)+001Oxabcd2e2 50..下面不正確的字符串常量是(A)B)“1212〃B)“1212〃C)〃〇〃D)〃〃.在C語言中(以16位PC機(jī)為例),5種基本數(shù)據(jù)類型的存儲空間長度的排列順序?yàn)椋ˋ)〇char<int<longint<=float<doub1echar=int<longintくfloatくdoublechar<int<longint=f1oat=doub1echar=int=longint<=float<double.若有說明語句:charc=,\72,5則變量c(A)〇A)包含1個(gè)字符 B)包含2個(gè)字符0包含3個(gè)字符 D)說明不合法,c的值不確定.設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+a+i*f值的數(shù)據(jù)類型為(C)。A)intB)floatC)doubleD)不確定.表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為(C)〇A)intB)floatC)doubleD)A)intB)floatC)doubleD)不確定.設(shè)有說明:charw;intx;floaty;doublez;則表達(dá)式w*x+z-y值的數(shù)據(jù)類型為(DA)floatB)charC)intD)double.以下選項(xiàng)中屬于C語言的數(shù)據(jù)類型是(C)。A)復(fù)數(shù)型B)邏輯型〇雙精度型 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*(int)(x+y)%2/4的值是(A)〇A)2.B)2.C)3.D)0..若有代數(shù)式3ae/bc,則不正確的c語言表達(dá)式是(C)。A)a/b/c*e*3 B)3*a*e/b/c C)3*a*e/b*cD)a*e/c/b*3.設(shè)有intx=ll;則表達(dá)式(x++*1/3)的值是(A)〇A)3 B)4C)11D)12.以下變量x.、y、z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子x/yz的C語言表達(dá)式是(A)〇A)x/y*z B)x*(l/(y*z)) C)x/y*l/z D)x/y/z.C語言中運(yùn)算對象必須是整型的運(yùn)算符是(A)〇A)%= B)/ C)=D)<=.下列程序的輸出結(jié)果是(C)。main(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf(,,%d\nu,d*y);)A)3B)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)8C)6A)7B)8C)6D)2.假定x和y為double型,則表達(dá)式x=2,y=x+3/2的值是(D)〇A)3. B)3C)2.D)3..若以下變量均是整型,且num=sum=75則計(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)42.設(shè)以下變量均為int類型,則值不等于7的表達(dá)式是(C)〇A)(x=y=6,x+y,x+1) B)(x=y=6,x+y,y+1)C)(x=6,x+1,y=6,x+y) D)(y=6,y+1,x=y,x+1).下列程序執(zhí)行后的輸出結(jié)果是(A)〇main(){intx='f';printf(w%c\nw,'A'+(x-匕'+1));)A)GB)HC)ID)J.下列程序執(zhí)行后的輸出結(jié)果是(C)〇main(){charx=OxFFFF;printf("%d\n'*,x-);}A)-32767B)FFFEC)-1D)-32768.以下程序的輸出結(jié)果是(D)。main(){inta=3;printf("%d\n",(a+=a-=a*a));)A)-6B)12 C)0D)-12.若變量已正確定義并賦值,下面符合C語言語法的表達(dá)式是(B)。A)a:=b+l B)a=b=c+2 C)int18.5%3D)a=a+7=c+b.若有以下程序段,intcl=l,c2=2,c3;c3=1.0/c2*cl;則執(zhí)行后,c3中的值是(A)〇A)0 B)0.5C)1 D)2.有如下程序main(){inty=3,x=3,z=l;printf(M%d%d\nM,(++x,y++),z+2);)運(yùn)行該程序的輸出結(jié)果是(D)。A)34 B)42 C)43D)33.已知大寫字母A的ASCH碼為65,以下程序的運(yùn)行結(jié)果為(A)〇#includeくstdio.h>main(){charcl='A',c2='Y';printf(、、%d,%d\n〃,cl,c2);)A)65,89B)A,YC)65,88D)65,90.以下程序的輸出結(jié)果是(D)〇#include<stdio.h>main(){inta=010,b=10;printf(''%d,%d\n〃,a++,—b);C)10,9D)8,9A)10,10B)8,10C)10,9D)8,9.以下程序的輸出結(jié)果是(B)〇main(){inta,b;a=100;b=200;printf(''%d\n,z,(a,b));)A)100B)200C)20000D)100=200.執(zhí)行語句y=10;x=y++;的結(jié)果是(C)。A)x=10,y=10 B)x=ll,y=ll C)x=10,y=llD)x=ll,y=1053.在表示C語言的整型變量時(shí),表示“無符號長整型”的符號是(DA)unsignedint B)unsignedshortC)longint D)unsignedlong.在下列形式的常數(shù)中,C程序不允許出現(xiàn)的是(B)〇A).45B)±123C)25.6e-2D)4e3.以下程序的輸出結(jié)果是(C)〇main(){floatx=3.6;
inti;i=(int)x;printf(''x=%f,i=%d〃,x,i);)A)x=3.,i=4 B)x=3,i=3x=3.,i=3 D)x=3.,i=3..在C語言中,要求運(yùn)算數(shù)必須是整型數(shù)據(jù)的運(yùn)算符是(B)〇A)/B)%C)!D)<.執(zhí)行下列語句的結(jié)果是(D)〇i=3;printf("%d,”,++i);printf(M%dn,i++);A)3,3B)3,4C)4,3D)4,4.已知x=3,y=2,則表達(dá)式x*=y+8的值為(C)。A)3B)2C)30D)14.執(zhí)行語句inti=65536;printf(4t%d\n,,,i);的結(jié)果是(B)〇A)65536B)0C)有語法錯誤,無輸出結(jié)果—1.在C語言中,不正確的int類型的常數(shù)是(A)〇A)32768B)0C)037D)OxAFA)32768B)0C)037D)OxAF.C語言提供的合法關(guān)鍵字是(D)。A)swicth B)chan C)Case D)default.表示,在使用x之前,先使x的值加1”的正確方式是(AA)〇A)++xB)x++ C)+x D)+x+.設(shè)x的值為5,則表達(dá)式(++x)+(++x)+(++x)的值是(22D)。A)24B)20〇!5D)21.在C語言中,合法的字符常量是(BA)'\084, B)'\x43, C)'ab, D)'、、〇〃65,若已定義x和y為double類型,則表達(dá)式:x=l,y=x+3/2的值是(C)〇A)1B)2C)2.0D)2.6.若t為double類型,表達(dá)式t=l,t+5,t++的值是(D)〇A)1B)6.0〇2.0D)1.0.若有以下定義和語句,則輸出結(jié)果是(B)〇charcl='b',c2='e';printf(、、%d,%c\n”,c2-cl,c2-'a'+'A');A)2,MC)2,EB)A)2,MC)2,ED)輸出項(xiàng)與對應(yīng)的格式控制不一致,輸出結(jié)果不確定.設(shè)有如下的變量定義:inti=8,a,b;doublex=l.42,y=5.2;則以下符合C語言語法的表達(dá)式是(A)〇A)a+=a-=(b=4)*(a=3) B)x%(-3)C)a=a*3=2 D)y=float(i).若有以下定義和語句: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二填空題1.若x和a均是int型變量,則計(jì)算表達(dá)式⑴后的x值為12,計(jì)算表達(dá)式⑵后的x值為 4 01)x=(a=4,6*2)⑵x=a=4,6*2.若a是int型變量,則表達(dá)式(a=4*5,a*2),a+6的值為26〇.若b是int型變量,則表達(dá)式b=25/3%3的值為2〇.若s是int型變量,且s=6則下面表達(dá)式s%2+(s+l)%2的值TOC\o"1-5"\h\z為1 0.若a,b和c均是int型變量,貝!!計(jì)算表達(dá)式a=(b=4)+(c=2)后,a值為6 ,b值為4 ,c值為2 0.若x和n均是int型變量,且x和n的初值均為5,則計(jì)算表達(dá)式x+=n++后x的值為10 ,n的值為6 0,若有定義:intb=7;floata=2.5,c=4.75則表達(dá)式a+(int)(b/3*(int)(a+c)/2)%4的值為4.5 0.若有定義:inta=2,b=3;floatx=3.5,y=2.5;則表達(dá)式(float)(a+b)/2+(int)x%(int)y的值為3.5 0.若有定義: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的值為 〇〇.以下程序的輸出結(jié)果是 〇〇main(){unsignedshorta=65536;intb;printf(w%d\nM,b=a);}.請寫出數(shù)學(xué)式a/bc的C語言表達(dá)式 a/(b*c) 。.設(shè)a、b、c為整型數(shù),且a=2>b=3>c=4,則執(zhí)行完語句a*=16+(b++)-(++c)后,a的值是 28〇第四章最簡單的C程序設(shè)計(jì)ーー順序程序設(shè)計(jì)ー 單項(xiàng)選擇題1?5BDDDB.printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列,如果字符串長度大于5,則輸出按方式(B)〇A)從左起輸出該字符串,右補(bǔ)空格B)按原字符長從左向右全部輸出0右對齊輸出該字串,左補(bǔ)空格D)輸出錯誤信息.已有定義inta=-2;和輸出語句printf(a%8xw,a);以下正確的敘述是(D)〇A)整型變量的輸出形式只有%d一種B)%x是格式符的一種,它可以適用于任何ー種類型的數(shù)據(jù)0%x是格式符的ー種,其變量的值按十六進(jìn)制輸出,但%8x是錯誤的D)%8x不是錯誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度.若x,y均定義成int型,z定義為double型,以下不合法的scanf函數(shù)調(diào)用語句是(D),,scanf(w%d%x,%le”,&x,&y,&z);scanf(w%2d*%d,%IP,&x,&y,&z);scanf(w%x%*d%o”,&x,&y);scanf(4t%x%o%6.2產(chǎn),&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,115.下列程序的運(yùn)行結(jié)果是(B)〇ftinclude<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.語句printf("a\bre\%Ny\\\bou\n”);的輸出結(jié)果是(C)〇(說明:へわ是退格符)A)a\bre\'hi\'y\\\bou B)a\bre\'hi\*y\bouC)re'hi*you D)abre*hi'y\bou7.x、y、z被定義為int型變量,若從鍵盤給x、y、z輸入數(shù)據(jù),正確的輸入語句是(B)。A)INPUTx、y、z;scanf(n%d%d%d",&x,&y,&z);C)scanf("%d%d%dH,x,y,z);read(,,%d%d%d,,,&x,&y,&z);B)D)8.若變量已正確說明為float類型,要通過語句scanf(*'%f%f%f",&a,&b,&c);給a賦于10.0,b賦予22.0,c賦予33.0,不正確的輸入形式是(B):A)10<回車〉22〈回車〉33〈回車〉C)10.0〈回車〉22.033.0V回車〉B)10.0,22.0,33.0〈回車〉D)1022〈回車〉33〈回車〉9.以下程序的輸出結(jié)果是(A、n=24)〇main()|intn;(n=6*4,n+6),n*2;printf(''n=%d\nz,,n);)A)24 B)12C)26D)20.以下程序的輸出結(jié)果是(B)〇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,1 B)8,14,5 08,13,5D)9,14,5.下面程序的輸出結(jié)果是(C)〇main(){intx,y,z;x=0;y=z=-l;printf(、、x=%d\n",x);)C)x=2D)x=3A)x=4B)x=0C)x=2D)x=3.設(shè)x為int型變量,則執(zhí)行語句x=10;x+=x-=x-x;后,x的值為(BA)10B)20〇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=20/3;printf(n%d%ld%f%f\nn,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.015,在下列敘述中,錯誤的一條是(C)〇printf函數(shù)可以向終端輸出若干個(gè)任意類型的數(shù)據(jù)putchar函數(shù)只能向終端輸出字符,而且只能是ー個(gè)字符getchar函數(shù)只能用來輸入字符,但字符的個(gè)數(shù)不限scanf函數(shù)可以用來輸入任何類型的多個(gè)數(shù)據(jù).以下程序的輸出結(jié)果為(B)〇main()charcl='a',c2='b',c3='c';printf(ua%cb%c\tc%c\nw,cl,c2,c3);}A)abcabcabc B)aabbcc C)abc D)aaaabb.若輸入12345和abc,以下程序的輸出結(jié)果是(C)〇main()(inta;charch;scanf(M%3d%3cM,&a,&ch);printf(w%d,%c”,a,ch);)A)123,abc B)123,4 C)123,a D)12345,abc.以下程序的輸出結(jié)果是(D)。main()(unsignedxl;intb=-1;xl=b;printf(u%u,,,xl);A)%u B)-l C)%u-l D)65535.在printf函數(shù)中用來輸出十六進(jìn)制無符號整數(shù)的格式字符是(B)〇A)d格式符 B)x格式符 C)u格式符D)〇格式符.設(shè)a=12>b=12345?執(zhí)行語句printf("%4d,%4d”,a,b)的輸出結(jié)果為(B)。A)12,123 B)12,12345 C)12,1234 D)12,.以下程序的輸出結(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(u%Anw,z);
A)14.B)15.C)13.A)14.B)15.C)13.14..以下程序的輸出結(jié)果是(D)〇main(){inta=2,c=5;printf(wa=%%d,b=%%d\n”,a,c);)A)a=%2,b=%5 B)a=%2,c=%5C)a=%%d,b=%%d D)a=%d,b=%d23.請讀程序:main()(inta;floatb,c;scanf(<4%2d%3f%4r,&a,&b,&c);printf(u\na=%d,b=%f,c=%f\n”,a,b,c);)若運(yùn)行時(shí)從鍵盤上輸入<CR>(<CR>表示回車),則上面程序的輸出結(jié)果是(C)〇B)a=10,A)a=98,b=765,c=4321b=432,c=8765B)a=10,a=98,b=765.,c=4321. D)a=98,b=765.0,c=4321.0.若有定義:intx,y;chara,b,c;并有以下輸入數(shù)據(jù)(此處<CR>代表回車,U代表空格):1U2<CR>AUBUC<CR>則能給x賦整數(shù)1,給y賦整數(shù)2,給a賦字符A,給b賦字符B,給c賦字符C的正確程序段是(D)。scanf(wx=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();scanf(w%d%d“,&x,&y);a=getchar();b=getchar();c=getchar();scanf(u%d%d%c%c%c,\&x,&y,&a,&b,&c);scanf(u%d%d%c%c%c%c%c%cw,&x,&y,&a,&a,&b,&b,&c,&c);.下列可作為C語言賦值語句的是(C)〇A)x=3,y=5; B)a=b=6 C)i—;y=int(x);26.設(shè)i是int型變量,f是float型變量,用下面的語句給這兩個(gè)變量輸入值:scanf(Mi=%d,f=%P,&i,&り;為了把100和765.12分別賦給i和f,則正確的輸入為(B)。A)100<空格>765.12〈回車〉 B)i=100,f=765.12〈回車〉C)100<回車>765.12<回車> D)x=100<回車〉y=765.12C回車〉.以下敘述中正確的是(D)〇A)輸入項(xiàng)可以是ー個(gè)實(shí)型常量,例如:scanf("%P,3.5);B)只有格式控制,沒有輸入項(xiàng),也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scanf(Ma=%d,b=%dw);C)當(dāng)輸入一個(gè)實(shí)型數(shù)據(jù)時(shí),格式控制部分可以規(guī)定小數(shù)點(diǎn)后的位數(shù),例如:scanfC%4.2f\&f);D)當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量地址,例如:scanf(“%P,&f);.設(shè)x和y均為int型變量,則以下語句:x+=y;y=x-y;x-=y;的功能是(D)〇A)把x和y按從小到大排序 B)把x和y按從大到小排序C)無確定結(jié)果 D)交換x和y中的值二填空題.下面程序的運(yùn)行結(jié)果是i:dec=4,oct=4,hex=4,unsigned=65531main()shorti;i=-4;printf(w\ni:dec=%d,oct=%o,hex=%x,unsigned=%u\nw,i,i,i,i);).若想通過以下輸入語句使a=5.0,b=4,c=3,則輸入數(shù)據(jù)的形式應(yīng)該是ー 5.0,4,c=3 0intb,c;floata;scanf(*'%f,%d,c=%dn,&a,&b,&c);.下列程序的輸出結(jié)果是16.0〇,請?zhí)羁铡ain(){inta=9,b=2;floatx=6.6 ,y=l.l,z;z=a/2+b*x/y+l/2;printf("%5.2f\nu,z);).在printf格式字符中,只能輸出ー個(gè)字符的格式字符是c;用于輸出字符串的格式字符是ー^以小數(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=,cl=,a,,c2ゴb,。想得到以下的輸出格式和結(jié)果,請寫出完整的程序(包括定義變量類型和設(shè)計(jì)輸出)。要求輸出的結(jié)果如下:a=く空格>3V空格><空格>b=く空格〉4〈空格〉〈空格〉c=く空格〉5x=l.,y=2.,z=-3.x+y=〈空格〉3.60〈空格〉〈空格〉y+z=-1.20〈空格〉〈空格〉z+x=-2.40u=〈空格〉51274〈空格〉〈空格〉n=〈空格〉〈空格〉〈空格〉cl=a〈空格〉or〈空格〉97(ASCII)c2=B〈空格〉or〈空格〉98(ASCII)/*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=,cl='a',c2=*b*;printf("a=%2db=%2dc=%2d\n",a,b,c);printf("x=%f,y=%f,z=%+f\n");printf(,,x+y=%5.2fy+z=%+5.2fz+x=%+5.2f\nu,x+y,y+z,z+x);printf(',u=%6dn=%9d\nu);printf("cl=%cor%d(ASCII)\nu,cl,cl);printf("c2=%cor%d(ASCII)\nu,c2-32,c2);)*/.輸入一個(gè)華氏溫度,要求輸出攝氏溫度。公式為C爭ー32)輸出要有文字說明,取2位小數(shù)。voidmain()(floatc,f;prin情(”輸入一個(gè)華氏溫度:\n");scanfCW,&f);c=5.0/9.0*(f-32);printf(”\n輸入的華氏溫度%.2f,攝氏溫度為:%.2f\n”,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\n**,cl,c2);}列第五章選擇結(jié)構(gòu)程序設(shè)計(jì)單項(xiàng)選擇題.邏輯運(yùn)算符兩側(cè)運(yùn)算對象的數(shù)據(jù)類型是(D)〇A)只能是0或1B)只能是〇或非〇正數(shù)0只能是整型或字符型數(shù)據(jù)D)可以是任何類型的數(shù)據(jù).已知x=43,ch=,A,,y=O;則表達(dá)式(x>=y&&chぐ的值是(C)。A)0 B)語法錯 〇1 D)“假”3.已知intx=10,y=20,z=30;以下語句執(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í)行下列語句后a的值為(2),b的值為(1 (C)inta,b,c;a=b=c=l;++a|I++b&&++c;A)錯誤1 B)22 C)21D)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%26.設(shè)有:inta=l,b=2,c=3,d=4,m=2,n=2;執(zhí)行(m=a>b)&&(n=c>d)后n的值是(B)oTOC\o"1-5"\h\zA)0 B)2 C)3 D)4.判斷char型變量cl是否為小寫字母的正確表達(dá)式是(D)〇A) 匕'<=cl<=fz' B)(cl>=a)&&(cl<=z)C) (匕’>=cl)||(fz'<=cl) D)(cl>=匕')&&(cl<=,z').以下不正確的if語句形式是(C)〇if(x>y&&x!=y);if(x==y)x+=y;if(x!=y)scanf(w%d",&x)elsescanf(w%d",&y)if(x<y){x++;y++;}.請閱讀以下程序:main()inta=5,b=0,c=O;if(a=b+c)printf(w***\nw);elseprintf("$$$\n”);)以上程序(D)0A)有語法錯不能通過編譯B)可以通過編譯但不能通過連接〇輸出?**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)。main(){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=-l;printf(“%d\n”,a);)A)1 B)10 C)-1 D)值不確定.以下程序的輸出結(jié)果是(B)〇main(){intx=2,y=-l,z=2;if(x<y)if(y<0)z=0;elsez+=l;printf("%d\n",z);)A)3 B)2 C)1 D)0.為了避免在嵌套的條件語句if-else中產(chǎn)生二義性,C語言規(guī)定:else子句總是與(B)配對。
A)縮排位置相同的A)縮排位置相同的if0其之后最近的ifB)其之前最近的ifD)同一行上的14,若有條件表達(dá)式(exp)?a++:b-,則以下表達(dá)式中能完全等價(jià)于表達(dá)式(exp)的是(B)。A)(exp==O) B)(exp!=0) 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.語句:printf(“%d",(a=2)&&(b=-2))j的輸出結(jié)果是(D)oA)無輸出 B)結(jié)果不確定 C)-1D)1.當(dāng)c的值不為〇時(shí),在下列選項(xiàng)中能正確將c的值賦給變量a、b的是(C)〇A)c=b=a; B)(a=c)||(b=c); C)(a=c)&&(b=c);D)(a=c)&&(b=c);D)a=c=b;.能正確表示a和b同時(shí)為正或同時(shí)為負(fù)的表達(dá)式是(D)〇B)A)(a>=0||b>=0)&&(a<0||b<0)B)(a>=0&&b>=0)&&(aく0&&bく。)C)(a+b>0)&&(a+b<=0)D)a*b>0C)(a+b>0)&&(a+b<=0)D)a*b>0.能正確表示邏輯關(guān)系:“a210或aSO”的C語言表達(dá)式是(C)〇A)a>=10ora<=0 B)a>=0|a<=10C)a>=10&&a<=0 D)a>=10||a<=0.有如下程序段inta=14,b=15,x;charc='A';x=(a&&b)&&(c<tB,);執(zhí)行該程序段后,x的值為(D)。A)ture B)false C)0 D)1.以下程序的輸出結(jié)果是(C)〇A)-l1 B)01 C)10 D)00main(){inta=-l,b=l,k;if((++a<O)&&!(b—<=0))
printf("%d%d\n”,a,b);elseprintf(,,%d%d\n”,b,a);).與y=(x>O?l:x〈O?-l:O);的功能相同的if語句是(A)〇A)if(x>0)y=l;elseif(x<0)y=-l;A)if(x>0)y=l;elseif(x<0)y=-l;elsey=0;y=-lif(x)if(x>0)y=l;elseif(x==O)y=O;elsey=-l;23.閱讀以下程序:main(){intx;scanf&x);if(x—<5)printf("%d",B)if(x)if(x>O)y=l;elseif(x<O)y=-lelsey=O;y=O;if(x>=0)if(x>0)y=l;elsey="l;elseprintfx++);)程序運(yùn)行后,如果從鍵盤上輸人5,則輸出結(jié)果是(BA)3 B)4 C)5 D)6.假定w、x、y、z、m均為int型變量,有如下程序段:w=l;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=0.0;elseif(x<10.0)y=l.0/x;elsey=l.0;printf("%f\n”,y);)該程序的輸出結(jié)果是(C)。A)0. B)0. 〇0. D)1..有如下程序main(){inta=2,b=-l,c=2;if(a)if(b<0)c=0;elsec++;
printf("%d\n",c);)該程序的輸出結(jié)果是(A)。A)0 B)1 C)2 D)3.若有定義:floatw;inta,b;則合法的switch語句是(D)〇A)switch(w) Bswitch(x){case1.0:printf("*\n"); {case1,2:printf;case2.0:printf("**\n");printf;)C)switch(b){case1:printf('*\n");printf(“仙;default:printf("\n");printf("**\n");case1+2:printf(“林、n);printf("\n");case3:)D)switch(a+b);{case1:case2:default:)28.若a、b、cl、c2、x、case3:)D)switch(a+b);{case1:case2:default:是(D)。A)swich(a+b);{case1:y=a+b;break;case0:y=a-b;break;1:y=a+b;break;)3:y=b-a;break;C)switcha{case cl{default:y=a*b;break;casec2:x=a*d;break;4:x=a+b;break;default:x=a+b;10:case11:y=a-b;break;)29.有如下程序main(){intx=l,a=0,b=0;switch(x){case0:b++;a++;switch(a*a+b*b)
{case3:casecase)D)switch(a-b):y=a-b; break;case3:casecase)a++;b++;)printf("a=%d,b=%d\nw,a,b);)該程序的輸出結(jié)果是(A)〇A)a=2,b=l B)a=l,b=l C)a=l,b=0D)a=2,b=230.當(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:42D)maxis:4031.若輸入B,以下程序的輸出結(jié)果是(C)〇main(){chargrade;scanf(“%c”,&grade);switch(grade)(case'A':printf(">=85.”);case'B':case'C':printf(">=60.w;case,D':printf("く6〇.”);default:printf("error.w;))A)>=85. B)>=60. C)>=60.<60.error.D)error.32.當(dāng)執(zhí)行以下語句后的輸出結(jié)果是(D)〇intx=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)33.執(zhí)行x=5>l+2&&2||2*4<4-!〇后,x的值為(C)〇A)-1 B)0 〇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=O,x=l,y=l,z=O B)c=5,x=O,y=l,z=OC)c=l,x=O,y=O,z=l D)c=10,x=2,y=O,z=l.下列運(yùn)算符中,不屬于關(guān)系運(yùn)算符的是(D)〇A)< B)>= C)== D)!.以下程序的輸出結(jié)果是(B)。main(){inta,b,d=241;a=d/100%9;b=(-1)&&(-!);printf(a%d,%d\nw,a,b);)A)6,1 B)2,1 C)6,0 D)2,0.設(shè)ch是char型變量,其值為A,且有下面的表達(dá)式:ch=(ch>=tA,&&ch<=tZ,)?(ch+32):ch上面表達(dá)式的值是(B)。A)A B)a C)Z D)z.若k是int型變量,且有下面的程序片段:k=-3;if(k<=0)printf(“####")else上面程序片段的輸出結(jié)果是(D)〇A)#閣# B)&&&& 〇####&&&& D)有語法錯誤,無輸出結(jié)果.請讀程序:main()(floatx,y;scanf(M%r,&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(u%f\n,,,y);}若運(yùn)行時(shí)從鍵盤上輸入2.0<CR>(<CR>表示回車),則上面程序的輸出結(jié)果是(C)〇A)0. B)0. C)0. D)1..請讀程序:main()(intx=l,y=0,a=0,b=O;switch(x)(switch(y){case0:a++;break;casel:b++;break;)a++;b++;break;printf(ua=%d,b=%d\n^^,a,b);上面程序的輸出結(jié)果是(A)〇A)a=2,b=l B)a=l,b=l C)a=l,b=0D)a=2,b=241.為表示關(guān)系x》yez,應(yīng)使用C語言表達(dá)式(A)〇A)(x>=y)&&(y>=z) B)(x>=y)AND(y>=z)C)(x>=y>=z) D)(x>=y)||(y>=z)42.若要求在if后ー對圓括號中表示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)printf(u%dM,x);elseprintf(M%d\nM,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);printf(4<%d%d%d\nM,k,a,b);}A)104 B)103 C)003 D)004.設(shè)a為整型變量,不能正確表達(dá)數(shù)學(xué)關(guān)系10<a<15的C語言表達(dá)式是(A)。A)10<a<15 B)a==ll||a==12||a==13||a==14C)a>10&&a<15 D)!(a<=10)&&!(a>=15).假定所有變量均已正確說明,下列程序段運(yùn)行后x的值是(B)〇a=b=c=0;x=35;if(!a)x—;elseif(b);if(c)x=3;elsex=4;A)34B)4C)35D)3A)34B)4C)35D)3.設(shè)a=l,b=2,c=3,d=4?則表達(dá)式a<b?a:c>d?a:d的結(jié)果是(D)〇A)4 B)3 C)2 D)1.當(dāng)a=l,b=3,c=5,d=4時(shí),執(zhí)行下面一段程序后,x的值為(B)〇if(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)649,在執(zhí)行以下程序時(shí),為了使輸出結(jié)果為t=4,則給a和b輸入的值應(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;priiUf("t=%d\n”,t);)A)a>b B)a<b<0 C)0<a<b D)0>a>b50.設(shè)intx=l,y=l;表達(dá)式(!x||y-)的值是(B)〇A)0 B)! 〇2 D)-151.若變量a、i已正確定義,且i已正確賦值,合法的語句是(B)〇A)a==l B)++i; C)a=a++=5;D)a=int(i);52.以下程序的輸出結(jié)果為(C)omain()(inta=2,b=-l,c=2;if(a<b)if(b<0)c=0;elsec++;printf(u%d\n”,c);A)0 B)1 C)2 D)3二填空題.若從鍵盤輸入58,則以下程序輸出的結(jié)果是main(){inta;scanf("%d",&a);if(a>50)printf("%d",a);if(a>40)printf(a%dn,a);if(a>30)printf("%d”,a);).下面程序的運(yùn)行結(jié)果是 ー1〇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)行輸出。請?zhí)羁?。main()intx,y,z,c;scanf("%d%d%d”,&x,&y,&z);TOC\o"1-5"\h\zif( xくy ) { c=x; x=y; y=c;}if(xくz ) { c=x; x=z; z=c;}if( y<z ) { c=y; y=z; z=c;}printf(a%d %d %d”,x,y, z);).如果運(yùn)行時(shí)輸入字符Q,則下面程序的運(yùn)行結(jié)果是Q〇main(){charch;scanf("%c”,&ch);ch=(ch>='A'&&ch<=2)?(ch+32):ch;ch=(ch>=taf&&ch<=,z')?(ch-32):ch;printf("%c”,ch);.若x為int類型,請以最簡單的形式寫出與邏輯表達(dá)式!x等價(jià)的C語言關(guān)系表達(dá)式 x==0〇.表示“整數(shù)x的絕對值大于5”時(shí)值為“真”的C語言表達(dá)式是x>5||x<-5〇.下列程序段的輸出結(jié)果是passwam〇intn=*c';switch(n++){default:printf(,,error,,);break;case*a*:case'A':case'b':case,B,:printf(,,good,,);break;case*c':case'C':printf(Hpass");case*d*:case,D,:printf(,,warnn);}.以下程序?qū)蓚€(gè)數(shù)從小到大輸出。main()(floata,b,t;scanf(”%f%f” .&a,&b);if(a>b){t=a;a=b:b=t;printf(w%5.2f,%5.2f\nM,a,b);.若輸入8642,以下程序的輸出結(jié)果為 (請輸入ー個(gè)〇?99999之間的整數(shù):)place=4,每位數(shù)字為:8,6,4,2 〇main()longintnum;intgw,sw,bw,qw,ww,place;printf(“請輸入ー個(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=l;printf(uplace=%d,w,place);printf(“每位數(shù)字為:");ww=num/10000;qw=(num-ww*10000)/1000;bw=(num-ww*10000-qw*1000)/100;sw=(num-ww*10000-qw*1000-bw*100)/10;gw=num-ww*10000-qw*1000-bw*100-sw*10;switch(place){case5:printf(w%d,%d,%d,%d,%d”,ww,qw,bw,sw,gw);break;case4:printf(u%d,%d,%d,%d”,qw,bw,sw,gw);break;case3:printf(u%d,%d,%d”,bw,sw,gw);break;case2:printf(u%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年是閏年。XnM,year);elseprintf("%d年不是閏年。Xn”,year);.用以下程序把大寫字母A~Z轉(zhuǎn)換成對應(yīng)的小寫字母a?z,其他字符不轉(zhuǎn)換。main(){charch;scanf("%c”,&ch);ch=(ch>='A'&&ch<='Z')?ch+32:ch;printf("char=%c\n",ch);).條件"20<x<30或x<-100w的C語言表達(dá)式是x>20&&x<30リx4100 0.若已知a=10,b=20,則表達(dá)式!a<b的值為1〇14,若已定義inta=25,b=14,c=19;以下三目運(yùn)算符(?:)所構(gòu)成的語句的執(zhí)行結(jié)果是ー ###a=26,b=13,c=19 〇a++<=25&&b—<=2&&c++?printf(<t***a=%d,b=%d,c=%d\nM,a,b,c):printf(u###a=%d,b=%d,c=%d\n”,a,b,c);15.以下兩條if語句可合并成一條if語句為if(a<=b)(x=l;printf("####x=%d\n”,x);}else{y=2;printf(M****v=%d\n'\y);}〇if(a<=b)x=l;elsey=2;if(a>b)print式“****y=%d\n”,y);elseprintf("####x=%d\nM,x);第六章循環(huán)控制ー 單項(xiàng)選擇題.下面程序段的運(yùn)行結(jié)果是(C)〇intn=0;while(n++<=2);printf("刎",n);A)2 B)3 C)4 D)有語法錯.設(shè)有程序段:t=0;while(printf("*w)){t++;if(t<3)break;ド面描述正確的是(D)。A)其中循環(huán)控制表達(dá)式與〇等價(jià)B)其中循環(huán)控制表達(dá)式與‘。’等價(jià)0其中循環(huán)控制表達(dá)式是不合法的D)以上說法都不對.下面程序的功能是將從鍵盤輸入的ー對數(shù),由小到大排序輸出,當(dāng)輸入ー對相等數(shù)時(shí)結(jié)束循環(huán),請選擇填空(B)。ftinclude<stdio.h>main(){inta,b,t;scanf("%d%d”,&a,&b);while(){if(a>b){t=a;a=b;b=t;}printf("%d,%d\n”,a,b);scanf("%d%d”,&a,&b);))A)!a=b B)a!=b C)a==b D)a=b.C語言中,while和do-while循環(huán)的主要區(qū)別是(A)〇A)do-while的循環(huán)體至少無條件執(zhí)行一次while的循環(huán)控制條件比do-while的循環(huán)控制條件更嚴(yán)格do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)do-while的循環(huán)體不能是復(fù)合語句.對以下程序段描述正確的是(C)〇x=-l;do{x=x*x;}while(!x);A)是死循環(huán) B)循環(huán)執(zhí)行二次0循環(huán)執(zhí)行ー次 D)有語法錯誤.以下描述中正確的是(〇)〇do-while循環(huán)中循環(huán)體內(nèi)不能使用復(fù)合語句do-while循環(huán)由do開始,用while結(jié)束,在while(表達(dá)式)后面不能寫分號C)在do-while循環(huán)體中,一定要有能使while后面表達(dá)式的值變?yōu)榱悖ā凹佟保┑牟僮鱀)do-while循環(huán)中,根據(jù)情況可以省略while/Z此題四個(gè)選項(xiàng)均有錯誤。/Z對于A,當(dāng)循環(huán)體不止ー個(gè)語句時(shí),可以用花括號包含成一個(gè)復(fù)合語句;〃對于B,while(表達(dá)式)后面必須寫分號;對于D,do-while是ー個(gè)整體,不可省略while;/Z對于C,可能是參考答案。但出題者忽略了特殊情況:利用恒假的判斷條件,故意使循〃環(huán)只執(zhí)行ー次。因此,循環(huán)體中可以不必有C選項(xiàng)所強(qiáng)調(diào)的操作。.若有如下語句intx=3;do{printf("%3d”,x-=2);}while(!(--x));則上面程序段(B)。A)輸出的是1 B)輸出的是1和一20輸出的是3和。 D)是死循環(huán).下面有關(guān)for循環(huán)的正確描述是(D)〇for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況for循環(huán)是先執(zhí)行循環(huán)的循環(huán)體語句,后判斷表達(dá)式C)在for循環(huán)中,不能用break語句跳出循環(huán)體D)for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號括起來9.對for(表達(dá)式1;;表達(dá)式3)可理解為(B)。A)for(表達(dá)式1;〇;表達(dá)式3) B)for(表達(dá)式1;1;表達(dá)式3)0for(表達(dá)式].;表達(dá)式].;表達(dá)式3) D)for(表達(dá)式1;表達(dá)式3;表達(dá)式3).若i為整型變量,則以下循環(huán)執(zhí)行次數(shù)是(B)〇for(i=2;i-0;)printf(a%dw,i--);A)無限次 B)0次 C)1次 D)2次.以下不是無限循環(huán)的語句為(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-1);printf(“x=%d,y=%d”,x,y);A)x=27,y=27 B)x=12,y=13 C)x=15,y=14D)x=y=27.執(zhí)行語句for(i=l;i++<4;);后變量i的值是(C)。A)3 B)4 C)5 D)不定.有一堆零件(100到200之間),如果分成4個(gè)零件ー組的若干組,則多2個(gè)零件;若分成フ個(gè)零件ー組,則多3個(gè)零件;若分成9個(gè)零件ー組,則多5個(gè)零件。下面程序是求這堆零件總數(shù),請選擇填空(D)〇ftinclude<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!=0D)i%9==515.下面程序的功能是把316表示為兩個(gè)加數(shù)的和,使兩個(gè)加數(shù)分別能被13和11整除,請選擇填空(B)〇ftinclude<stdio.h>main(){inti=O,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==O D)k%ll==016.下面程序的運(yùn)行結(jié)果是(D)。^include<stdio.h>main(){inty=10;do{y一;}while(—y);printf(a%d\nw,y-);}A)-1 B)1 C)8 D)017.若運(yùn)行以下程序時(shí),從鍵盤輸入ADescriptor<CR>(<CR>表示回車),則下面程序的運(yùn)行結(jié)果是(D)〇ftinclude<stdio.h>main(){charc;intvO=l,vl=O,v2=0;do{switch(c=getchar()){case'a':case'A':case'e':case'E’:case'i':case'P:case、0ノ:case、0ノ:case'u,:case'Uz:vl+=l;default:vO+=l;v2+=l;)}while(c!=z\nr);printf(''vO=%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)〇ftinclude<stdio.h>main(){inta=l,b=10;do{b-=a;a++;}while(b--<0);printf(“a=%d,b=%d\nw,a,b);}A)a=3,b=ll B)a=2,b=8C)a=l,b=-l D)a=4,b=9.以下程序的輸出結(jié)果是(B)〇main(){intnum=0;while(num<=2)
{num++;printf("%d\n",num);})TOC\o"1-5"\h\zA)1 B)1 C)12 23.設(shè)有程序段intk=10;while(k=0)k=k-l;則下面描述中正確的是(C)〇A)while循環(huán)執(zhí)行!0次0循環(huán)體語句ー次也不執(zhí)行次.設(shè)有以下程序段intx=0,s=0;while(!x!=0)s+=++x;printf('%d”,s);則(B)oA)運(yùn)行程序段后輸出O后輸出1D)1B)循環(huán)是無限循環(huán)D)循環(huán)體語句執(zhí)行ーD)1B)循環(huán)是無限循環(huán)D)循環(huán)體語句執(zhí)行ーB)運(yùn)行程序段D)程序段執(zhí)行.語句while(!E);中的表達(dá)式!E等價(jià)于(A)〇A)E==0 B)E!=l C)E!=0 D)E==l.下面程序段的運(yùn)行結(jié)果是(.下面程序段的運(yùn)行結(jié)果是(a=l;b=2;c=2;while(a<b<c){t=a;a=b;b=t;c-printf("%d,%d,%d”,a,b,c);A)1,2,0 B)2,1,02,1,1.下面程序段的運(yùn)行結(jié)果是(x=y=O;while(x<15)y++,x+=++y;printf("%d,%dH,y,x);A)20,7 B)6,128,20.以下程序段的執(zhí)行結(jié)果是(inta,y;a=10;y=O;A)1,;)01,2,1 D)D)〇C)20,8 D)B)odo
do{a+=2;y+=a;printf("a=%dy=%d\nu,a,y);if(y>20)break;}while(a=14);if(y>20)break;}while(a=14);A)a=12y=12a=14y=16a=16y=20a=18y=24a=12y=12a=14y=26B)a=12y=12a=16y=28a=12y=12a=14y=4426.t為int類型,進(jìn)人下面的循環(huán)之前,t的值為〇,則以下敘述中正確的是(B)。while(t=l)intk=O;A)循環(huán)控制表達(dá)式的值為A)循環(huán)控制表達(dá)式的值為0值為1C)循環(huán)控制表達(dá)式不合法27.有以下程序段B)循環(huán)控制表達(dá)式的D)以上說法都不對while(k=l)k++;while循環(huán)執(zhí)行的次數(shù)是(A)。A)無限次 B)有語法錯,不能執(zhí)行C)一次也不執(zhí)行 D)執(zhí)行1次.以下程序執(zhí)行后sum的值是(C)〇main(){inti,sum;for(i=l;i<6;i++)sum+=i;printf("%d\n,',sum);)A)15 B)14 C)不確定 D)0.有以下程序段intx=3;do{printf(,,%d,,,x-=2);}while(!(-x));其輸出結(jié)果是(C)oA)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("%d,%d”,a,numl*num2/a);}A)4,24 B)3,24 C)5,25 D)4,25.以下程序的輸出結(jié)果是(A)〇#include<math.h>ttinclude<stdio.h>main(){ints=l;floatn=l,pi=0;doublet=l;while(fabs(t)>=2e-6)
{pi+=t;n+=2;s=-s;t=s/n;}pi*=4;printf(api=%.6f\nw,pi);)3. B)1.以下程序的輸出結(jié)果是(main(){inti
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 佛像合同范本
- 體系合同范本
- 卷閘門承攬合同范本
- 合同標(biāo)注正規(guī)合同范本寫
- 助貸合同范本
- 古樹防雷工程合同范本
- 傳媒公司宣傳合同范本
- 廚房轉(zhuǎn)讓合同范例
- 廚師勞動合同范例pdf
- 化工原理采購合同范本
- 深圳市一模+Z20名校聯(lián)盟+浙江名校協(xié)作體高三語文2月聯(lián)考作文題目解析及相關(guān)范文
- 油氣田開發(fā)專業(yè)危害因素辨識與風(fēng)險(xiǎn)防控
- DB37-T4824-2025 鄉(xiāng)鎮(zhèn)(街道)應(yīng)急物資配備指南
- 教育部人文社科 申請書
- 無菌手術(shù)臺鋪置的細(xì)節(jié)管理
- 《重大基礎(chǔ)設(shè)施項(xiàng)目涉及風(fēng)景名勝區(qū)選址論證報(bào)告編制技術(shù)規(guī)范》編制說明
- 議論文8(試題+審題+范文+點(diǎn)評+素材)-2025年高考語文寫作復(fù)習(xí)
- 2025-2030年(全新版)中國軟冰淇淋市場發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 2025新人教版英語七年級下單詞默寫表(小學(xué)部分)
- 2024年大慶醫(yī)學(xué)高等??茖W(xué)校高職單招語文歷年參考題庫含答案解析
- 2025江蘇蘇州高新區(qū)獅山商務(wù)創(chuàng)新區(qū)下屬國企業(yè)招聘9人高頻重點(diǎn)提升(共500題)附帶答案詳解
評論
0/150
提交評論