C語言復(fù)習(xí)要點(二)_第1頁
C語言復(fù)習(xí)要點(二)_第2頁
C語言復(fù)習(xí)要點(二)_第3頁
C語言復(fù)習(xí)要點(二)_第4頁
已閱讀5頁,還剩150頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C語言復(fù)習(xí)要點201I年6月本次考試有兩大題型:.選擇題30分(15道).操作題(編程題)2*35分,選擇題ー、程序結(jié)構(gòu)1以下敘述中正確的是 AA)C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方B)花括號〃{〃和〃}〃只能作為函數(shù)體的定界符0構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名D)分號是C語句之間的分隔符,不是語句的一部分答案分析:花括號可以作為復(fù)合語句的定界符,所以B答案不正確;main函數(shù)是C程序的主函數(shù),函數(shù)名固定為main,不可由用戶命名;每個語句和數(shù)據(jù)定義的最后必須有一個分號,分號是C語句的必要組成部分。2下列敘述中正確的是 DC語言編譯時不檢查語法C語言的子程序有過程和函數(shù)兩種0C語言的函數(shù)可以嵌套定義D)C語言所有函數(shù)都是外部函數(shù)答案分析:C語言相對其它高級語言而言,放寬了語法檢查,因此程序設(shè)計自由度大,但并不是不檢查語法。C語言程序是由函數(shù)構(gòu)成的。(3)函數(shù)不能嵌套定義,其定義部分相對獨立。(4)C語言本身沒有定義內(nèi)部函數(shù),所有函數(shù)都是外部函數(shù),主要有:系統(tǒng)提供的庫函數(shù)和用戶自己編制設(shè)計的函數(shù)。3以下敘述中正確的是 AA)構(gòu)成C程序的基本單位是函數(shù)B)可以在ー個函數(shù)中定義另ー個函數(shù)0main。函數(shù)必須放在其它函數(shù)之前D)所有被調(diào)用的函數(shù)一定要在調(diào)用之前進行定義答案分析:C程序是由函數(shù)構(gòu)成的。一個函數(shù)由兩部分組成:函數(shù)的首部和函數(shù)體。ー個C程序總是從main函數(shù)開始執(zhí)行的,而不論main函數(shù)在整個程序中的位置如何(main函數(shù)可以放在程序最前頭,也可以放在程序最后,或在ー些函數(shù)之前,在另ー些函數(shù)之后)。C程序書寫出形式自由,一行內(nèi)可以寫幾個語句,ー個語句可以分寫在幾行上。每個語句和數(shù)據(jù)定義的最后必須有一個分號。⑸C程序本身沒有輸入輸出語句。輸入和輸出的操作是由庫函數(shù)scanf和printf等函數(shù)來完成的。(6)可以用/* */對C程序中的任何部分作注釋。TOC\o"1-5"\h\zー個C語言程序是由 BA)一個主程序和若干子程序組成 B)函數(shù)組成0若干過程組成 D)若干子程序組成答案分析:程序是由函數(shù)構(gòu)成的。ー個C源程序至少包含ー個main函數(shù),也可以包含ー個main函數(shù)和若干個其他函數(shù)。因此,函數(shù)是C程序的基本單位。被調(diào)用的函數(shù)可以是系統(tǒng)提供的庫函數(shù),也可以是用戶根據(jù)需要自己編制

