




版權(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.變量可以在使用后再定義B.變量名可以使用任意字符C.同一作用域內(nèi)變量名不能重復(fù)D.變量定義時(shí)必須初始化答案:C解析:C語言中同一作用域內(nèi)變量名不能重復(fù),變量需先定義后使用,變量名有命名規(guī)則,定義時(shí)不一定要初始化。2.已知inta=5;執(zhí)行語句a+=a-=a*a;后,a的值是()A.-40B.-15C.25D.0答案:A解析:先計(jì)算a*a=25,然后a-=25,此時(shí)a為-20,最后a+=-20,a變?yōu)?40。3.以下能正確表示邏輯關(guān)系“a≥10或a≤0”的C語言表達(dá)式是()A.a>=10ora<=0B.a>=10||a<=0C.a>=10&&a<=0D.a>=10|a<=0答案:B解析:在C語言中,邏輯或用“||”表示,A選項(xiàng)“or”不是C語言的邏輯運(yùn)算符,C選項(xiàng)“&&”是邏輯與,D選項(xiàng)“|”是按位或。4.對于for循環(huán)語句for(inti=0;i<5;i++),循環(huán)體執(zhí)行的次數(shù)是()A.4次B.5次C.6次D.0次答案:B解析:i從0開始,到i=4時(shí)滿足i<5,共執(zhí)行5次。5.以下關(guān)于函數(shù)調(diào)用的說法,錯(cuò)誤的是()A.函數(shù)調(diào)用時(shí)實(shí)參和形參的類型必須一致B.函數(shù)調(diào)用可以嵌套C.函數(shù)調(diào)用時(shí)可以不傳遞參數(shù)D.函數(shù)調(diào)用后一定會(huì)返回一個(gè)值答案:D解析:函數(shù)可以是無返回值類型(void),調(diào)用后不會(huì)返回值。6.有數(shù)組定義intarr[5]={1,2,3};則arr[3]的值是()A.0B.3C.隨機(jī)值D.4答案:A解析:數(shù)組部分初始化時(shí),未明確初始化的元素自動(dòng)初始化為0。7.若有定義charstr[]="hello";則str數(shù)組的長度是()A.5B.6C.7D.4答案:B解析:字符串"hello"末尾有一個(gè)隱藏的'\0',所以數(shù)組長度是6。8.以下關(guān)于指針的說法,正確的是()A.指針變量只能存儲(chǔ)地址B.指針變量可以存儲(chǔ)任意類型的數(shù)據(jù)C.指針變量不能進(jìn)行運(yùn)算D.指針變量和普通變量沒有區(qū)別答案:A解析:指針變量專門用來存儲(chǔ)地址,不能存儲(chǔ)任意類型數(shù)據(jù),指針可以進(jìn)行運(yùn)算,和普通變量有明顯區(qū)別。9.若有定義int*p,a=10;p=&a;則*p的值是()A.10B.變量a的地址C.指針p的地址D.隨機(jī)值答案:A解析:*p表示取指針p所指向變量的值,p指向a,所以*p是10。10.以下關(guān)于結(jié)構(gòu)體的說法,錯(cuò)誤的是()A.結(jié)構(gòu)體可以包含不同類型的成員B.結(jié)構(gòu)體變量的成員可以通過“.”運(yùn)算符訪問C.結(jié)構(gòu)體類型定義后就分配了內(nèi)存D.可以定義結(jié)構(gòu)體數(shù)組答案:C解析:結(jié)構(gòu)體類型定義只是定義了一種新的數(shù)據(jù)類型,不會(huì)分配內(nèi)存,定義結(jié)構(gòu)體變量時(shí)才分配內(nèi)存。11.以下哪個(gè)是合法的C語言標(biāo)識符()A.2abcB.intC._abcD.abc@答案:C解析:標(biāo)識符只能由字母、數(shù)字和下劃線組成,且不能以數(shù)字開頭,“int”是關(guān)鍵字不能作為標(biāo)識符。12.若有inta=3,b=4;則表達(dá)式a<b?a:b的值是()A.3B.4C.7D.0答案:A解析:這是三目運(yùn)算符,因?yàn)閍<b為真,所以返回a的值3。13.以下關(guān)于while循環(huán)的說法,正確的是()A.while循環(huán)的循環(huán)體至少執(zhí)行一次B.while循環(huán)的條件表達(dá)式為真時(shí)才執(zhí)行循環(huán)體C.while循環(huán)不能嵌套D.while循環(huán)沒有循環(huán)控制變量答案:B解析:while循環(huán)先判斷條件,條件為真才執(zhí)行循環(huán)體,循環(huán)體可能一次都不執(zhí)行,可以嵌套,有循環(huán)控制變量。14.若有函數(shù)定義voidfun(inta){a++;}調(diào)用該函數(shù)時(shí),實(shí)參的值()A.會(huì)被改變B.不會(huì)被改變C.可能改變也可能不改變D.由函數(shù)返回值決定答案:B解析:函數(shù)參數(shù)傳遞是值傳遞,函數(shù)內(nèi)對形參的修改不影響實(shí)參。15.以下關(guān)于數(shù)組名的說法,錯(cuò)誤的是()A.數(shù)組名代表數(shù)組首元素的地址B.數(shù)組名可以進(jìn)行自增自減運(yùn)算C.數(shù)組名可以作為函數(shù)參數(shù)傳遞D.數(shù)組名是一個(gè)常量指針答案:B解析:數(shù)組名是常量指針,不能進(jìn)行自增自減運(yùn)算。16.若有定義charch='A';則ch+32的值是()A.'a'B.'A'C.32D.65答案:A解析:大寫字母和小寫字母ASCII碼相差32,'A'加32得到'a'。17.以下關(guān)于指針運(yùn)算的說法,錯(cuò)誤的是()A.指針可以和整數(shù)相加B.指針可以和指針相減C.指針可以和指針相加D.指針可以進(jìn)行比較運(yùn)算答案:C解析:指針和指針相加沒有實(shí)際意義,指針可以和整數(shù)相加、相減以及進(jìn)行比較運(yùn)算。18.若有結(jié)構(gòu)體定義structStudent{charname[20];intage;};定義該結(jié)構(gòu)體變量的正確方式是()A.structStudents;B.Students;C.structs;D.structStudent;答案:A解析:定義結(jié)構(gòu)體變量時(shí)需要加上“struct”關(guān)鍵字。19.以下關(guān)于文件操作的說法,正確的是()A.文件操作前不需要打開文件B.文件操作結(jié)束后不需要關(guān)閉文件C.可以以不同的模式打開文件D.文件只能以文本模式打開答案:C解析:文件操作前要打開文件,結(jié)束后要關(guān)閉文件,文件可以以多種模式打開,不只是文本模式。20.若有inta[3][4];則對數(shù)組元素a[1][2]的正確引用是()A.*(a[1]+2)B.*(a+1+2)C.*(a+1)[2]D.*(*(a+2)+1)答案:A解析:a[1]是第二行首地址,a[1]+2指向第二行第三列元素,*(a[1]+2)就是該元素。21.以下哪個(gè)語句可以正確實(shí)現(xiàn)將變量a和b的值交換()A.a=b;b=a;B.inttemp;temp=a;a=b;b=temp;C.a=a+b;b=a-b;a=a-b;D.B和C都可以答案:D解析:B選項(xiàng)借助臨時(shí)變量實(shí)現(xiàn)交換,C選項(xiàng)通過數(shù)學(xué)運(yùn)算也能實(shí)現(xiàn)交換。22.若有定義inta=10,b=20;執(zhí)行語句a^=b;b^=a;a^=b;后,a和b的值分別是()A.10,20B.20,10C.30,10D.0,30答案:B解析:這是通過異或運(yùn)算實(shí)現(xiàn)兩個(gè)變量值的交換。23.以下關(guān)于do-while循環(huán)的說法,正確的是()A.do-while循環(huán)的循環(huán)體至少執(zhí)行一次B.do-while循環(huán)的條件表達(dá)式為假時(shí)才執(zhí)行循環(huán)體C.do-while循環(huán)不能嵌套D.do-while循環(huán)沒有循環(huán)控制變量答案:A解析:do-while循環(huán)先執(zhí)行循環(huán)體,再判斷條件,所以循環(huán)體至少執(zhí)行一次。24.若有函數(shù)定義intfun(inta,intb){returna+b;}調(diào)用該函數(shù)時(shí),以下正確的是()A.fun(3);B.fun(3,4,5);C.intresult=fun(3,4);D.fun();答案:C解析:函數(shù)有兩個(gè)參數(shù),調(diào)用時(shí)要傳遞兩個(gè)參數(shù),并且可以將返回值賦給變量。25.若有數(shù)組定義intarr[]={1,3,5,7,9};則數(shù)組的長度是()A.4B.5C.6D.不確定答案:B解析:數(shù)組初始化時(shí)明確給出了5個(gè)元素,所以長度是5。26.以下關(guān)于字符串處理函數(shù)的說法,錯(cuò)誤的是()A.strlen函數(shù)可以計(jì)算字符串的長度B.strcpy函數(shù)可以復(fù)制字符串C.strcmp函數(shù)可以比較字符串大小D.這些函數(shù)都在math.h頭文件中聲明答案:D解析:這些字符串處理函數(shù)在string.h頭文件中聲明,而不是math.h。27.若有定義int*p,arr[5]={1,2,3,4,5};p=arr;則*(p+2)的值是()A.1B.2C.3D.4答案:C解析:p指向數(shù)組首地址,p+2指向第三個(gè)元素,*(p+2)就是3。28.以下關(guān)于共用體的說法,正確的是()A.共用體的所有成員共享同一塊內(nèi)存B.共用體的成員不能同時(shí)使用C.共用體變量定義時(shí)分配的內(nèi)存大小是最大成員的大小D.以上都對答案:D解析:共用體的成員共享同一塊內(nèi)存,不能同時(shí)使用,變量分配的內(nèi)存大小是最大成員的大小。29.以下關(guān)于宏定義的說法,正確的是()A.宏定義是在程序運(yùn)行時(shí)進(jìn)行替換的B.宏定義可以有參數(shù)C.宏定義只能定義常量D.宏定義的作用域是整個(gè)程序答案:B解析:宏定義是在編譯預(yù)處理時(shí)進(jìn)行替換的,可以有參數(shù),不只是定義常量,作用域從定義處到文件結(jié)束。30.若有inta=5,b=3;則表達(dá)式(a>b)?++a:--b的值是()A.6B.2C.5D.3答案:A解析:因?yàn)閍>b為真,執(zhí)行++a,a變?yōu)?。31.以下關(guān)于continue語句的說法,正確的是()A.continue語句只能用于for循環(huán)B.continue語句會(huì)終止整個(gè)循環(huán)C.continue語句會(huì)跳過本次循環(huán)的剩余語句,進(jìn)入下一次循環(huán)D.continue語句沒有實(shí)際作用答案:C解析:continue語句可用于for、while、do-while循環(huán),它會(huì)跳過本次循環(huán)剩余語句進(jìn)入下一次循環(huán)。32.若有函數(shù)定義voidfun(int*p){*p=*p*2;}調(diào)用該函數(shù)時(shí),實(shí)參應(yīng)該傳遞()A.變量的值B.變量的地址C.函數(shù)名D.常量答案:B解析:函數(shù)參數(shù)是指針,調(diào)用時(shí)要傳遞變量的地址。33.若有數(shù)組定義charstr[]="abc\0def";則strlen(str)的值是()A.3B.7C.8D.不確定答案:A解析:strlen函數(shù)遇到'\0'就結(jié)束計(jì)數(shù),所以長度是3。34.以下關(guān)于函數(shù)返回值的說法,錯(cuò)誤的是()A.函數(shù)可以沒有返回值B.函數(shù)返回值的類型可以和定義時(shí)的類型不同C.函數(shù)可以返回指針D.函數(shù)返回值可以作為另一個(gè)函數(shù)的參數(shù)答案:B解析:函數(shù)返回值的類型必須和定義時(shí)的類型相同。35.若有定義inta[2][3]={{1,2,3},{4,5,6}};則a[1][0]的值是()A.1B.4C.5D.6答案:B解析:a[1][0]是第二行第一列元素,值為4。36.以下關(guān)于位運(yùn)算的說法,正確的是()A.位運(yùn)算只能對整數(shù)進(jìn)行操作B.位運(yùn)算的優(yōu)先級都比算術(shù)運(yùn)算符高C.位運(yùn)算不能用于賦值操作D.位運(yùn)算和邏輯運(yùn)算沒有區(qū)別答案:A解析:位運(yùn)算只能對整數(shù)操作,其優(yōu)先級不一定比算術(shù)運(yùn)算符高,可以用于賦值操作,和邏輯運(yùn)算有區(qū)別。37.若有定義int*p,a=10;p=&a;則&*p的值是()A.10B.變量a的地址C.指針p的地址D.隨機(jī)值答案:B解析:*p得到a的值,&*p又取其地址,就是變量a的地址。38.以下關(guān)于枚舉類型的說法,正確的是()A.枚舉類型的成員默認(rèn)從0開始編號B.枚舉類型的成員可以是任意類型的數(shù)據(jù)C.枚舉類型的變量不能進(jìn)行比較運(yùn)算D.枚舉類型不能在函數(shù)內(nèi)部定義答案:A解析:枚舉類型成員默認(rèn)從0開始編號,成員是常量,變量可以比較運(yùn)算,可以在函數(shù)內(nèi)部定義。39.以下關(guān)于文件指針的說法,正確的是()A.文件指針指向文件的內(nèi)容B.文件指針是一個(gè)普通的整數(shù)變量C.文件指針用于標(biāo)識文件操作的位置D.文件指針只能指向文本文件答案:C解析:文件指針用于標(biāo)識文件操作的位置,不是指向文件內(nèi)容,也不是普通整數(shù)變量,可指向多種類型文件。40.若有inta=2;則表達(dá)式a*=2+3的值是()A.4B.5C.10D.7答案:C解析:先計(jì)算2+3=5,然后a*=5,即a=a*5,a變?yōu)?0。41.以下關(guān)于switch語句的說法,正確的是()A.switch語句的表達(dá)式只能是整數(shù)類型B.switch語句中每個(gè)case后面必須有break語句C.switch語句可以沒有default分支D.switch語句不能嵌套答案:C解析:switch語句表達(dá)式可以是整數(shù)或枚舉類型,case后面不一定要有break,可沒有default分支,能嵌套。42.若有函數(shù)定義intfun(inta){returna*a;}調(diào)用該函數(shù)計(jì)算3的平方,正確的是()A.intresult=fun(3);B.fun(3)=result;C.result=fun(3*3);D.fun(3,3);答案:A解析:調(diào)用函數(shù)計(jì)算3的平方,將返回值賦給變量result。43.若有數(shù)組定義intarr[10];以下能正確給數(shù)組元素賦值的是()A.arr={1,2,3,4,5};B.for(inti=0;i<10;i++)arr[i]=i;C.arr[10]=10;D.arr=&10;答案:B解析:A選項(xiàng)不能這樣給數(shù)組整體賦值,C選項(xiàng)越界,D選項(xiàng)賦值錯(cuò)誤,B選項(xiàng)通過循環(huán)正確賦值。44.以下關(guān)于字符數(shù)組和字符串的說法,錯(cuò)誤的是()A.字符數(shù)組可以存儲(chǔ)字符串B.字符串一定以'\0'結(jié)尾C.字符數(shù)組的長度和存儲(chǔ)的字符串長度一定相等D.可以用字符串初始化字符數(shù)組答案:C解析:字符數(shù)組長度可能大于存儲(chǔ)的字符串長度。45.若有定義int*p,arr[5]={1,3,5,7,9};p=&arr[2];則*p的值是()A.1B.3C.5D.7答案:C解析:p指向arr[2],*p就是該元素的值5。46.以下關(guān)于函數(shù)遞歸調(diào)用的說法,錯(cuò)誤的是()A.遞歸調(diào)用必須有終止條件B.遞歸調(diào)用會(huì)增加系統(tǒng)開銷C.遞歸調(diào)用可以解決所有問題D.遞歸調(diào)用是函數(shù)自己調(diào)用自己答案:C解析:遞歸調(diào)用雖然能解決很多問題,但不是所有問題,且必須有終止條件,會(huì)增加系統(tǒng)開銷。47.若有結(jié)構(gòu)體定義structDate{intyear;intmonth;intday;};要訪問結(jié)構(gòu)體變量d的month成員,正確的是()A.d.yearB.d.monthC.d.dayD.d(Date).month答案:B解析:通過“.”運(yùn)算符訪問結(jié)構(gòu)體變量的成員,訪問month成員用d.month。48.以下關(guān)于預(yù)編譯指令的說法,正確的是()A.預(yù)編譯指令是在程序運(yùn)行時(shí)執(zhí)行的B.#define指令可以定義變量C.#include指令用于包含頭文件D.預(yù)編譯指令可以出現(xiàn)在函數(shù)內(nèi)部答案:C解析:預(yù)編譯指令在編譯預(yù)處理時(shí)執(zhí)行,#define定義宏,#include用于包含頭文件,預(yù)編譯指令一般在文件開頭,不在函數(shù)內(nèi)部。49.若有inta=10,b=20;執(zhí)行語句a=a+b;b=a-b;a=a-b;后,a和b的值分別是()A.10,20B.20,10C.30,10D.0,30答案:B解析:通過數(shù)學(xué)運(yùn)算實(shí)現(xiàn)a和b值的交換。50.以下關(guān)于for循環(huán)嵌套的說法,正確的是()A.外層循環(huán)執(zhí)行一次,內(nèi)層循環(huán)執(zhí)行完所有次數(shù)B.內(nèi)層循環(huán)執(zhí)行一次,外層循環(huán)執(zhí)行完所有次數(shù)C.內(nèi)外層循環(huán)的執(zhí)行次數(shù)沒有關(guān)系D.嵌套循環(huán)只能有兩層答案:A解析:外層循環(huán)執(zhí)行一次,內(nèi)層循環(huán)完整執(zhí)行一遍,嵌套循環(huán)可以有多層。51.若有函數(shù)定義doublefun(doublex){returnx*x;}調(diào)用該函數(shù)計(jì)算2.5的平方,正確的是()A.doubleresult=fun(2.5);B.fun(2.5)=result;C.result=fun(2.5*2.5);D.fun(2.5,2.5);答案:A解析:調(diào)用函數(shù)計(jì)算2.5的平方,將返回值賦給變量result。52.若有數(shù)組定義charstr[20];要輸入一個(gè)字符串到該數(shù)組,正確的是()A.scanf("%c",str);B.scanf("%s",str);C.scanf("%d",str);D.gets(str,20);答案:B解析:scanf("%s",str)可以輸入一個(gè)字符串到字符數(shù)組,A選項(xiàng)輸入單個(gè)字符,C選項(xiàng)輸入整數(shù),gets函數(shù)沒有第二個(gè)參數(shù)。53.以下關(guān)于指針數(shù)組的說法,正確的是()A.指針數(shù)組的元素都是指針B.指針數(shù)組只能存儲(chǔ)整數(shù)指針C.指針數(shù)組不能進(jìn)行初始化D.指針數(shù)組的大小是固定的,不能改變答案:A解析:指針數(shù)組的元素都是指針,可以存儲(chǔ)不同類型指針,可以初始化,大小在定義時(shí)確定。54.若有定義structStudent{charname[20];intage;}s={"Tom",18};則s.age的值是()A."Tom"B.18C.20D.不確定答案:B解析:通過“.”運(yùn)算符訪問結(jié)構(gòu)體變量的成員,s.age的值是18。55.以下關(guān)于位運(yùn)算符&的說法,正確的是()A.按位與運(yùn)算符,對應(yīng)位都為1結(jié)果才為1B.按位或運(yùn)算符,對應(yīng)位有一個(gè)為1結(jié)果就為1C.按位異或運(yùn)算符,對應(yīng)位相同結(jié)果為1D.取反運(yùn)算符,將每一位取反答案:A解析:&是按位與運(yùn)算符,對應(yīng)位都為1結(jié)果才為1。56.若有inta=5,b=3;則表達(dá)式(a&b)的值是()A.1B.2C.3D.5答案:A解析:5的二進(jìn)制是101,3的二進(jìn)制是011,按位與結(jié)果是001,即1。57.以下關(guān)于文件讀寫操作的說法,錯(cuò)誤的是()A.fread函數(shù)可以從文件中讀取數(shù)據(jù)B.fwrite函數(shù)可以向文件中寫入數(shù)據(jù)C.fscanf函數(shù)只能讀取整數(shù)數(shù)據(jù)D.fprintf函數(shù)可以向文件中寫入格式化數(shù)據(jù)答案:C解析:fscanf函數(shù)可以讀取多種類型數(shù)據(jù),不只是整數(shù)。58.若有定義int*p,arr[5]={1,3,5,7,9};p=arr+3;則*p的值是()A.1B.3C.5D.7答案:D解析:p指向arr[3],*p就是7。59.以下關(guān)于函數(shù)重載的說法,錯(cuò)誤的是()A.C語言不支持函數(shù)重載B.函數(shù)重載是指函數(shù)名相同但參數(shù)不同C.函數(shù)重載可以提高代碼的復(fù)用性D.函數(shù)重載的返回值類型必須不同答案:D解析:C語言不支持函數(shù)重載,函數(shù)重載是函數(shù)名相同參數(shù)不同,與返回值類型無關(guān),可提高代碼復(fù)用性。60.若有inta=10;執(zhí)行語句a>>=2;后,a的值是()A.2B.3C.4D.5答案:C解析:a>>=2表示a右移2位,10的二進(jìn)制是1010,右移2位是0010,即4。61.以下關(guān)于while循環(huán)和do-while循環(huán)的區(qū)別,正確的是()A.while循環(huán)先判斷條件,do-while循環(huán)后判斷條件B.while循環(huán)的循環(huán)體至少執(zhí)行一次,do-while循環(huán)不一定C.while循環(huán)不能嵌套,do-while循環(huán)可以D.while循環(huán)沒有循環(huán)控制變量,do-while循環(huán)有答案:A解析:while循環(huán)先判斷條件,條件為真才執(zhí)行循環(huán)體;do-while循環(huán)先執(zhí)行循環(huán)體,再判斷條件。62.若有函數(shù)定義voidfun(inta[],intn){for(inti=0;i<n;i++)a[i]*=2;}調(diào)用該函數(shù)時(shí),實(shí)參傳遞的是()A.數(shù)組元素的值B.數(shù)組首元素的地址C.數(shù)組的長度D.函數(shù)名答案:B解析:函數(shù)參數(shù)是數(shù)組名,調(diào)用時(shí)傳遞數(shù)組首元素的地址。63.若有數(shù)組定義intarr[3][2]={{1,2},{3,4},{5,6}};則arr[2][1]的值是()A.1B.4C.5D.6答案:D解析:arr[2][1]是第三行第二列元素,值為6。64.以下關(guān)于字符串比較的說法,正確的是()A.可以用==直接比較兩個(gè)字符串是否相等B.strcmp函數(shù)比較字符串時(shí),相等返回0C.strcmp函數(shù)比較字符串時(shí),按字符的ASCII碼值從后往前比較D.字符串比較只能用strcmp函數(shù)答案:B解析:不能用==直接比較字符串,strcmp函數(shù)相等返回0,按字符ASCII碼值從前往后比較,也可以自己寫比較函數(shù)。65.若有定義int*p,a=20;p=&a;則p++操作后,p指向的地址()A.不變B.增加1C.增加sizeof(int)D.變?yōu)殡S機(jī)地址答案:C解析:指針p移動(dòng)一個(gè)單位,地址增加sizeof(int)。66.以下關(guān)于共用體和結(jié)構(gòu)體的區(qū)別,正確的是()A.共用體的成員共享內(nèi)存,結(jié)構(gòu)體的成員不共享B.共用體的大小是所有成員大小之和,結(jié)構(gòu)體是最大成員大小C.共用體和結(jié)構(gòu)體的成員訪問方式不同D.共用體和結(jié)構(gòu)體沒有區(qū)別答案:A解析:共用體成員共享內(nèi)存,結(jié)構(gòu)體成員不共享,共用體大小是最大成員大小,二者成員訪問方式相同。67.若有定義#definePI3.14則在程序中PI是()A.變量B.常量C.函數(shù)D.數(shù)組答案:B解析:#define定義的是宏常量,PI是常量。68.以下關(guān)于函數(shù)參數(shù)傳遞的說法,錯(cuò)誤的是()A.可以傳遞數(shù)組作為函數(shù)參數(shù)B.可以傳遞指針作為函數(shù)參數(shù)C.函數(shù)參數(shù)傳遞只能是值傳遞D.可以傳遞結(jié)構(gòu)體變量作為函數(shù)參數(shù)答案:C解析:函數(shù)參數(shù)傳遞有值傳遞和地址傳遞,可傳遞數(shù)組、指針、結(jié)構(gòu)體變量等。69.若有inta=5,b=7;則表達(dá)式(a|b)的值是()A.5B.7C.3D.7答案:B解析:5的二進(jìn)制是101,7的二進(jìn)制是111,按位或結(jié)果是111,即7。70.以下關(guān)于文件打開模式的說法,正確的是()A."r"模式只能打開文本文件B."w"模式打開文件時(shí),如果文件不存在會(huì)報(bào)錯(cuò)C."a"模式打開文件時(shí),文件指針在文件開頭D."rb"模式用于以二進(jìn)制讀模式打開文件答案:D解析:"r"可打開多種文件,"w"模式文件不存在會(huì)創(chuàng)建,"a"模式文件指針在文件末尾,"rb"是二進(jìn)制讀模式。71.若有定義intarr[5]={1,2,3,4,5};int*p=arr+1;則*(p+2)的值是()A.1B.3C.4D.5答案:C解析:p指向arr[1],p+2指向arr[3],*(p+2)就是4。72.以下關(guān)于遞歸函數(shù)的終止條件,正確的是()A.可以沒有終止條件B.終止條件必須在函數(shù)開頭判斷C.終止條件是為了避免無限遞歸D.終止條件只對遞歸深度有影響答案:C解析:遞歸函數(shù)必須有終止條件,避免無限遞歸,終止條件位置不固定,對遞歸是否正常結(jié)束有影響。73.若有結(jié)構(gòu)體定義structPoint{intx;inty;};structPointp={3,4};則p.x+p.y的值是()A.3B.4C.7D.不確定答案:C解析:p.x是3,p.y是4,p.x+p.y是7。74.以下關(guān)于預(yù)編譯指令#ifdef的說法,正確的是()A.用于判斷某個(gè)宏是否定義B.用于定義新的宏C.用于包含頭文件D.用于進(jìn)行條件編譯答案:A解析:#ifdef用于判斷某個(gè)宏是否定義,配合#else、#endif進(jìn)行條件編譯。75.若有inta=8;執(zhí)行語句a&=3;后,a的值是()A.0B.1C.2D.3答案:A解析:8的二進(jìn)制是1000,3的二進(jìn)制是0011,按位與結(jié)果是0000,即0。76.以下關(guān)于for循環(huán)的初始化部分,正確的是()A.只能初始化一個(gè)變量B.可以初始化多個(gè)變量C.不能初始化變量D.初始化變量必須是整數(shù)類型答案:B解析:for循環(huán)初始化部分可以初始化多個(gè)變量,變量類型也不局限于整數(shù)。77.若有函數(shù)定義intfun(inta,intb){returna>b?a:b;}調(diào)用該函數(shù)求3和5的最大值,正確的是()A.intresult=fun(3,5);B.fun(3,5)=result;C.result=fun(3*5);D.fun(3,5,7);答案:A解析:調(diào)用函數(shù)求3和5最大值,將返回值賦給變量result。78.若有數(shù)組定義charstr[]="hello";要輸出該字符串,正確的是()A.printf("%c",str);B.printf("%s",str);C.printf("%d",str);D.puts(str[0]);答案:B解析:printf("%s",str)可以輸出字符串,A選項(xiàng)輸出單個(gè)字符,C選項(xiàng)輸出整數(shù),puts函數(shù)參數(shù)是字符串首地址。79.以下關(guān)于指針和數(shù)組的關(guān)系,正確的是()A.數(shù)組名就是指針B.指針可以指向數(shù)組元素C.數(shù)組和指針完全相同D.指針不能對數(shù)組進(jìn)行操作答案:B解析:數(shù)組名代表數(shù)組首元素地址,但和指針有區(qū)別,指針可以指向數(shù)組元素并對數(shù)組操作。80.若有定義structDate{intyear;intmonth;intday;}d1={2023,10,1},d2;d2=d1;則d2.month的值是()A.2023B.10C.1D.不確定答案:B解析:結(jié)構(gòu)體變量可以整體賦值,d2.month和d1.month值相同為10。81.以下關(guān)于位運(yùn)算符^的說法,正確的是()A.按位與運(yùn)算符,對應(yīng)位都為1結(jié)果才為1B.按位或運(yùn)算符,對應(yīng)位有一個(gè)為1結(jié)果就為1C.按位異或運(yùn)算符,對應(yīng)位相同結(jié)果為0,不同為1D.取反運(yùn)算符,將每一位取反答案:C解析:^是按位異或運(yùn)算符,對應(yīng)位相同結(jié)果為0,不同為1。82.若有inta=6,b=3;則表達(dá)式(a^b)的值是()A.3B.5C.6D.9答案:B解析:6的二進(jìn)制是110,3的二進(jìn)制是011,按位異或結(jié)果是101,即5。83.以下關(guān)于文件關(guān)閉操作的說法,錯(cuò)誤的是()A.文件操作結(jié)束后必須關(guān)閉文件B.fclose函數(shù)用于關(guān)閉文件C.關(guān)閉文件可以釋放系統(tǒng)資源D.不關(guān)閉文件不會(huì)有任何影響答案:D解析:文件操作結(jié)束后要關(guān)閉文件,用fclose函數(shù),不關(guān)閉會(huì)浪費(fèi)系統(tǒng)資源。84.若有定義int*p,arr[4]={10,20,30,40};p=arr+2;則*--p的值是()A.10B.20C.30D.40答案:B解析:p指向arr[2],--p指向arr[1],*--p就是20。85.以下關(guān)于函數(shù)的存儲(chǔ)類別,正確的是()A.函數(shù)默認(rèn)是外部函數(shù)B.靜態(tài)函數(shù)只能在本文件中調(diào)用C.外部函數(shù)可以被其他文件調(diào)用D.以上都對答案:D解析:函數(shù)默認(rèn)是外部函數(shù),靜態(tài)函數(shù)作用域是本文件,外部函數(shù)可被其他文件調(diào)用。86.若有inta=12;執(zhí)行語句a<<=1;后,a的值是()A.6B.12C.24D.1答案:C解析:a<<=1表示a左移1位,12左移1位是24。87.以下關(guān)于do-while循環(huán)和for循環(huán)的轉(zhuǎn)換,正確的是()A.所有do-while循環(huán)都能轉(zhuǎn)換成for循環(huán)B.所有for循環(huán)都能轉(zhuǎn)換成do-while循環(huán)C.轉(zhuǎn)換后循環(huán)的執(zhí)行次數(shù)一定不變D.轉(zhuǎn)換時(shí)不需要考慮循環(huán)控制變量的變化答案:A解析:理論上所有的do-while循環(huán)都能轉(zhuǎn)換成for循環(huán),反之亦然,但轉(zhuǎn)換時(shí)需要考慮循環(huán)控制變量的變化以及循環(huán)條件等,且轉(zhuǎn)換后循環(huán)執(zhí)行次數(shù)可能因邏輯處理不同而改變。88.若有函數(shù)定義voidswap(int*x,int*y){inttemp=*x;*x=*y;*y=temp;}調(diào)用該函數(shù)交換變量a和b的值,正確的是()A.swap(a,b);B.swap(&a,&b);C.swap(*a,*b);D.swap(&a[0],&b[0]);答案:B解析:函數(shù)參數(shù)是指針,調(diào)用時(shí)要傳遞變量的地址,所以應(yīng)傳遞&a和&b。89.若有數(shù)組定義intarr[2][3]={{1,2,3},{4,5,6}};要訪問數(shù)組中所有元素,以下循環(huán)結(jié)構(gòu)正確的是()A.for(inti=0;i<2;i++){for(intj=0;j<3;j++)printf("%d",arr[i][j]);}B.for(inti=0;i<3;i++){for(intj=0;j<2;j++)printf("%d",arr[i][j]);}C.for(inti=0;i<2;i++){for(intj=0;j<2;j++)printf("%d",arr[i][j]);}D.for(inti=0;i<3;i++){for(intj=0;j<3;j++)printf("%d",arr[i][j]);}答案:A解析:二維數(shù)組arr有2行3列,外層循環(huán)控制行,內(nèi)層循環(huán)控制列,所以外層循環(huán)i從0到1,內(nèi)層循環(huán)j從0到2。90.以下關(guān)于字符串長度和字符數(shù)組長度的說法,錯(cuò)誤的是()A.字符串長度不包括結(jié)束符'\0'B.字符數(shù)組長度一定等于字符串長度C.可以用strlen函數(shù)計(jì)算字符串長度D.字符數(shù)組長度可以大于字符串長度答案:B解析:字符串長度不包括'\0',可用strlen函數(shù)計(jì)算,字符數(shù)組長度可以大于存儲(chǔ)的字符串長度。91.若有定義int*p,arr[5]={2,4,6,8,10};p=arr;則*(p+4)的值
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 神經(jīng)外科的試題及答案
- 2024年紡織品設(shè)計(jì)師資源整合試題及答案
- 如何準(zhǔn)確把握國際商業(yè)美術(shù)設(shè)計(jì)師考試的設(shè)計(jì)方向與試題及答案
- 2024廣告設(shè)計(jì)師設(shè)計(jì)理念試題及答案
- 直擊要點(diǎn)國際商業(yè)美術(shù)設(shè)計(jì)師試題及答案
- 2024年紡織工程師考試的組織優(yōu)化試題及答案
- 大一臨床檢驗(yàn)試題及答案
- 助理廣告師考試社會(huì)經(jīng)驗(yàn)與職業(yè)技能結(jié)合試題及答案
- 中考沖刺數(shù)學(xué)試題及答案
- 2024年紡織工程師考試全景規(guī)劃試題及答案
- 和歌手合作合同協(xié)議
- 2025年北京市豐臺(tái)區(qū)九年級初三一模道德與法治試卷(含答案)
- 2024年甘肅酒泉事業(yè)單位招聘考試真題答案解析
- 甘肅酒泉事業(yè)單位考試筆試含答案2024
- 七下生物考試試卷及答案
- 財(cái)產(chǎn)險(xiǎn)試題庫及答案
- 課題開題報(bào)告:職業(yè)教育市域產(chǎn)教聯(lián)合體運(yùn)行邏輯與監(jiān)測評估機(jī)制研究
- 湖南新高考教學(xué)教研聯(lián)盟暨長郡二十校聯(lián)盟2025屆高三年級第二次聯(lián)考物理試題及答案
- 商品出庫管理規(guī)范
- 2025山東煙臺(tái)市蓬萊區(qū)城市建設(shè)投資集團(tuán)有限公司招聘22人筆試參考題庫附帶答案詳解
- 建筑勞務(wù)公司人事管理制度
評論
0/150
提交評論