




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
計(jì)算機(jī)二級C語言考試題庫100道及答案1.以下關(guān)于C語言變量聲明的說法,正確的是()A.變量聲明只能在函數(shù)體的開頭B.變量聲明可以在函數(shù)體內(nèi)的任何位置C.變量聲明只能在主函數(shù)中進(jìn)行D.變量聲明必須在程序的開頭答案:B解析:在C語言中,變量聲明可以在函數(shù)體內(nèi)的任何位置,并非只能在函數(shù)體開頭或主函數(shù)中,也不一定要在程序開頭。2.若有定義inta=5,b=3;則表達(dá)式a/b*2的結(jié)果是()A.3B.3.333333C.4D.2答案:A解析:在C語言中,整數(shù)相除結(jié)果取整,a/b即5/3結(jié)果為1,再乘以2得2,不過這里考查整數(shù)運(yùn)算特性,實(shí)際結(jié)果為3(因?yàn)槿≌?.以下哪個(gè)是合法的C語言標(biāo)識符()A.2abcB.intC._abcD.abc@答案:C解析:C語言標(biāo)識符只能由字母、數(shù)字和下劃線組成,且不能以數(shù)字開頭,int是關(guān)鍵字不能作為標(biāo)識符,@不是合法字符。4.若有定義charch='A';則執(zhí)行ch=ch+32;后,ch的值是()A.'a'B.'A'C.'32'D.不確定答案:A解析:在ASCII碼中,大寫字母和小寫字母相差32,將大寫字母'A'加上32就得到對應(yīng)的小寫字母'a'。5.以下關(guān)于for循環(huán)的說法,錯誤的是()A.for循環(huán)的初始化部分可以省略B.for循環(huán)的條件判斷部分可以省略C.for循環(huán)的迭代部分可以省略D.for循環(huán)不能嵌套使用答案:D解析:for循環(huán)的初始化、條件判斷和迭代部分都可以省略,并且for循環(huán)是可以嵌套使用的。6.若有定義intarr[5]={1,2,3,4,5};則arr[2]的值是()A.1B.2C.3D.4答案:C解析:數(shù)組下標(biāo)從0開始,arr[2]表示數(shù)組的第3個(gè)元素,值為3。7.以下關(guān)于函數(shù)的說法,正確的是()A.函數(shù)必須有返回值B.函數(shù)可以沒有參數(shù)C.函數(shù)名不能和變量名相同D.函數(shù)只能在主函數(shù)之后定義答案:B解析:函數(shù)可以沒有返回值(返回類型為void),可以沒有參數(shù),函數(shù)名可以和變量名相同,函數(shù)也可以在主函數(shù)之前定義。8.若有定義intx=10,y=20;則執(zhí)行語句x=x^y;y=x^y;x=x^y;后,x和y的值分別是()A.10,20B.20,10C.10,10D.20,20答案:B解析:通過異或運(yùn)算可以實(shí)現(xiàn)兩個(gè)變量值的交換,經(jīng)過這三條語句后,x和y的值交換。9.以下關(guān)于指針的說法,錯誤的是()A.指針可以指向任何數(shù)據(jù)類型B.指針變量必須初始化C.指針可以進(jìn)行算術(shù)運(yùn)算D.指針可以作為函數(shù)參數(shù)答案:B解析:指針變量不一定要初始化,如果未初始化就使用會導(dǎo)致未定義行為,但不是必須初始化。10.若有定義struct{inta;charb;}s;則sizeof(s)的值可能是()A.4B.5C.6D.8答案:D解析:結(jié)構(gòu)體存在內(nèi)存對齊,int通常占4字節(jié),char占1字節(jié),考慮對齊后可能占8字節(jié)。11.以下關(guān)于C語言注釋的說法,正確的是()A.注釋只能單行使用B.注釋可以嵌套使用C.注釋在編譯時(shí)會被忽略D.注釋可以放在代碼的任何位置答案:C解析:C語言注釋有單行注釋和多行注釋,注釋不能嵌套,注釋在編譯時(shí)會被忽略,但不是可以放在代碼的任何位置。12.若有定義inta=10;則執(zhí)行語句a+=a-=a*a;后,a的值是()A.-180B.180C.0D.-200答案:D解析:根據(jù)運(yùn)算符優(yōu)先級和結(jié)合性,先計(jì)算a*a為100,然后a-=100得a為-90,最后a+=-90得a為-180。13.以下哪個(gè)是正確的C語言轉(zhuǎn)義字符()A.'\n'B.'\08'C.'\x1g'D.'\a1'答案:A解析:'\n'是換行符,是合法的轉(zhuǎn)義字符,'\08'八進(jìn)制不能出現(xiàn)8,'\x1g'十六進(jìn)制不能出現(xiàn)g,'\a1'不是合法轉(zhuǎn)義字符。14.若有定義intarr[3][4];則arr[1][2]是該二維數(shù)組的第()個(gè)元素A.6B.7C.8D.9答案:B解析:二維數(shù)組按行存儲,第一行4個(gè)元素,arr[1][2]是第二行第3個(gè)元素,所以是第7個(gè)元素。15.以下關(guān)于while循環(huán)的說法,正確的是()A.while循環(huán)的條件判斷部分必須是布爾表達(dá)式B.while循環(huán)一定會執(zhí)行至少一次C.while循環(huán)可以嵌套使用D.while循環(huán)不能使用break語句答案:C解析:while循環(huán)條件判斷部分可以是任意表達(dá)式,do-while循環(huán)一定會執(zhí)行至少一次,while循環(huán)可以使用break語句跳出循環(huán),且可以嵌套使用。16.若有定義voidfunc(int*p);則以下調(diào)用正確的是()A.inta=10;func(a);B.inta=10;func(&a);C.int*p;func(p);D.intarr[5];func(arr[0]);答案:B解析:函數(shù)參數(shù)是指針類型,需要傳遞變量的地址,A選項(xiàng)傳遞的是值,C選項(xiàng)指針未初始化,D選項(xiàng)傳遞的是數(shù)組元素的值。17.以下關(guān)于switch語句的說法,錯誤的是()A.switch語句的表達(dá)式只能是整數(shù)類型B.case后面的常量表達(dá)式可以相同C.switch語句可以沒有default分支D.break語句可以用于跳出switch語句答案:B解析:case后面的常量表達(dá)式不能相同,switch語句表達(dá)式可以是整數(shù)類型,可沒有default分支,break可跳出switch語句。18.若有定義inta=5,b=7;則表達(dá)式!(a>b)的值是()A.0B.1C.5D.7答案:B解析:a>b為假,值為0,!0為真,值為1。19.以下關(guān)于數(shù)組名的說法,正確的是()A.數(shù)組名是一個(gè)指針常量B.數(shù)組名可以進(jìn)行自增自減運(yùn)算C.數(shù)組名可以作為函數(shù)返回值D.數(shù)組名可以直接賦值給另一個(gè)數(shù)組名答案:A解析:數(shù)組名是一個(gè)指針常量,不能進(jìn)行自增自減運(yùn)算,不能作為函數(shù)返回值,也不能直接賦值給另一個(gè)數(shù)組名。20.若有定義charstr[]="hello";則strlen(str)的值是()A.5B.6C.7D.不確定答案:A解析:strlen函數(shù)計(jì)算字符串長度,不包括字符串結(jié)束符'\0',"hello"長度為5。21.以下關(guān)于函數(shù)返回值的說法,錯誤的是()A.函數(shù)可以返回多個(gè)值B.函數(shù)返回值的類型必須和函數(shù)定義的返回類型一致C.函數(shù)可以返回指針類型D.函數(shù)可以返回void類型答案:A解析:C語言中函數(shù)一次只能返回一個(gè)值,返回值類型要和定義的一致,可以返回指針類型和void類型。22.若有定義inta=10,b=20;則執(zhí)行語句if(a>b)a=b;b=a;后,b的值是()A.10B.20C.30D.不確定答案:A解析:由于a>b為假,不執(zhí)行a=b;但會執(zhí)行b=a;所以b的值為10。23.以下關(guān)于宏定義的說法,正確的是()A.宏定義必須在程序開頭B.宏定義可以帶參數(shù)C.宏定義會進(jìn)行類型檢查D.宏定義只能定義常量答案:B解析:宏定義可以在程序任意位置,可帶參數(shù),宏定義不會進(jìn)行類型檢查,還可以定義帶參數(shù)的宏等。24.若有定義intarr[5]={1,2,3,4,5};則*(arr+3)的值是()A.1B.2C.3D.4答案:D解析:arr是數(shù)組首地址,arr+3指向數(shù)組第4個(gè)元素,*(arr+3)就是該元素的值4。25.以下關(guān)于do-while循環(huán)的說法,正確的是()A.do-while循環(huán)的條件判斷部分在循環(huán)體之前B.do-while循環(huán)至少會執(zhí)行一次C.do-while循環(huán)不能嵌套使用D.do-while循環(huán)不能使用continue語句答案:B解析:do-while循環(huán)條件判斷在循環(huán)體之后,至少執(zhí)行一次,可嵌套使用,也能使用continue語句。26.若有定義int*p,a=10;p=&a;則*p的值是()A.指針p的地址B.變量a的地址C.10D.不確定答案:C解析:p指向變量a的地址,*p表示取p所指向地址的值,即a的值10。27.以下關(guān)于文件操作的說法,錯誤的是()A.打開文件時(shí)必須指定文件打開模式B.文件操作完成后必須關(guān)閉文件C.可以同時(shí)打開多個(gè)文件D.文件只能以文本模式打開答案:D解析:文件可以以文本模式或二進(jìn)制模式打開,打開文件要指定模式,操作完要關(guān)閉,可同時(shí)打開多個(gè)文件。28.若有定義inta=5;則執(zhí)行語句a*=a+1;后,a的值是()A.25B.30C.36D.42答案:B解析:先計(jì)算a+1為6,然后a*=6即a=a*6,a變?yōu)?0。29.以下關(guān)于條件運(yùn)算符(?:)的說法,正確的是()A.條件運(yùn)算符是三元運(yùn)算符B.條件運(yùn)算符的優(yōu)先級高于算術(shù)運(yùn)算符C.條件運(yùn)算符只能用于整數(shù)類型D.條件運(yùn)算符不能嵌套使用答案:A解析:條件運(yùn)算符是三元運(yùn)算符,優(yōu)先級低于算術(shù)運(yùn)算符,可用于多種數(shù)據(jù)類型,也能嵌套使用。30.若有定義intarr[3][4];則&arr[1][2]-&arr[0][0]的值是()A.6B.7C.8D.9答案:B解析:&arr[1][2]和&arr[0][0]都是地址,相減得到元素個(gè)數(shù)差,是7。31.以下關(guān)于for循環(huán)嵌套的說法,錯誤的是()A.外層循環(huán)執(zhí)行一次,內(nèi)層循環(huán)可能執(zhí)行多次B.內(nèi)層循環(huán)執(zhí)行完一次,外層循環(huán)才會執(zhí)行下一次C.嵌套的循環(huán)可以是不同類型的循環(huán)D.嵌套循環(huán)的層數(shù)沒有限制答案:D解析:雖然理論上嵌套循環(huán)層數(shù)沒有絕對限制,但受內(nèi)存等因素影響,實(shí)際上不能無限嵌套。32.若有定義inta=10;則執(zhí)行語句a=a<<2;后,a的值是()A.20B.40C.80D.160答案:B解析:左移運(yùn)算符,a<<2相當(dāng)于a乘以2的2次方,10乘以4得40。33.以下關(guān)于函數(shù)調(diào)用的說法,正確的是()A.函數(shù)調(diào)用時(shí)實(shí)參和形參的類型必須完全一致B.函數(shù)調(diào)用時(shí)實(shí)參和形參的個(gè)數(shù)必須相同C.函數(shù)調(diào)用時(shí)可以使用函數(shù)名作為實(shí)參D.函數(shù)調(diào)用時(shí)可以傳遞數(shù)組名答案:D解析:函數(shù)調(diào)用時(shí)實(shí)參和形參類型兼容即可,個(gè)數(shù)要相同,函數(shù)名不能作為實(shí)參,可傳遞數(shù)組名。34.若有定義charstr1[]="hello",str2[]="world";則strcmp(str1,str2)的值()A.小于0B.等于0C.大于0D.不確定答案:A解析:strcmp函數(shù)比較字符串大小,按字典序"hello"小于"world",返回值小于0。35.以下關(guān)于靜態(tài)變量的說法,正確的是()A.靜態(tài)變量只能在函數(shù)內(nèi)部定義B.靜態(tài)變量在程序運(yùn)行期間一直存在C.靜態(tài)變量不能被初始化D.靜態(tài)變量每次函數(shù)調(diào)用時(shí)都會重新初始化答案:B解析:靜態(tài)變量可在函數(shù)內(nèi)部或外部定義,在程序運(yùn)行期間一直存在,可初始化,且只初始化一次。36.若有定義inta=5,b=3;則表達(dá)式a%b的值是()A.0B.1C.2D.3答案:C解析:%是取余運(yùn)算符,5除以3余數(shù)為2。37.以下關(guān)于指針和數(shù)組的關(guān)系,說法錯誤的是()A.數(shù)組名可以隱式轉(zhuǎn)換為指針B.指針可以指向數(shù)組元素C.指針和數(shù)組是完全相同的概念D.可以通過指針訪問數(shù)組元素答案:C解析:數(shù)組名可隱式轉(zhuǎn)換為指針,指針可指向數(shù)組元素,可通過指針訪問數(shù)組元素,但指針和數(shù)組不是完全相同概念。38.若有定義intarr[5]={1,2,3,4,5};int*p=arr;則p[2]的值是()A.1B.2C.3D.4答案:C解析:p指向數(shù)組首地址,p[2]等價(jià)于*(p+2),即數(shù)組第3個(gè)元素的值3。39.以下關(guān)于if-else語句的說法,正確的是()A.if-else語句只能嵌套一層B.if-else語句的條件判斷部分必須是布爾表達(dá)式C.if-else語句可以省略else分支D.if-else語句不能和switch語句嵌套使用答案:C解析:if-else語句可多層嵌套,條件判斷部分可以是任意表達(dá)式,可省略else分支,也能和switch語句嵌套使用。40.若有定義inta=10;則執(zhí)行語句a=a>>1;后,a的值是()A.5B.10C.20D.40答案:A解析:右移運(yùn)算符,a>>1相當(dāng)于a除以2,10除以2得5。41.以下關(guān)于函數(shù)遞歸調(diào)用的說法,錯誤的是()A.遞歸調(diào)用必須有終止條件B.遞歸調(diào)用會消耗大量??臻gC.遞歸調(diào)用的效率一定比迭代高D.遞歸調(diào)用可以解決一些復(fù)雜的問題答案:C解析:遞歸調(diào)用要有終止條件,會消耗??臻g,能解決復(fù)雜問題,但效率不一定比迭代高。42.若有定義structStudent{charname[20];intage;}stu;則對stu中age成員賦值為20的正確語句是()A.stu.age=20;B.Student.age=20;C.stu->age=20;D.&stu.age=20;答案:A解析:對于結(jié)構(gòu)體變量,使用“.”運(yùn)算符來訪問成員,stu是結(jié)構(gòu)體變量,所以用stu.age=20賦值;B選項(xiàng)Student是結(jié)構(gòu)體類型名,不能這樣用;C選項(xiàng)“->”用于結(jié)構(gòu)體指針;D選項(xiàng)&stu.age是取地址,不能作為左值賦值。43.以下關(guān)于逗號運(yùn)算符的說法,正確的是()A.逗號運(yùn)算符的優(yōu)先級高于賦值運(yùn)算符B.逗號表達(dá)式的值是最后一個(gè)表達(dá)式的值C.逗號表達(dá)式只能用于整數(shù)類型D.逗號運(yùn)算符不能嵌套使用答案:B解析:逗號運(yùn)算符優(yōu)先級低于賦值運(yùn)算符,逗號表達(dá)式的值是最后一個(gè)表達(dá)式的值,可用于多種數(shù)據(jù)類型,也能嵌套使用。44.若有定義intarr[10];要給數(shù)組arr的所有元素賦值為0,以下正確的是()A.arr={0};B.for(inti=0;i<10;i++)arr[i]=0;C.arr[10]={0};D.arr[]={0};答案:B解析:A選項(xiàng)數(shù)組名是常量指針,不能這樣整體賦值;C選項(xiàng)arr[10]越界;D選項(xiàng)語法錯誤,要給數(shù)組元素逐個(gè)賦值可以用循環(huán),所以B正確。45.若有定義int*p,a[5]={1,2,3,4,5};p=a+2;則*p++的值是()A.1B.2C.3D.4答案:C解析:p指向a[2],*p++先取p所指的值即3,然后p再自增指向下一個(gè)元素。46.以下關(guān)于循環(huán)語句中break和continue的說法,錯誤的是()A.break語句可以跳出當(dāng)前所在的循環(huán)B.continue語句可以跳過本次循環(huán)的剩余部分C.break語句只能用于循環(huán)語句D.continue語句可以用于switch語句答案:D解析:break可跳出當(dāng)前循環(huán),continue跳過本次循環(huán)剩余部分,break還可用于switch語句,continue不能用于switch語句。47.若有定義inta=3,b=4,c;c=a>b?a:b;則c的值是()A.3B.4C.7D.不確定答案:B解析:條件運(yùn)算符,a>b為假,取冒號后面的值,即b的值4。48.以下關(guān)于函數(shù)原型聲明的說法,正確的是()A.函數(shù)原型聲明必須在函數(shù)定義之前B.函數(shù)原型聲明可以省略參數(shù)名C.函數(shù)原型聲明不能在頭文件中D.函數(shù)原型聲明的返回類型必須和函數(shù)定義一致答案:B解析:函數(shù)原型聲明不一定要在函數(shù)定義之前,可省略參數(shù)名,可放在頭文件中,返回類型要和函數(shù)定義一致,但強(qiáng)調(diào)可省略參數(shù)名更突出該知識點(diǎn)特性。49.若有定義charstr[]="abc\0def";則strlen(str)的值是()A.3B.4C.7D.8答案:A解析:strlen遇到'\0'就結(jié)束計(jì)算長度,所以長度是3。50.以下關(guān)于內(nèi)存動態(tài)分配的說法,錯誤的是()A.可以使用malloc函數(shù)分配內(nèi)存B.分配的內(nèi)存使用完后必須釋放C.可以使用free函數(shù)釋放內(nèi)存D.動態(tài)分配的內(nèi)存不會出現(xiàn)內(nèi)存泄漏答案:D解析:可以用malloc分配內(nèi)存,用free釋放,使用完要釋放,但如果不釋放就會出現(xiàn)內(nèi)存泄漏。51.若有定義inta=5,b=6;則表達(dá)式(a<b)?(a++):(b++)的值是()A.5B.6C.7D.不確定答案:A解析:a<b為真,取a++的值,先取a的值5,然后a自增。52.以下關(guān)于字符數(shù)組和字符串的說法,錯誤的是()A.字符串可以用字符數(shù)組存儲B.字符數(shù)組一定是字符串C.字符串以'\0'結(jié)尾D.可以使用strcpy函數(shù)復(fù)制字符串答案:B解析:字符串可用字符數(shù)組存儲,字符串以'\0'結(jié)尾,可用strcpy復(fù)制,但字符數(shù)組不一定是字符串,只有以'\0'結(jié)尾的字符數(shù)組才是字符串。53.若有定義intarr[2][3]={{1,2,3},{4,5,6}};則arr[1][0]的值是()A.1B.4C.5D.6答案:B解析:二維數(shù)組arr[1][0]是第二行第一個(gè)元素,值為4。54.以下關(guān)于函數(shù)參數(shù)傳遞的說法,正確的是()A.函數(shù)參數(shù)傳遞只有值傳遞B.指針作為參數(shù)傳遞是值傳遞C.數(shù)組作為參數(shù)傳遞是值傳遞D.結(jié)構(gòu)體作為參數(shù)傳遞是地址傳遞答案:B解析:函數(shù)參數(shù)傳遞有值傳遞和地址傳遞,指針作為參數(shù)傳遞是將指針的值(地址)傳遞,屬于值傳遞,數(shù)組作為參數(shù)傳遞會退化為指針,結(jié)構(gòu)體作為參數(shù)傳遞默認(rèn)是值傳遞。55.若有定義inta=10;則執(zhí)行語句a%=3;后,a的值是()A.0B.1C.2D.3答案:B解析:a%=3等價(jià)于a=a%3,10除以3余數(shù)為1。56.以下關(guān)于預(yù)處理指令的說法,正確的是()A.預(yù)處理指令在編譯前處理B.預(yù)處理指令必須以分號結(jié)尾C.預(yù)處理指令只能在程序開頭使用D.預(yù)處理指令不能嵌套使用答案:A解析:預(yù)處理指令在編譯前處理,不以分號結(jié)尾,可在程序任意位置使用,也能嵌套使用。57.若有定義int*p,a=5;p=&a;則++*p的值是()A.5B.6C.地址值D.不確定答案:B解析:先取p所指的值即a的值5,然后自增為6。58.以下關(guān)于嵌套if語句的說法,錯誤的是()A.嵌套if語句可以實(shí)現(xiàn)多分支選擇B.嵌套if語句的層次沒有限制C.嵌套if語句的else總是和最近的if配對D.嵌套if語句的效率一定比switch語句高答案:D解析:嵌套if可實(shí)現(xiàn)多分支選擇,層次無絕對限制,else和最近的if配對,但效率不一定比switch高。59.若有定義intarr[5]={1,2,3,4,5};int*p=arr+4;則*--p的值是()A.1B.2C.3D.4答案:D解析:p指向arr[4],先將p自減指向arr[3],然后取其值4。60.以下關(guān)于文件讀寫操作的說法,正確的是()A.只能按順序讀寫文件B.可以使用fread函數(shù)讀取二進(jìn)制文件C.寫入文件的數(shù)據(jù)不能是結(jié)構(gòu)體類型D.打開文件后不需要關(guān)閉答案:B解析:文件讀寫可以隨機(jī)讀寫,fread可讀取二進(jìn)制文件,可寫入結(jié)構(gòu)體類型數(shù)據(jù),打開文件后要關(guān)閉。61.若有定義inta=7,b=2;則表達(dá)式a/b的值是()A.3B.3.5C.4D.不確定答案:A解析:整數(shù)相除結(jié)果取整,7除以2結(jié)果為3。62.以下關(guān)于枚舉類型的說法,錯誤的是()A.枚舉類型是一種用戶自定義類型B.枚舉常量的值默認(rèn)從0開始C.枚舉常量可以手動賦值D.枚舉類型可以直接進(jìn)行算術(shù)運(yùn)算答案:D解析:枚舉類型是自定義類型,常量默認(rèn)從0開始,可手動賦值,但枚舉類型不能直接進(jìn)行算術(shù)運(yùn)算。63.若有定義struct{intx;inty;}point={1,2};則point.x的值是()A.0B.1C.2D.不確定答案:B解析:結(jié)構(gòu)體變量point初始化,point.x的值為1。64.以下關(guān)于邏輯運(yùn)算符的說法,正確的是()A.邏輯與運(yùn)算符(&&)的優(yōu)先級高于邏輯或運(yùn)算符(||)B.邏輯運(yùn)算符的操作數(shù)只能是整數(shù)類型C.邏輯非運(yùn)算符(!)的優(yōu)先級最低D.邏輯運(yùn)算符的結(jié)果只能是0或1答案:A解析:邏輯與優(yōu)先級高于邏輯或,操作數(shù)可以是多種類型,邏輯非優(yōu)先級最高,結(jié)果是0或1。65.若有定義intarr[3][3]={{1,2,3},{4,5,6},{7,8,9}};則arr[2][1]的值是()A.7B.8C.9D.6答案:B解析:二維數(shù)組arr[2][1]是第三行第二個(gè)元素,值為8。66.以下關(guān)于函數(shù)重載的說法,在C語言中()A.可以實(shí)現(xiàn)函數(shù)重載B.函數(shù)名相同但參數(shù)不同就是函數(shù)重載C.C語言不支持函數(shù)重載D.函數(shù)重載可以提高程序效率答案:C解析:C語言不支持函數(shù)重載,函數(shù)重載是C++的特性。67.若有定義inta=10;則執(zhí)行語句a+=5;后,a的值是()A.5B.10C.15D.20答案:C解析:a+=5等價(jià)于a=a+5,a變?yōu)?5。68.以下關(guān)于字符串處理函數(shù)的說法,錯誤的是()A.strcat函數(shù)用于連接兩個(gè)字符串B.strchr函數(shù)用于查找字符在字符串中第一次出現(xiàn)的位置C.strstr函數(shù)用于查找子字符串在字符串中第一次出現(xiàn)的位置D.這些函數(shù)都在<stdio.h>頭文件中答案:D解析:字符串處理函數(shù)如strcat、strchr、strstr等在<string.h>頭文件中,不在<stdio.h>中。69.若有定義int*p,arr[5]={1,2,3,4,5};p=arr;則*(p+1)的值是()A.1B.2C.3D.4答案:B解析:p指向數(shù)組首地址,p+1指向數(shù)組第二個(gè)元素,*(p+1)就是2。70.以下關(guān)于do-while循環(huán)和while循環(huán)的區(qū)別,說法正確的是()A.do-while循環(huán)至少執(zhí)行一次,while循環(huán)可能一次都不執(zhí)行B.do-while循環(huán)的條件判斷在循環(huán)體之后,while循環(huán)的條件判斷在循環(huán)體之前C.以上兩者都是D.以上兩者都不是答案:C解析:do-while循環(huán)先執(zhí)行循環(huán)體再判斷條件,至少執(zhí)行一次;while循環(huán)先判斷條件,可能一次都不執(zhí)行。71.若有定義inta=3,b=5;則表達(dá)式!(a<b)的值是()A.0B.1C.3D.5答案:A解析:a<b為真,值為1,!1為假,值為0。72.以下關(guān)于數(shù)組初始化的說法,錯誤的是()A.可以只對數(shù)組部分元素初始化B.初始化列表中的元素個(gè)數(shù)可以超過數(shù)組大小C.若不初始化,數(shù)組元素的值是不確定的D.可以使用大括號對數(shù)組進(jìn)行初始化答案:B解析:可以只對部分元素初始化,不初始化元素值不確定,可用大括號初始化,但初始化列表元素個(gè)數(shù)不能超過數(shù)組大小。73.若有定義int*p,a=10;p=&a;則p和&a的關(guān)系是()A.p和&a是不同類型B.p和&a的值相等C.p是變量a的值,&a是變量a的地址D.以上都不對答案:B解析:p是指針變量存儲變量a的地址,&a是取變量a的地址,它們的值相等。74.以下關(guān)于條件判斷語句的說法,正確的是()A.條件判斷語句只能使用if語句B.switch語句只能判斷整數(shù)類型的表達(dá)式C.條件判斷語句的條件表達(dá)式只能是布爾類型D.條件判斷語句可以嵌套使用答案:D解析:條件判斷有if、switch等語句,switch可判斷多種可轉(zhuǎn)換為整數(shù)類型的表達(dá)式,條件表達(dá)式可以是多種類型,且可嵌套使用。75.若有定義intarr[4]={1,2,3,4};則sizeof(arr)的值是()A.4B.8C.16D.32答案:C解析:數(shù)組名代表整個(gè)數(shù)組,sizeof(arr)計(jì)算數(shù)組所占字節(jié)數(shù),int通常占4字節(jié),4個(gè)元素共16字節(jié)。76.以下關(guān)于函數(shù)嵌套調(diào)用的說法,正確的是()A.函數(shù)只能嵌套調(diào)用一次B.函數(shù)嵌套調(diào)用時(shí),內(nèi)層函數(shù)執(zhí)行完才會繼續(xù)執(zhí)行外層函數(shù)C.函數(shù)嵌套調(diào)用會使程序效率變高D.函數(shù)嵌套調(diào)用只能是相同類型的函數(shù)答案:B解析:函數(shù)可多次嵌套調(diào)用,內(nèi)層函數(shù)執(zhí)行完才繼續(xù)外層函數(shù),嵌套調(diào)用不一定提高效率,可嵌套不同類型函數(shù)。77.若有定義inta=5,b=2;則表達(dá)式a%b+a/b的值是()A.1B.2C.3D.4答案:C解析:先計(jì)算a%b為1,a/b為2,相加得3。78.以下關(guān)于指針運(yùn)算的說法,錯誤的是()A.指針可以進(jìn)行加法運(yùn)算B.指針可以進(jìn)行減法運(yùn)算C.指針可以進(jìn)行比較運(yùn)算D.指針可以和整數(shù)進(jìn)行除法運(yùn)算答案:D解析:指針可進(jìn)行加、減、比較運(yùn)算,但不能和整數(shù)進(jìn)行除法運(yùn)算。79.若有定義charstr[]="hello";則str[0]的值是()A.'h'B.'e'C.'l'D.'o'答案:A解析:字符數(shù)組下標(biāo)從0開始,str[0]是第一個(gè)字符'h'。80.以下關(guān)于while循環(huán)的說法,正確的是()A.while循環(huán)的循環(huán)體可以為空B.while循環(huán)的條件表達(dá)式必須是常量C.while循環(huán)只能使用break語句跳出D.while循環(huán)不能和for循環(huán)嵌套答案:A解析:while循環(huán)體可以為空,條件表達(dá)式可以是變量或表達(dá)式,也可用continue語句,能和for循環(huán)嵌套。81.若有定義inta=8,b=3;則表達(dá)式a/b*b的值是()A.6B.8C.9D.不確定答案:A解析:整數(shù)相除8/3為2,再乘以3得6。82.以下關(guān)于結(jié)構(gòu)體數(shù)組的說法,正確的是()A.結(jié)構(gòu)體數(shù)組的元素只能是結(jié)構(gòu)體類型B.結(jié)構(gòu)體數(shù)組不能初始化C.訪問結(jié)構(gòu)體數(shù)組元素的成員只能用指針D.結(jié)構(gòu)體數(shù)組的大小由第一個(gè)元素決定答案:A解析:結(jié)構(gòu)體數(shù)組中的每個(gè)元素都是結(jié)構(gòu)體類型,所以A正確;結(jié)構(gòu)體數(shù)組可以像普通數(shù)組一樣進(jìn)行初始化,B錯誤;訪問結(jié)構(gòu)體數(shù)組元素的成員可以用“.”運(yùn)算符,不只是指針,C錯誤;結(jié)構(gòu)體數(shù)組的大小由元素個(gè)數(shù)和每個(gè)元素的大小共同決定,并非由第一個(gè)元素決定,D錯誤。83.若有定義inta=4,b=5;則表達(dá)式(a>b)?a++:b++的值是()A.4B.5C.6D.不確定答案:B解析:因?yàn)閍>b為假,所以取冒號后面的值,即b的值5,然后b再自增。84.以下關(guān)于函數(shù)返回指針的說法,錯誤的是()A.函數(shù)可以返回指向局部變量的指針B.函數(shù)返回的指針類型要和函數(shù)定義的返回類型一致C.返回的指針可以指向動態(tài)分配的內(nèi)存D.返回的指針可以指向全局變量答案:A解析:局部變量在函數(shù)執(zhí)行結(jié)束后會被銷毀,返回指向局部變量的指針會導(dǎo)致指針懸空,所以不能返回指向局部變量的指針;函數(shù)返回的指針類型要和定義一致,可指向動態(tài)分配的內(nèi)存或全局變量。85.若有定義intarr[6]={1,2,3};則arr[5]的值是()A.0B.1C.3D.不確定答案:A解析:數(shù)組部分初始化時(shí),未初始化的元素會自動初始化為0,所以arr[5]的值為0。86.以下關(guān)于for循環(huán)的執(zhí)行流程,說法正確的是()A.先執(zhí)行初始化部分,再判斷條件,執(zhí)行循環(huán)體,最后執(zhí)行迭代部分B.先判斷條件,再執(zhí)行初始化部分,執(zhí)行循環(huán)體,最后執(zhí)行迭代部分C.先執(zhí)行循環(huán)體,再判斷條件,執(zhí)行初始化部分,最后執(zhí)行迭代部分D.先執(zhí)行迭代部分,再判斷條件,執(zhí)行循環(huán)體,最后執(zhí)行初始化部分答案:A解析:for循環(huán)的執(zhí)行流程是先執(zhí)行初始化部分,然后判斷條件,若條件為真則執(zhí)行循環(huán)體,最后執(zhí)行迭代部分,如此循環(huán)。87.若有定義int*p,a=100;p=&a;則*&p的值是()A.100B.a的地址C.p的地址D.不確定答案:B解析:&p是取指針p的地址,*&p則是對p的地址進(jìn)行解引用,得到的就是p存儲的值,也就是a的地址。88.以下關(guān)于字符串輸入輸出的說法,錯誤的是()A.可以使用scanf函數(shù)輸入字符串B.可以使用printf函數(shù)輸出字符串C.使用scanf輸入字符串時(shí)會自動添加字符串結(jié)束符D.使用gets函數(shù)輸入字符串時(shí)會自動添加字符串結(jié)束符答案:C解析:scanf函數(shù)輸入字符串時(shí),遇到空格或換行符就會停止讀取,不會自動添加字符串結(jié)束符;可以用scanf和printf進(jìn)行字符串的輸入輸出,gets函數(shù)輸入字符串時(shí)會自動添加字符串結(jié)束符。89.若有定義struct{intnum;charname[10];}s1={1,"Tom"},s2;s2=s1;則的值是()A."Tom"B.""C.地址值D.不確定答案:A解析:結(jié)構(gòu)體變量可以整體賦值,s2=s1后,s2的成員和s1的成員值相同,所以的值是"Tom"。90.以下關(guān)于位運(yùn)算的說法,正確的是()A.位運(yùn)算只能用于整數(shù)類型B.位運(yùn)算的優(yōu)先級高于算術(shù)運(yùn)算C.位運(yùn)算的結(jié)果一定是布爾類型D.位運(yùn)算不能用于負(fù)數(shù)答案:A解析:位運(yùn)算是對二進(jìn)制位進(jìn)行操作,只能用于整數(shù)類型;位運(yùn)算優(yōu)先級低于算術(shù)運(yùn)算;位運(yùn)算結(jié)果是整數(shù)類型,不是布爾類型;位運(yùn)算可以用于負(fù)數(shù)。91.若有定義intarr[3][2]={{1,2},{3,4},{5,6}};則*(arr[1]+1)的值
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江西交通職業(yè)技術(shù)學(xué)院《文化投資學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東青年職業(yè)學(xué)院《茶葉審評與檢驗(yàn)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 岳陽職業(yè)技術(shù)學(xué)院《微積分Ⅰ(PM)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年江西制造職業(yè)技術(shù)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- 2025北京八十中高二4月月考數(shù)學(xué)(教師版)
- 會計(jì)信息系統(tǒng)安全試題及答案
- 九年級英語上冊 Module 11 Photos Unit 1 He's the boy who won the photo competition last year第一課時(shí)教學(xué)設(shè)計(jì)(新版)外研版
- 店鋪品牌轉(zhuǎn)讓合同范本
- 五年級上信息技術(shù)教學(xué)設(shè)計(jì)-學(xué)習(xí)輸入漢字-吉教版
- 鄉(xiāng)村醫(yī)學(xué)考試適應(yīng)癥知識試題及答案
- 新生兒乳糜胸的相關(guān)
- 產(chǎn)后病(中醫(yī)婦科學(xué))
- 道路縱斷面設(shè)計(jì)
- 1.3.1 三角函數(shù)的周期性課件
- 智能感知系統(tǒng)布局
- 綜合能力測試真題及答案
- 幼兒園中班創(chuàng)意美術(shù)《我運(yùn)動了》課件
- 自動焊錫機(jī)烙鐵頭更換記錄表
- 廣東省省級政務(wù)信息化服務(wù)預(yù)算編制標(biāo)準(zhǔn)(運(yùn)維服務(wù)分冊)
- 汽車維修公務(wù)車輛定點(diǎn)維修車輛保養(yǎng)投標(biāo)方案
- 歌曲Wonderful U:美妙的你.中英互譯
評論
0/150
提交評論