設(shè)計的函數(shù)。數(shù)。C語言規(guī)定,在一個源程序中,main函數(shù)的位置B)必須在系統(tǒng)調(diào)用的D)必須在最后A)必須在最開始庫函數(shù)的后面B)必須在系統(tǒng)調(diào)用的D)必須在最后6以下敘述不正確的是 D一個C源程序可由一個或多個函數(shù)組成ー個C源程序必須包含ー個main函數(shù)0C程序的基本組成單位是函數(shù)D)在C程序中,注釋說明只能位于一條語句的后面答案分析:可以用/*……*/對C程序中的任何部分作注釋。C語言對源程序編譯時不對注釋語句進行編譯。7以下敘述正確的是 CA)在C程序中,main函數(shù)必須位于程序的最前面B)C程序的每行中只能寫一條語句0C語言本身沒有輸入輸出語句D)在對ー個C程序進行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤8ー個C程序的執(zhí)行是從 AA)本程序的main函數(shù)開始,到main函數(shù)結(jié)束B)本程序文件的第一個函數(shù)開始,到本程序文件的最后ー個函數(shù)結(jié)束0本程序的main函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束D)本程序文件的第一個函數(shù)開始,到本程序main函數(shù)結(jié)束9在ー個C程序中 Bmain函數(shù)必須出現(xiàn)在所有函數(shù)之前main函數(shù)可以在任何地方出現(xiàn)0main函數(shù)必須出現(xiàn)在所有函數(shù)之后D)main函數(shù)必須出現(xiàn)在固定位置10以下敘述中正確的是 CC語言比其他語言高級C語言可以不用編譯就能被計算機識別執(zhí)行0C語言以接近英語國家的自然語言和數(shù)學(xué)語言作為語言的表達形式D)C語言出現(xiàn)的最晚,具有其他語言的一切優(yōu)點二、標識符命名、數(shù)據(jù)類型、運算符和表達式如算術(shù)運算符、邏輯運算符、關(guān)系比較運算符、條件運算符、逗號運算符等。還包括邏輯運算的短路情況,尤其要注意++和一的不同用法。以及運算符所允許的類型1設(shè)變量a是整型,f是實型,i是雙精度型,則表達式10+'a'+i*f值的數(shù)據(jù)類型為 CA)int B)float C)doubleD)不確定答案分析:不同類型的數(shù)據(jù)進行表達式運算時,系統(tǒng)會自動將較小范圍(即優(yōu)先級低)的數(shù)據(jù)類型轉(zhuǎn)換為較大范圍的數(shù)據(jù)類型,運算結(jié)果取較大范圍的數(shù)據(jù)類型。各類型比較:char<int<float<double2已知字母A的ASCII碼為十進制數(shù)65,且c2為字符型,則執(zhí)行語句c2二'A'+'6'」3';后,c2中的值為AA)DB)68 0不確定的值D)C答案分析:字符數(shù)據(jù)可以用ASCH碼方式運算,執(zhí)行語句c2='A'+‘6'」3’可以表示為c2=65+'6'-'3'J結(jié)果為c2=68J顯然,字母D的ASCH碼為十進制數(shù)68,所以答案為(A).3若有以下定義,則能使值為3的表達式是Dintk=7,x=12;A)x%=(k%=5) B)x%=(k-k%5)C)x%=k-k%5 D)(x%=k)-(k%=5)答案分析:x%=(k%=5)—>x%=2—>0x%=(k-k%5)—>x%=5—>2x%=k-k%5—>x%=5—>2(x%=k)-(k%=5)—>5-2—>34設(shè)有說明:charw;intx;floaty;doublez;則表達式w*x+z-y值的數(shù)據(jù)類型為 DA)floatB)char C)int D)double5設(shè)C語言中,ー個int型數(shù)據(jù)在內(nèi)存中占2個字節(jié),則unsignedint型數(shù)據(jù)的取值范圍為CA)0—255B)0—32767C)0—65535D)0—21474836476表達式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為 CA)intB)float C)doubleD)不確定7若有條件表達式(exp)?a++:b--,則以下表達式中能完全等價于表達式(exp)的是 BA)(exp-0) B)(exp!=0)(expニニ1) D)(exp!=l)8在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是DA)補碼 B)反碼C)原碼ASCH碼答案分析:⑴將一個字符常量放到ー個字符變量中,實際不并不是把該字符本身放到內(nèi)存單元中去,而是將該字符的相應(yīng)的ASCH碼放到存儲單元中。(2)既然在內(nèi)存中,字符數(shù)據(jù)以ASCH碼存儲,它的存儲形式就與整數(shù)的存儲形式類似。C語言使字符型數(shù)據(jù)和整型數(shù)據(jù)庫之間可以通用。一個字符數(shù)據(jù)庫既可以以字符形式輸出,也可以以整數(shù)形式輸出。9若運行時給變量x輸入12,則以下程序的運行結(jié)果是Amain(){intx,y;scanf(〃%d”,&x);y=x>12?x+10:x-12;printf(,,%d\n,/,y);}A)0 B)22C)12 D)10答案分析:本題中,表達式x>12的結(jié)果是不成立的,所以執(zhí)行的語句是x-12,因為運行時給變量x輸入12,所以最終結(jié)果應(yīng)該是〇,即A為正確答案。10sizeof(float)是BA)ー個雙精度型表達式 B)ー個整型表達式D)ー個不合D)ー個不合11若有定義:inta=7;floatx=2.5,y=4.7;則表達式x+a%3*(int)(x+y)%2/4的值是AA)2.500000B)2.750000C)3.500000D)0.00000012若有說明語句:charc=''72';則變量cAA)包含1個字符 B)包含2個字符0包含3個字符 D)說明不合法,c的值不確定答案分析:C語言的字符型常量中,允許用ー種特殊形式的字符常量,就是以ー個〃、〃開頭的字符序列.其中〃'ddd〃表示用ASCH碼(ハ進制數(shù))表示一個字符,本例中的charc=''72'即表示將ASCH碼值為72的字符賦給變量c13在C語言中,int>char和short三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù) DA)由用用戶自己定義 B)均為2個字節(jié)D)由所用機0D)由所用機器的機器字長決定14若以下變量均是整型,且num=sum=7;則計算表達式sUM=num++,sUM++,++num后sum的值為ATOC\o"1-5"\h\zA)7 B)8C)9 D)1015設(shè)intx=l,y=l;表達式(!x||y—)的值是 BA)0 B)1 C)2 D)-116設(shè)變量n為float類型,m為int類型,則以下能實現(xiàn)將n中的數(shù)值保留小數(shù)點后兩位,第三位進行四舍五入運算的表達式是 BA)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0C)n=n*100+0.5/100.0 D)n=(n/100+0.5)*100.0答案分析:B答案中,先求出n*100+0.5的值,n的第三位小數(shù)四舍五入,后面的小數(shù)忽略變成整數(shù)m,將m/100.0的值賦給n時,先將m的值轉(zhuǎn)換成浮點數(shù),接著求出表達式的值賦給n。1?能正確表示邏輯關(guān)系:〃aNIO或aWO〃的C語言表達式是 DA)a>=10oraく二0 B)a>=0|a<=10C)a>=10&&aく二〇 D)a>=10IIaくニ〇18下列變量定義中合法的是 AA)short_a=l-.leT; B)doubleb=l+5e2.5;C)longdo=OxfdaL; D)float2_and=l-e-3;答案分析:語言規(guī)定規(guī)定標識符只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符必須為字母或下劃線。19下列程序執(zhí)行后的輸出結(jié)果是(小數(shù)點后只寫一位)Amain(){doubled;floatf;ling1;inti;i=f二l=d=20/3;printfC%d%ld%f%f\n”,i,1,f,d);666.06.0 B)666.76.7666.06.7 D)666.76.0答案分析:20/3是兩個整數(shù)相除,結(jié)果也是整數(shù)6。然后將6賦給d,將d的值賦給1,將將1的值賦給f,將f的值賦給i。20下列程序的輸出結(jié)果是 Cmain(){doubled=3.2;intx,y;x=l.2;y=(x+3.8)/5.0;printf(z,%d\n〃,d*y);}A)3B)3.2 C)0D)3.07答案分析:本題中先將x轉(zhuǎn)換為浮點型再與3.8相加,得到的結(jié)果與5.〇相除。最后將得到的結(jié)果去掉小數(shù)位化成整型數(shù)據(jù)賦給y。21設(shè)有intx=ll;則表達式(x++*1/3)的值是AB)4C)11A)B)4C)1112答案分析:++i,一i(在使用i之前,先使i的值加(減)1)i++,i--(在使用i之后,使i的值加(減)1)22有如下程序段 Dinta=14,b=15,x;charc='A';x=(a&&b)&&(cぐB');執(zhí)行該程序段后,x的值為A)ture B)false C)0D)1答案分析:C語言提供ー種特殊的運算符——逗號運算符。用它將兩個表達式連接起來的表達式稱為逗號表達式,又稱為“順序求值運算符”。逗號表達式的一般形式為表達式1,表達成2 表達成n逗號表達式的求解過程是:先求解表達式1,再求表達式2......再求表達式n〇整個逗號表達式的值是表達式n值。23設(shè)以下變量均為int類型,則值不等于7的表達式是cTOC\o"1-5"\h\zA)(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)24設(shè)有說明語句:chara二''72';則變量aAA)包含1個字符 B)包含2個字符 0包含3個字符 D)說明不合法25以下符合C語言語法的賦值表達式是 BA)d=9+e+f=d+9 B)d=9+e,f=d+9C)d=9+e,e++,d+9 D)d=9+e++=d+726有如下程序 Dmain(){inty=3,x=3,z=l;printf(,z%d%d\n〃,(++x,y++),z+2);運行該程序的輸出結(jié)果是A)34 B)42 043 D)332T若有以下程序段,intcl=l,c2=2,c3;c3=l.0/c2*cl;則執(zhí)行后,c3中的值是 AA)0B)0.5 C)1 D)228若變量a、i已正確定義,且i已正確賦值,合法的語句是BA)a==l B)++i; C)a=a++=5;D)a=int(i);29若已定義x和y為double類型,則表達式x=l,y=x+3/2的值是 CA)1B)2 02.0D)2.530若變量已正確定義并賦值,下面符合C語言語法的表達式是 BA)a:=b+lB)a=b=c+2 C)int18.5%3D)a=a+7=c+b3!下列敘述中正確的是C語言中既有邏輯類型也有集合類型C語言中沒有邏輯類型但有集合類型0C語言中有邏輯類型但沒有集合類型D)C語言中既沒有邏輯類型也沒有集合類型32有如下函數(shù)調(diào)用語句func(reel,rec2+rec3,(rec4,rec5));該函數(shù)調(diào)用語句中,含有的實參個數(shù)是 AA)3B)4C)5 D)有語法錯33有以下程序main(){inti=10,j=l;printf(〃%d,%d\n”,i--,++j);}執(zhí)行后輸出結(jié)果是 BA)9,2B)10,2C)9,1D)10,134在C語言中,要求運算數(shù)必須是整型的運算符是DA)/B)++〇!二 D)%答案分析:(A)的〃/〃為除法運算符,其運算對象可以是整數(shù)或?qū)崝?shù)等類型;(B)的++表示自增運算,作用是使變量的值增1;(0的!二為關(guān)系運算符,表示兩數(shù)互不相等;(D)的〃%〃為取余運算,要求前后兩數(shù)必須是整型數(shù),作用是取兩數(shù)相除后的余數(shù).35下列四個選項中,均是C語言關(guān)鍵字的選項是BA)autoenum include B)switchtypedefcontinueC)signedunion scanf D)ifstructtype36下列四組選項中,均不是C語言關(guān)鍵字的選項是AA)defineIFtype B)getccharprintfC)includescanfcase D)whilegopow3T假設(shè)所有變量均為整型,則表達式TOC\o"1-5"\h\z(a=2,b=5,b++,a+b)的值是 B7B)8 〇6 D)238若x,i,j和k都是int型變量,則計算下面表達式后,x的值為 Cx=(i=4,j=16,k=32);A)4 B)16C)32D)5239C語言中的標識符只能由字母,數(shù)字和下劃線三種字符組成,且第一個字符 CA)必須為字母 B)必須為下劃線0必須為字母或下劃線 D)可以是字母,數(shù)字和下劃線中任一字符40有以下程序main(){chara,b,c,*d;a二,ヽ';b二,\xbc,;c二''Oxab';d二〃、017〃;print(,,%c%c%c\n,,Ja,b,c,*d);編譯時出現(xiàn)錯誤,以下敘述中正確的是 DA)程序中只有a二''';語句不正確b='\xbc';語句不正確0d=〃、0127〃;語句不正確D)a二''';和。二''Oxab';語句都不正確答案分析:在C語言中,字符型數(shù)據(jù)可以轉(zhuǎn)義字符的方式表示,如''n'表示回車換行,''t'表示到下ー個制表位,‘'''表示一個斜杠字符,‘'''表示單引號字符,''Obbb'表示八進制數(shù)的字符(其中bbb應(yīng)是一個ハ進制數(shù)),,\xbb,表示十六進制數(shù)的字符(其中bb應(yīng)是ー個十六進制數(shù))。41下面四個選項中,均是合法整型常量的選項是AA)160-Oxffff 011 B)-OxcdfOlaOxe-01986,012 0668 D)-0x48a2e5Ox答案分析:C語言里整常數(shù)可用以下三種形式表示:(1)十進制整數(shù)。如160,-45,〇〇⑵ハ進制整數(shù)。以0開頭的數(shù)是ハ進制數(shù)。如011,-01,012o⑶十六進制整數(shù)。以O(shè)x開頭的數(shù)是16進制數(shù)。如-Oxffff,Oxcdf,Oxe,-0x48a。42有以下程序main(){inti=l,j=l,k=2;if((j++IIk++)&&i++)printf(〃%d,%d,%d\n〃,i,j,k);1執(zhí)行后輸出結(jié)果是 CA)1,1,2B)2,2,1C)2,2,2D)2,2,3答案分析:本題中,j的值為1,為真,則(j++l|k++)的值必須真,所以系統(tǒng)將不再對k++進行運算,而&&運算則要求判斷兩邊表達式的值,所以i++也執(zhí)行了,最后結(jié)果為:C。43有以下程序段intm=0,n=0;charc-a;scanf(〃%d%c%d〃,&m,&c,&n);printf(〃%d,%c,%d\n〃,m,c,n);若從鍵盤上輸入:10A10〈回車》,則輸出結(jié)果是:AA)10,A,10B)10,a,10C)10,a,010,A,044若有以下程序段intm=0xabc,n=0xabc;m-=n;printf(〃%X\n〃,m);執(zhí)行后輸出結(jié)果是 C0X0B)0x0C)0D)OXABC45下列關(guān)于單目運算符++、ー的敘述中正確的是DA)它們的運算對象可以是任何變量和常量B)它們的運算對象可以是char型變量和int型變量,但不能是float型變量0它們的運算對象可以是int型變量,但不能是double型變量和float型變量D)它們的運算對象可以是char型變量、int型變量和float型變量46若有以下程序段(n所賦的是ハ進制數(shù))intm=32767,n=032767;printf(〃%d,%o/n,m,n);執(zhí)行后輸出結(jié)果是 AA)32767,32767 B)32767,032767C)32767,77777 D)32767,07777747下列關(guān)于C語言用戶標識符的敘述中正確的是BA)用戶標識符中可以出現(xiàn)在下劃線和中劃線(減號)B)用戶標識符中不可以出現(xiàn)中劃線,但可以出現(xiàn)下劃線0用戶標識符中可以出現(xiàn)下劃線,但不可以放在用戶標識符的開頭D)用戶標識符中可以出現(xiàn)在下劃線和數(shù)字,它們都可以放在用戶標識符的開頭48在C語言中(以16位PC機為例),5種基本數(shù)據(jù)類型的存儲空間長度的排列順序為 AA)char<int<longint<=float<doublechar=int<longint<=float<doublechar<int<longint=float=doublechar=int=longint<=float<double49下面四個選項中,均是不正確的ハ進制數(shù)或十六進TOC\o"1-5"\h\z制數(shù)的選項是 DA)0160x8f 018 B)Oabc017 OxaC)010-0x11 0x16 D)0al27ff -12350以下正確的敘述是 DA)在C程序中,每行中只能寫一條語句B)若a是實型變量,C程序中允許賦值a=10,因此實型變量中允許存放整型數(shù)0在C程序中,無論是整數(shù)還是實數(shù),都能被準確無誤地表示D)在C程序中,%是只能用于整數(shù)運算的運算符51以下不正確的敘述是 DA)在C程序中,逗號運算符的優(yōu)先級最低B)在C程序中,APH和aph是兩個不同的變量0若a和b類型相同,在計算了賦值表達式a二b后b中的值將放入a中,而b中的值不變D)當從鍵盤輸入數(shù)據(jù)時,對于整型變量只能輸入整型數(shù)值,對于實型變量只能輸入實型數(shù)值52已知各變量的類型如下:inti=8,k,a,b;unsignedlongw=5;doublex=l.42,y=5.2;則以下符合C語言語法的表達式是 AA)a+=(b=4)*(a=3) B)a=a*3+2C)x%(-3) D)y=float(i)答案分析:由于a沒有賦初值,所以B答案不符合C語言語法。C答案中的x是double型數(shù)據(jù),不能參加取余運算,%運算符只適用于整型數(shù)。D答案正確寫法應(yīng)為:尸(float)i;表示強制類型轉(zhuǎn)換。53已知各變量的類型說明如下:intk,a,b;unsignedlongw=5;doublex=l.42;則以下不符合C語言語法的表達式是A)x%(-3) B)w+二一2C)k=(a=2,b=3,a+b) D)a+二a一=(b=4)*(a=3)答案分析:%模運算符,或稱求余運算符,%兩側(cè)均應(yīng)為整型數(shù)據(jù)。A答案中的x是浮點型(double)數(shù)據(jù)。54下面不正確的字符串常量是 AA)'abc'B)〃12'12〃C)〃〇〃D)〃〃55下面四個選項中,均是不合法的用戶標識符的選項是CA)AP_0do B)floatlaO_AC)b-agotoint D)_123tempint56下面四個選項中,均是正確的ハ進制數(shù)或十六進制數(shù)的選項是 CA)-100x8f-011 B)Oabc-017OxcC)0010-OxllOxfl D)0al2-0x123-Oxa57C語言中運算對象必須是整型的運算符是 AA)%=B)/ C)=D)〈ニ58下面正確的字符常量是CA)〃c〃 B)' 'C)'W'D)''答案分析:A答案的定界符錯誤,不是雙引號,應(yīng)是單引號。B答案’\\''是種錯誤的格式。D答案’’是個空串。59下面四個選項中,均是不合法的轉(zhuǎn)義字符的選項是BA)''\\''\xf' B)'\1011'’ヽ‘'\a'C)'\011''\f''ヽ}' D)'\abc''\101''xlf'60下面四個選項中,均是合法轉(zhuǎn)義字符的選項是AA)'\'' '\\' '\n' B)へ,\017,,、〃,C)'\018''\f',xab, D)'\\0',\1015'xlf'61下面四個選項中,均是合法的浮點數(shù)的選項是BA)+le+l5e-9.403e2 B)-6012e-4 -8e5C)123e 1.2e-4+2e-l D)-e3 .8e-4 5.e-0答案分析:指數(shù)形式。如123e4或123E4都代表123*10‘。但注意字母e(或E)之前必須有數(shù)字,且e后面指數(shù)必須為整數(shù)。如e3,2e4.2,.e5,飛3都不是合法的指數(shù)形式。62下面四個選項中,均是不合法的浮點數(shù)的選項是BA)160. 0.12 e3 B)1232e4.2.e5C)-18123e4 0.0 D)-e3.234Ie363下面四個選項中,均是不合法的整型常量的選項是DTOC\o"1-5"\h\zA)—Ofl-Oxffff0011 B)-Oxcdf01712,456C)-018 999 5e2 D)-0x48eg-068 03f64下面四個選項中,均是正確的數(shù)值常量或字符常量的選項是 DA)0.0 Of 8.9e'&' B)〃a〃3.9e-2.5lei'、〃’C)'3' 011OxffOO0a D)+001Oxabcd2e250.65假定w、x、y、z、m均為int型變量,有如下程序段:w=l;x=2;y=3;z=4;m=(w<x)?w:x; (m<y)?m:y; (m<z)?m:z;則該程序運行后,m的值是it DA)4 B)3 C)2 D)2TOC\o"1-5"\h\z66以下有4組用戶標識符,其中合法的ー組是 CA)ForB)4d C)f2_G3D)WORD-sub DO IFvoidCase Size abcdefine6T在16位C編譯系統(tǒng)上,若定義longa;,則能給a賦40000的正確語句是 DA)a=20000+20000; B)a=4000*10;C)a=30000+10000; D)a=4000L*10L;68若有說明語句:inta,b,c,*d二&c;,則能正確從鍵盤讀入三個整數(shù)分別賦給變量a、b、c的語句是AA)scanf(〃%d%d%d〃,&a,&b,d); B)scanf("%d%d%d〃,&a,&b,&d);C)scanf(,,%d%d%d,,Ja,b,d); D)scanf("%d%d%d〃,a,b,*d);69以下選項中不屬于C語言的類型的是 DB)unsignedlongA)signedshortimtintB)unsignedlongC)unsignedint D)longshortTOC\o"1-5"\h\z70以下程序段的輸出結(jié)果是 Cinta=1234;printf(〃%2d\n〃,a);A)12 B)34 C)1234 D)提示出錯、無結(jié)果71若變量a是int類型,并執(zhí)行了語句:aゴA'+1.6;,則正確的敘述是 DA)a的值是字符C B)a的值是浮點型0不允許字符型和浮點型相加 D)a的值是字符A的ASCII值加上1。72若有定義:inta=8,b=5,C;,執(zhí)行語句C=a/b+0.4;后,C的值為 BA)1.4 B)1 C)2.0D)273以下程序的輸出結(jié)果是 Amain(){inta=4,b=5,c二0,d;d=!a&&!bII!c;printf(〃%d\n〃,d);}TOC\o"1-5"\h\zA)1B)0C)非0的數(shù) D)74下列程序執(zhí)行后的輸出結(jié)果是 Amain(){intx二'f';printf(,z%c\n",'A'+(x,a'+1));}A)GB)H C)ID)J75以下所列的C語言常量中,錯誤的是 BA)OxFF B)1.2e0.5C)2LD)'\72'76設(shè)a、b、C、d、m、n均為int型變量,且a=5、b=6>c=7、d=8、m=2、n=2,則邏輯表達式(m=a〉b)&&(n二c〉d)運算后,n的值位為CA)0B)1 C)2D)377以下程序的輸出結(jié)果是 Dmain(){inta=3;printf(〃%d\n〃,(a+a一=a*a));}D)-12A)-6B)12C)D)-12TOC\o"1-5"\h\z78x、y、z被定義為int型變量,若從鍵盤給x、y、z輸入數(shù)據(jù),正確的輸入語句是 BA)INPUTx、y、z; B)scanf("%d%d%d〃,&x,&y,&z);scanf(,,%d%d%d,/,x,y,z); D)read(〃%d%d%d〃,&x,&y,&z);79設(shè)正x、y均為整型變量,且x=10y=3,則以下語句的輸出結(jié)果是 Dprintf(〃%d,%d\n〃,x一,一y);A)10,3 B)9.3 C)9.210.280以下合法的賦值語句是BA)x=y=100 B)d--; C)x+y;D)c=int(a+b);81假定x和y為double型,則表達式x=2,y=x+3/2的值是DA)3.500000B)3 C)2.000000D)3.000000TOC\o"1-5"\h\z82以下選項中合法的字符常量是 BA)〃B〃 B)'\010'C)68 D)D83以下選項中,非法的字符常量是 CA)''t' B)'\17‘〇〃n〃 D)'\xaa'84有以下程序#include<stdio.h>main(){printf(〃%d\n〃,NULL);}程序運行后的輸出結(jié)果是 AA)0B)1C)-1D)NULL沒定義,出錯85設(shè)變量x為float型且已賦值,則以下語句中能將x中的數(shù)值保留到小數(shù)點后兩位,并將第三位四舍五入的是Cx=x*100+0.5/100.0;x=(x*100+0.5)/100.0;x=(int)(x*100+0.5)/100.0;x=(x/100+0.5)*100.0;86設(shè)有如下程序段:intx=2002,y=2003;printf(〃%d\n,(x,y));則以下敘述中正確的是 DA)輸出語句中格式說明符的個數(shù)少于輸出項的個數(shù),不能正確輸出B)運行時產(chǎn)生出錯信息0輸出值為2002D)輸出值為20038t有定義語句:intx,y;若要通過scanf(〃%d,%d〃,&x,&y);語句使變量x得到數(shù)值11,變量y得到數(shù)值12,下面四組輸入形式中,錯誤的是AA)1112〈回車〉 B)11,12〈回車》C)11,12〈回車〉 D)11,く回車》12〈回車)88有以下程序main(){inta=l,b=2,m=0,n=0,k;k=(n=b>a)||(m=a+b);printf(〃%d,%d\n〃,k,m);}程序運行后的輸出結(jié)果是 CA)0,0B)0,1〇!,0D)1,189以下選項中非法的表達式是 DA)〇〈二xく100 B)i=j==OC)(char)(65+3) D)x+l=x+l90有以下程序main(){inta;charc=10;floatf=100.0;doublex;a二f/二c*二(x=6.5);printf(〃%d%d%3.If%3.lf\n〃,a,c,f,x);程序運行后的輸出結(jié)果是 BA)16516.5 B)1651.56.5C)1651.06.5D)2651.56.591以下不能定義為用戶標識符的是DA)scanf B)VoidC)_3com_D)int92以下程序的輸出結(jié)果是 Cmain(){inta=5,b=4,c=6,d;printf(〃%d\n〃,d=a>b?(a>c?a:c):(b));}A)5B)4 C)6 D)不確定93已定義c為字符型變量,則下列語句中正確的是CA)c=’97'; B)c=〃97〃; C)-97;D)〃〃94以下程序的輸出結(jié)果是 Amain(){charc-z;printf(〃%c”,c-25);}A)a B)Z C)z-25 D)y95已定義ch為字符型變量,以下賦值語句中錯誤的是AA)ch二‘、'; B)ch=62+3;C)ch=NULL;D)ch='\xaa';96若變量c為char類型,能正確判斷出c為小寫字母的表達式是 DA)'a'く二cくニ'z' B)(c>二'a')||(c〈ニ'z')C)('a'<=c)and('z'>二c)D)(c>二'a')&&(cくニ'z')97(22)若變量已正確說明為float類型,要通過語句scanf(,z%f%f%f〃,&a,&b,&c);給a賦于10.0,b賦予22.0,c賦予33.0,不正確的輸入形式是: BA)10〈回車》 B)10.0,22.0,33.0〈回車〉22〈回車)33く回車〉10.〇<回車》 D)1022く回車》22.033.0〈回車〉 33〈回車)98設(shè)x、y、t均為int型變量,則執(zhí)行語句:x=y=3;t=++x||++y;后,y的值為CA)不定值 B)4 03D)199若a為int類型,且其值為3,則執(zhí)行完表達式a+二a一=a*a后,a的值是 CA)-3 B)9 〇-12 D)6100以下變量x.、y、z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子x+y+z的C語言表達式是AA)x/y*z B)x*(l/(y*z))C)x/y*l/zx/y/z101下列選項中,合法的C語言關(guān)鍵字是 DA)VAR B)cher C)integerD)default102以下選項中可作為C語言合法整數(shù)的是 CA)10110BB)0386C)OXffaD)x2a2103設(shè)有定義:longx=-123456L;,則以下能夠正確輸出變量x值的語句是BA)printf("x=%d\n”,x); B)printf("x=%ld\n”,x);C)printf("x=%8dL\n”,x); D)printf("x二%LD\n”,x);104下列程序執(zhí)行后的輸出結(jié)果是Cmain(){charx二OxFFFF;printf(,z%d、n〃,x--);}A)-32767B)FFFEC)-1 D)-32768105語句printf(〃a\bre\'hi\'y\\\bou\n〃);的輸出結(jié)果是c(說明:‘'b'是退格符)TOC\o"1-5"\h\zA)a\bre\5hi\,y\\\bou B)a\bre\5hi\'y'bouC)re'hi'you D)abre'hi'y'bou106執(zhí)行下列程序時輸入:123く空格〉456く空格〉789く回車〉,輸出結(jié)果是 Dmain(){chars[100];intc,i;scanf(〃%c”,&c);scanf(〃%d〃,&i);scanfs);printf(z,%c,%d,%s'n,c,i,s);A)123,456,789 B)1,456,7891,23,456,789 D)1,23,456107以下選項中合法的實型常數(shù)是CA)5E2.0B)E-3C).2E0D)1.3E108以下選項中合法的用戶標識符是 BA)long B)_2Test C)3DmaxA.dat109已知大寫字母A的ASCH碼值是65,小寫字母a的ASCH碼是97,則用ハ進制表示的字符常量''101’是ATOC\o"1-5"\h\zA)字符A B)字符a 〇字符e D)非法的常量110以下非法的賦值語句是 CA)n=(i=2,++i);B)j++;C)++(i+l);D)x=j>0;111設(shè)a和b均為double型變量,且a=5.5、b=2.5,則表達式(int)a+b/b的值是 DA)6.500000B)6〇5.500000D)6.000000112已知i、j、k為int型變量,若從鍵盤輸入:1,2,3<回車》,使i的值為1、j的值為2、k的值為3,以下選項中正確的輸入語句是Cscanf(<<%2d%2d%2d,\&i,&j,&k);scanf(Rd%d%d”,&i,&j,&k);scanf("%d,%d,%d",&i,&j,&k);scanf("i二%d,j二%d,k二%d”,&i,&j,&k);113與數(shù)學(xué)式子3*x、/(2x-1)對應(yīng)的C語言表達式是CA)3*xn(2*xT) B)3*x**n(2*xT)3*pow(x,n)*(1/(2*xT))D)3*pow(n,x)/(2*xT)114在C語言中,合法的長整型常數(shù)是 AA)OLB)4962710 C)324562&216D115若有以下程序: Cmain(){intk二2,i二2,m;m二(k+二i?二k);printf(44%d,%d\n,\m,i);執(zhí)行后的輸出結(jié)果是A)8,6B)8,3C)6,4D)7,4116已有定義:intx=3,y=4,z=5;,則表達式!(x+y)+zT&&y+z/2的值是 DA)6 B)0 C)2D)1117以下選項中,與k=n++完全等價的表達式是 AA)k=n,n=n+1 B)n=n+1,k=n C)k=++nD)k+=n+l三、程序基本結(jié)構(gòu)三種循環(huán)結(jié)構(gòu)的基本結(jié)構(gòu)和語法;對循環(huán)次數(shù)的分析;以及對循環(huán)結(jié)束后循環(huán)控制變量的值的分析參考答案:1B2A3B4B5D6D7B8C9B10A11A12D13C14B15A16C17A18C19C20D21A22C23C24C25A26B27D28D29C30A31B32D33A34B35D36D37D38D39C40B41C42D43D44B45C46C47B48D49C50B

51D 52 B58D 59 A61A 62 A51D 52 B58D 59 A61A 62 A68D 69 C71B 72 D78A 79 C81B 82 C88D53C60B63B70C73A80A83D54B 55 B64C 65 C74D 75 B84B 85 C56B 57 B66B 67 B76C 77 C86B 87 B!若i為整型變量,則以下循環(huán)執(zhí)行次數(shù)是for(i=2;i-0;)printf(〃%d〃,i一);A)無限次B)〇次 C)1次D)2次2有如下程序mainO{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=l;i<3;i++)for(j=0;j<i;j++)s+=a[i][j]printf(〃%d\n,s);該程序的輸出結(jié)果是A)18 B)19 〇20 D)213若有如下語句intx=3;do{printf(〃%d\n〃,x-=2);}while(!(--x));則上面程序段A)輸出的是1 B)輸出的是1和一20輸出的是3和0 D)是死循環(huán)4下面程序的功能是把316表示為兩個加數(shù)的和,使兩個加數(shù)分別能被13和H整除,請選擇填空。#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/11B)k%llC)k/ll=0D)k%ll==05下面程序的運行結(jié)果是ftinclude<stdio.h>main(){inty=10;do{y--;}while(一y);printf(〃刎、n,y一);}A)-1 B)1 C)8D)06若運行以下程序時,從鍵盤輸入ADescriptorくCR>(くCR>表示回車),則下面程序的運行チ口不疋#include<stdio.h>main(){charc;intvO=l,vl=0,v2=0;do(switch(c=getchar()){case'a:case'A':case'e':case'E':casei:case'I':case’〇':case'0':case'u':case'U':v1+=1;default:v0+=l;v2+=l;}while(c!='\n');printf(〃v0=%d,vl=%d,v2=%d\n〃,vO,vl,v2);}A)vO二7,vl二4,v2二7 B)vO二8,vl二4,v2二8vO二11,vl二4,v2二11 D)vO二12,vl二4,v2二127下面程序的運行結(jié)果是ftinclude<stdio.h>main(){inta二1,b二10;do{b一二a;a++;}while(b--<0);printf(〃a二%d,b二%d\n,a,b);}A)a二3,b二11 B)a二2,b二8 C)a二l,b二一1a二4,b二98設(shè)有程序段intk=10;while(k=0)k=k-l;則下面描述中正確的是A)while循環(huán)執(zhí)行10次限循環(huán)〇循環(huán)體語句ー次也不執(zhí)行句執(zhí)行ー次B)循環(huán)是無D)循環(huán)體語9設(shè)有以下程序段intx=0,s二〇;while(!x!=0)s+=++x;printf(〃%d〃,s);則 A)運行程序段后輸出OB)運行程序段后輸出10程序段中的控制表達式是非法的 D)程序段執(zhí)行無限次10語句while(!E);中的表達式!E等價于A)E=0B)E!=lC)E!=011下面程序段的運行結(jié)果是a=1;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,0B)2,1,0 01,2,1D)2,1,112下面程序段的運行結(jié)果是x二yニ〇;while(x<15)y++,x+=++y;printf(〃%d,%d”,y,x);A)20,7B)6,12C)20,8D)8,2013以下程序段xニー1;do{x=x*x;}while(!x);B)循環(huán)執(zhí)行二次D)B)循環(huán)執(zhí)行二次D)有語法錯誤0循環(huán)執(zhí)行ー次14對for(表達式1;;表達式3)可理解為A)for(表達式1;〇;表達式3) B)for(表達式1;1;表達式3)C)for(表達式1;表達式1;表達式3) D)for(表達式1;表達式3;表達式3)15C語言中while和do-while循環(huán)的主要區(qū)別是A)do-while的循環(huán)體至少無條件執(zhí)行一次while的循環(huán)控制條件比do-while的循環(huán)控制條件更嚴格do-while允許從外部轉(zhuǎn)到循環(huán)體內(nèi)do-while的循環(huán)體不能是復(fù)合語句16以下for循環(huán)的執(zhí)行次數(shù)是for(x=0,y=0;(y=123)&&(x<4);x++);A)是無限循環(huán) B)循環(huán)次數(shù)不定 04次D)3次17以下不是無限循環(huán)的語句為for(y=0,x=l;x>++y;x=i++)i=x;for(;;x++=i);while(1){x++;}for(i=10;;i--)sum+=i;18下面程序段的運行結(jié)果是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二13x=15,y=14 D)x二y二2719執(zhí)行語句for(i=l;i++<4;);后變量i的值是A)3B)4C)5D)不定20有一堆零件(100到200之間),如果分成4個零件ー組的若干組,則多2個零件;若分成7個零件ー組,則多3個零件;若分成9個零件ー組,則多5個零件。下面程序是求這堆零件總數(shù),請選擇填空。#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=5B)i%9!=5C)(i-5)%9!ニ〇i%9=521有如下程序mainO{intx=l,a=0,b二〇;switch(x){case0:b++;a++a++;b++}printf(〃a=%d,b二%d\n,a,b);}該程序的輸出結(jié)果是A)a=2,b=l B)a二l,b二1 C)a二l,b二〇D)a二2,b=222有如下程序mainO

{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é)果是A)0.000000B)0.250000D)1.00000023有如下程序main(){inta=2,b=-l,c=2;if(a<b)if(b<0)c=0;elsec++;printf(〃%d\n”,c);}該程序的輸出結(jié)果是C)0.500000D)3A)0B)1C)224有如下程序C)0.500000D)3main(){inti,sum;for(i=l;i<=3;sum++)sum+=i;printf(〃%d\n〃,sum);I該程序的執(zhí)行結(jié)果是6B)3C)死循環(huán)D)025C語言中用于結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是A)順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)if、switch>breakfor>whi1e>do-whileif>for>continue26有如下程序mainO{intn=9;while(n>6){n--;printf(〃%d〃,n);}}該程序段的輸出結(jié)果是A)987B)876〇8765 D)987627有如下程序main(){intn[5]={0,0,0},i,k=2;for(i二〇;iくk;i++)n[i]=n[i]+l;printf(〃%d\n〃,n[k]);}該程序的輸出結(jié)果是A)不確定的值 B)2 01D)028下面有關(guān)for循環(huán)的正確描述是for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況for循環(huán)是先執(zhí)行循環(huán)循環(huán)體語句,后判斷表達式0在for循環(huán)中,不能用break語句跳出循環(huán)體D)for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用花括號括起來29以下關(guān)于運算符優(yōu)先順序的描述中正確的是A)關(guān)系運算符く算術(shù)運算符〈賦值運算符〈邏輯運算符B)邏輯運算符〈關(guān)系運算符く算術(shù)運算符〈賦值運算符0賦值運算符(邏輯運算符〈關(guān)系運算符く算術(shù)運算符D)算術(shù)運算符〈關(guān)系運算符(賦值運算符〈邏輯運算符30有以下程序main(){inti;for(i=0;i<3;i++)switch(i){case1:printf(〃%d",i);case2:printf(〃%d〃,i);default:printf(〃%d〃,i);}}執(zhí)行后輸出結(jié)果是A)011122B)012C)012020D)12031有以下程序main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf(〃刎、n”,d);elseif((cT>=d)=1)printf("%d\n〃,d+1);elseprintf("%d\n〃,d+2)執(zhí)行后輸出結(jié)果是A)2B)3C)4D)編譯時有錯,無結(jié)果32有以下程序main(){intp[7]={ll,13,14,15,16,17,18},i=0,k=0;while(iく7&&p[i]%2){k=k+p[i];i++;}printf("%d\n",k);}執(zhí)行后輸出結(jié)果是A)58B)56C)45D)2433有以下程序main(){inti二0,s=0;do{if(i%2){i++;continue;}i++;s+=i;}while(i<7);printf(〃%d\n〃,s);)執(zhí)行后輸出結(jié)果是A)16B)12C)28D)2134printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列,如果字符串長度大于5,則輸出按方式A)從左起輸出該字符串,右補空格B)按原字符長從左向右全部輸出0右對齊輸出該字串,左補空格D)輸出錯誤信息35已有定義inta=-2;和輸出語句printf(〃%81x〃,a);以下正確的敘述是A)整型變量的輸出形式只有%d一種B)刎是格式符的ー種,它可以適用于任何ー種類型的數(shù)據(jù)0へ是格式符的ー種,其變量的值按十六進制輸出,但%81x是錯誤的D)燒lx不是錯誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度36以下C程序正確的運行結(jié)果是main(){longy=-43456;printf(〃y=%-81d\n,y);printf(/,y=%-081d\n/,,y);printf(〃y=%081d\n〃,y);printf(〃y=%+81d\n〃,y);}y=-43456(換行)y二一43456(換行)y二一0043456(換行)y二一43456y二一43456 (換行)y二一43456 (換行)y二一0043456(換行)y=+-434560y=-43456(換行)y二一43456 (換行)y二一0043456(換行)y二-43456D)y二-43456(換行)y二-〇043456(換行)y二00043456(換行)y二+4345637putchar函數(shù)可以向終端輸出ー個

A)整型變量表達式值 B)實型變量值0字符串 D)字符或字符型變量值38以下程序的輸出結(jié)果是main()printf(〃、n*sl二%15s*,chinabeijing,?);printf("\n*s2=%-15s*”,〃chi〃);A)*sl=A)*sl=chinabeijing*(換行)*s2二**chi**sl二chinabeijing*(換行)*s2二chi**sl二?chinabeijing*(換行)*s2二chi**sl二chinabeijing*(換行)*s2二chi*39下面程序段的運行結(jié)果是intnニ〇;while(n++<=2);printfn);A)2B)3C)4D)有語法錯40設(shè)有程序段:t=0;while(printf(〃*〃)){t++;if(t<3)break;I下面描述正確的是A)其中循環(huán)控制表達式與0等價B)其中循環(huán)控制表達式與’O’等價0其中循環(huán)控制表達式是不合法的D)以上說法都不對41以下描述中正確的是A)由于do-while循環(huán)中循環(huán)體語句只能是一條可執(zhí)行語句,所以循環(huán)體內(nèi)不能使用復(fù)合語句B)do-while循環(huán)由do開始,用while結(jié)束,在while(表達式)后面不能寫分號C)在do-while循環(huán)體中,一定要有能使while后面表達式的值變?yōu)榱悖ā凹佟保┑牟僮鱀)do-while循環(huán)中,根據(jù)情況可以省略while42邏輯運算符兩側(cè)運算對象的數(shù)據(jù)類型A)只能是0或1B)只能是0或非〇正數(shù)0只能是整型或字符型數(shù)據(jù)D)可以是任何類型的數(shù)據(jù)43以下函數(shù)返回a所指數(shù)組中最小的值所在的下標值fun(int*a,intn){inti,j=0,p;P二j;for(i=j;i<n;i++)if(a[i]<a[p]);return(p);}在下劃線處應(yīng)填入的是A)i=p B)a[p]=a[i]C)p=jD)p=i44下列運算符中優(yōu)先級最高的是A)<B)+〇&&D)!二45已知x=43,ch='A',y=0;則表達式(x>=y&&chぐB,&&!y)的值是A)0B)語法錯〇1D)“假”46若希望當A的值為奇數(shù)時,表達式的值為“真”,A的值為偶數(shù)時,表達式的值為“假”,則以下不能滿足要求的表達式是A)A%2==1 B)!(A%2=0)C)!(A%2) D)A%247設(shè)有:inta=l,b=2,c=3,d=4,m=2,n=2;執(zhí)行(m二a〉b)&&(n二c〉d)后n的值是A)1B)2C)3D)448判斷char型變量cl是否為小寫字母的正確表達式是A)'a'く=clくニ'z' B)(cl>=a)&&(cl<=z)C)('a'>=cl)II('z'<=cl)D)(cl>=,a')&&(clくニ'z')49以下不正確的if語句形式是if(x>y&&x!二y);if(x==y)x+=y;if(x!二y)scanf(〃%d〃,&x)elsescanf&y);

if(x<y){x++;y++;}50已知intx=10,y=20,z=30;以下語句執(zhí)行后x,y,z的值是if(x>y)z=x;x=y;y=z;A)x=10,y=20,z=30C)x=20,y=30,z=10A)x=10,y=20,z=30C)x=20,y=30,z=10B)x=20,y=30,z=30D)x=20,y=30,z=2051請閱讀以下程序:main()inta=5,b=0,c=0;if(a=b+c)printfC***\n〃);elseprintf("$$$\n〃);以上程序A)有語法錯不能通過編譯B)可以通過編譯但不能通過連接0輸出?**D)輸出$$$52當a=1,b=3,c=5,d=4時,執(zhí)行完下面一段程序后x的值是if(a<b)if(c<d)x=l;elseif(a<c)if(b<d)x=2;elsex=3;elsex=6;elsex=7;A)1B)2C)3 D)653以下程序的輸出結(jié)果是main(){inta=100,x=10,y=20,okl=5,ok2ニ〇;if(x<y)if(y!=10)if(!okl)a=l;elseif(ok2)a=10;a=-l;printf(〃%d\n〃,a);A)1B)0C)-1D)值不確定54以下程序的輸出結(jié)果是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)055為了避免在嵌套的條件語句if-else中產(chǎn)生二義性,C語言規(guī)定:else子句總是與配對A)縮排位置相同的if B)其之前最近的if0其之后最近的if D)同一行上的if56下面程序的功能是將從鍵盤輸入的ー對數(shù),由小到大排序輸出,當輸入ー對相等數(shù)時結(jié)束循環(huán),請選擇填空#include<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二b57閱讀以下程序:main(){intx;scanf(〃%d〃,&x);if(x一<5)printf(〃%d〃'x);elseprintf(%d〃'x++);程序運行后,如果從鍵盤上輸人5,則輸出結(jié)果是A)3B)4 〇5 D)658有以下程序段intn=0,p;do{scanf&p);n++;}while(p!=12345&&n<3);此處do—while循環(huán)的結(jié)束條件是P的值不等于12345并且n的值小于3P的值等于12345并且n的值大于等于30P的值不等于12345或者n的值小于3D)P的值等于12345或者n的值大于等于359有以下程序main(){inta=15,b=21,m=0;switch(a%3){case0:m++;break;case1:m++;switch(b%2){default:m++;case0:m++;break;

printf(嘅d\n”,m);)程序運行后的輸出結(jié)果是A)1 B)2 〇360以下程序的輸出結(jié)果是#include<stdio.h>main(){inti=0,a=0;while(i<20){for(;;){if((i%10)-0)break;elseiーー;}i+=ll;a+=i;)printh(〃%d\n,a);D)4D)11A)21B)32C)3361D)4D)11main(){inta二〇,i;for(i=;i<5;i++){switch(i){case0:case3:a+=2;case1:case2:a+=3;default:a+=5;))printf[%d\n〃,a);}A)31 B)13 C)10 D)2062有以下程序段intk=0while(k=l)k++;while循環(huán)執(zhí)行的次數(shù)是A)無限次B)有語法錯,不能執(zhí)行C)一次也不執(zhí)行 D)執(zhí)行1次

63有如下程序mainO{intx=23;do{printf(〃%d〃,x--);}while(!x);}該程序的執(zhí)行結(jié)果是A)321B)23 0不輸出任何內(nèi)容D)陷入死循環(huán)64有定義語句:inta=l,b=2,c=3,x;,則以下選項中各程序段執(zhí)行后,x的值不為3的是if(c<a)x=l;if(c<a)x=l;elseif(b<a)x=2;elsex=3;C)if(a<3)x=3;if(a<2)x=2;if(a<l)x=l;if(a<3)x=3;elseif(a<2)x=2;elsex=l;D)if(a<b)x=b;if(b<c)x=c;if(c<a)x=a;65有以下程序段intx=3do{printf(〃%d〃,x-=2);}while(!(--x));其輸出結(jié)果是A)1B)30 C)1-2 D)死循環(huán)66t為int類型,進人下面的循環(huán)之前,t的值為〇while(t=l)則以下敘述中正確的是A)循環(huán)控制表達式的值為0 B)循環(huán)控制表達式的值為10循環(huán)控制表達式不合法 D)以上說法都不對67以下程序的輸出結(jié)果是main(){intnum=0;while(num<=2){num++;printf(,/%d\n,\num);A)1B)1C)1D)12 2368以下程序的輸出結(jié)果是main(){inta,b;for(a=l,b=l;a<=100;a++){if(b>=10)break;if(b%3==1){b+=3;continue;}}printf(〃%d\n,a);)A)101 B)6 C)5 D)469結(jié)構(gòu)化程序設(shè)計所規(guī)定的三種基本控制結(jié)構(gòu)是A)輸入、處理、輸岀 B)樹形、網(wǎng)形、環(huán)形0順序、選擇、循環(huán) D)主程序、子程序、函數(shù)70有如下程序main(){charch[2][5]={〃6937〃,〃8254〃},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>,\05;j+=2)s=10*s+p[i][j]-'0';printf(〃%d\n,s);該程序的輸出結(jié)果是A)69825B)63825 C)6385D)69382571以下程序的輸出結(jié)果是main(){inti,k,a[10],p[3];k=5;for(i=0;iく10;i++)a[i]=i;for(i二〇;iく3;i++)p[i]=a[i*(i+1)];for(i=0;iく3;i++)k+=p[i]*2;printf(,,%d\n,/,k);A)20B)21 C)22 D)2372以下程序中,while循環(huán)的循環(huán)次數(shù)是main(){inti=0;while(i<10){if(i<l)continue;if(1—5)break;i_|__.D)死循環(huán),A)1D)死循環(huán),不能確定次數(shù)73以下程序的執(zhí)行結(jié)果是main(){inti,j,m=0,n=0;for(i=0;i<2;i++)

for(j=0;j<2;j++)if(j>=i){m=l;n++;}printf(z,%d\n〃,n);}A)4B)2C)2 D)074(24)若74(24)若a、b、cl、c2、的switch語句是A)swich(a+b);{case1:y=a+b;break;case0:y二a~b;break;1:y=a+b;break;case3:y=b~a,break;}switcha{casecl:y=a-b;break{default:y=a*b;breakcasec2:x=a*d;break3:case4:x=a+b;breakdefault:x=a+b;10:case11:y=a-b;break;x、y均是整型變量,正確switch(a*a+b*b){case3;case}switch(a-b)casecase75(23)若執(zhí)行以下程序時從鍵盤上輸入9,則輸出結(jié)果是MainO{intn;scanf("%d",&n);if(n++<10)printf("%d\n〃,n);elseprintfl%d\n,n一);)A)11 B)10 C)9 D)876以下程序執(zhí)行后sum的值是min(){inti,sum;for(i=l;i<6;i++)sum+=i;printf(〃/d\n〃,sum);)A)15B)14C)不確定 D)077要求以下程序的功能是計算:s=1+1/2+1/3++1/10

main(){intn;floats;s=1.0;for(n=10;n>l;n--)s=s+l/n;printf(〃%6.4f\n〃,s);}程序運行后輸出結(jié)果錯誤,導(dǎo)致錯誤結(jié)果的程序行是A)s=l.0; B)for(n=10;n>l;n--)C)s=s+l/n; D)printf(〃%6.4f\n〃,s);78與y=(x>0?l:xく〇?-1:0);的功能相同的if語句是if(x>0)y=l;if(x>0)y=l;elseif(x<0)y=一1;elsey=0;C)y=-lif(x)if(x>0)y=l;elseif(x-0)y=0;elsey=-l;if(x)if(x>0)y=l;elseif(x<0)y=-l;D)y=0;if(x>=0)if(x>0)y=l;elsey=-l;79以下循環(huán)體的執(zhí)行次數(shù)是main(){inti,j;for(i=0,j=l;iく=j+1;i+=2,j--)printf(z,%d\n〃,i);}A)3B)2 C)1 D)080以下程序的功能是:按順序讀入10名學(xué)生4門課程的成績,計算出每位學(xué)生的平均分并輸出,程序如下:main(){intn,k;floatscore,sum,ave;sum=0.0;for(n=l;n<=10;n++){for(k=l;k<=4;k++){scanf("%f”,&score);sum+=score;}ave=sum/4.0;printf("N0%d:%f\n”,n,ave);}}上述程序運行后結(jié)果不正確,調(diào)試中發(fā)現(xiàn)有一條語句出現(xiàn)在程序中的位置不正確。這條語句是A)sum二〇.0; B)sum+=score;C)ave=sun/4.0; D)printf(t<NO%d:%f\n,,Jn,ave);8I下列程序的運行結(jié)果是#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二%d,b二%d82有一函數(shù),,以下程序段中不能根據(jù)x值正確計算出y值的是A)if(x>0)y二1; B)y=0;elseif(x-0)y=0; if(x>0)y二l;elsey二T; elseif(x<0)y二T;C)y=0; D)if(x>ニ0)

溫馨提示

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

評論

0/150

提交評論