版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
c語言理論考試題第一部分單選題(50題)1、C語言程序編譯的正確順序是?()
A.預(yù)處理→編譯→匯編→鏈接
B.編譯→預(yù)處理→匯編→鏈接
C.預(yù)處理→匯編→編譯→鏈接
D.鏈接→編譯→匯編→預(yù)處理
【答案】:答案解析:C程序編譯流程為預(yù)處理(處理#命令)→編譯(生成匯編代碼)→匯編(生成目標文件)→鏈接(生成可執(zhí)行文件),故選A。2、以下指針與函數(shù)的關(guān)系正確的是?()
A.函數(shù)名是函數(shù)的地址
B.函數(shù)指針可指向函數(shù)
C.可通過函數(shù)指針調(diào)用函數(shù)
D.以上都正確
【答案】:答案解析:A、B、C均是函數(shù)與指針的基本關(guān)系,故選D。3、若inti=0;執(zhí)行do{i++;printf("%d",i);}while(i<=2);輸出結(jié)果是?()
A.123
B.012
C.12
D.無輸出
【答案】:答案解析:do-while執(zhí)行3次,i=1、2、3,輸出123,故選A。4、若inta=10;執(zhí)行if(a%2==0)printf("偶數(shù)");elseprintf("奇數(shù)");輸出結(jié)果是?()
A.偶數(shù)
B.奇數(shù)
C.10
D.無輸出
【答案】:答案解析:a=10%2=0,條件為真,輸出偶數(shù),故選A。5、若inti=0;執(zhí)行for(i=0;i<5;i++){if(i==2)continue;printf("%d",i);}輸出結(jié)果是?()
A.0134
B.01234
C.01
D.無限循環(huán)
【答案】:答案解析:i=2時執(zhí)行continue,跳過printf,輸出0134,故選A。6、轉(zhuǎn)義字符\的作用是?()
A.表示反斜杠
B.表示換行
C.表示空格
D.表示制表符
【答案】:答案解析:\用于表示字符反斜杠(\),避免與轉(zhuǎn)義字符沖突,故選A。7、while循環(huán)的語法格式正確的是?()
A.while(條件)語句;
B.while條件語句;
C.while(條件);語句;
D.while(條件){語句}
【答案】:答案解析:while后條件需加括號,語句可是單條(加分號)或代碼塊(用{}),D缺少分號,故選A。8、以下函數(shù)參數(shù)為指針的是?()
A.voidfun(int*a){}
B.voidfun(inta){}
C.voidfun(inta[]){}
D.A和C
【答案】:答案解析:A是指針參數(shù),C數(shù)組名參數(shù)本質(zhì)是指針,B是值參數(shù),故選D。9、若inta[5]={1,2,3,4,5},p=a;執(zhí)行p+=2;后p的值是?()
A.2
B.3
C.4
D.5
【答案】:答案解析:p+=2使p指向a[2],*p=3,故選B。10、以下for循環(huán)中,循環(huán)變量初始化、條件判斷、更新表達式均正確的是?()
A.for(i=0;i<5;i++)
B.for(i=5;i>0;i--)
C.for(i=0;i<5;i+=2)
D.以上都正確
【答案】:答案解析:A(遞增)、B(遞減)、C(步長2)的三個表達式均合法,循環(huán)邏輯正確,故選D。11、若inta=3,b=5;執(zhí)行以下代碼后輸出結(jié)果是?()if(a>b)printf("A");elseprintf("B");
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:a=3<b=5,條件為假,執(zhí)行else分支,輸出B,故選B。12、以下轉(zhuǎn)義字符表示換行的是?()
A.\t
B.\n
C.\
D.\r
【答案】:答案解析:\t是制表符,\n是換行符,\是反斜杠,\r是回車符,故選B。13、以下數(shù)組定義錯誤的是?()
A.inta[0];
B.inta[5];
C.inta[]={1,2,3};
D.inta[5]={1,2,3};
【答案】:答案解析:數(shù)組長度不能為0,編譯報錯,其余正確,故選A。14、若inti=1;執(zhí)行do{printf("%d",i);i++;}while(i<=3);輸出結(jié)果是?()
A.123
B.1234
C.012
D.無輸出
【答案】:答案解析:do-while先執(zhí)行一次(輸出1,i=2),再判斷,共執(zhí)行3次,輸出123,故選A。15、以下哪個關(guān)鍵字用于定義整型變量?()
A.char
B.int
C.float
D.double
【答案】:答案解析:int定義整型,char字符型,float單精度浮點型,double雙精度浮點型,故選B。16、以下關(guān)于return語句的說法正確的是?()
A.函數(shù)中可有多條return語句
B.函數(shù)中必須有return語句
C.return語句必須在函數(shù)末尾
D.return語句只能返回一個值
【答案】:答案解析:A函數(shù)中可有多條return(如條件判斷后返回),Bvoid函數(shù)可無return,Creturn可在任意位置,Dreturn只能返回一個值(返回多個值需用指針/數(shù)組),故選A。17、以下關(guān)于數(shù)組的說法正確的是?()
A.數(shù)組下標從1開始
B.數(shù)組名可作為左值賦值
C.數(shù)組長度定義后不可修改
D.數(shù)組元素類型可不同
【答案】:答案解析:數(shù)組下標從0開始,數(shù)組名是常量(不可賦值),元素類型必須相同,長度定義后固定,故選C。18、若int*p=(int)malloc(sizeof(int));則p的值是?()
A.0
B.隨機值
C.1
D.無定義
【答案】:答案解析:malloc分配的內(nèi)存未初始化,值為隨機值,故選B。19、以下switch語句中,正確使用字符常量的是?()
A.switch(c){case'A':printf("A");break;}
B.switch(c){caseA:printf("A");break;}
C.switch(c){case"A":printf("A");break;}
D.switch(c){case'a':'b':printf("ab");break;}
【答案】:答案解析:字符常量用單引號,B是標識符,C是字符串,D語法錯誤(多個case需分開),故選A。20、若inta[5]={1,2,3,4,5};則*(a+4)的值是?()
A.4
B.5
C.1
D.2
【答案】:答案解析:a+4是第五個元素地址,*(a+4)=a[4]=5,故選B。21、二維數(shù)組a[3][4]的元素個數(shù)是?()
A.7
B.12
C.3
D.4
【答案】:答案解析:3行4列,共3×4=12個元素,故選B。22、以下for循環(huán)中,循環(huán)變量更新表達式為“i-=2”的是?()
A.for(i=10;i>0;i-=2)
B.for(i=0;i<10;i+=2)
C.for(i=10;i>0;i--)
D.for(i=0;i<10;i=2)
【答案】:答案解析:i-=2等價于i=i-2,A的更新表達式正確,故選A。23、函數(shù)返回值通過______語句返回?()
A.printf
B.scanf
C.return
D.break
【答案】:答案解析:return語句用于函數(shù)返回值,printf輸出,scanf輸入,break跳出循環(huán)/switch,故選C。24、函數(shù)參數(shù)為數(shù)組時,形參的寫法錯誤的是?()
A.inta[]
B.int*a
C.inta[5]
D.inta
【答案】:答案解析:D中inta是普通變量,不能接收數(shù)組名(地址),A、B、C均正確,故選D。25、若inta=4;執(zhí)行a-=2;后a的值是?()
A.2
B.4
C.6
D.0
【答案】:答案解析:a-=2等價于a=a-2,4-2=2,故選A。26、以下哪個if語句的條件是“x是偶數(shù)且x大于10”?()
A.if(x%2==0&&x>10)
B.if(x%2=0&&x>10)
C.if(x%2==0||x>10)
D.if(x%2=0||x>10)
【答案】:答案解析:偶數(shù)判斷用x%2==0,邏輯與用&&,B是賦值,C、D是邏輯或,故選A。27、函數(shù)返回值的類型由______決定?()
A.return語句中的表達式類型
B.函數(shù)定義時的返回類型
C.函數(shù)調(diào)用時的參數(shù)類型
D.編譯器默認類型
【答案】:答案解析:函數(shù)返回類型在定義時指定,return表達式類型需與返回類型匹配(不匹配則強制轉(zhuǎn)換),故選B。28、函數(shù)參數(shù)的默認值在______指定?()
A.函數(shù)定義時
B.函數(shù)聲明時
C.函數(shù)調(diào)用時
D.C語言不支持默認參數(shù)
【答案】:答案解析:標準C語言不支持函數(shù)參數(shù)默認值(C++支持),故選D。29、若inti=0,s=0;執(zhí)行for(i=1;i<=4;i++)s+=i;后s的值是?()
A.10
B.9
C.8
D.7
【答案】:答案解析:累加1+2+3+4=10,s=10,故選A。30、執(zhí)行scanf("%d,%d",&a,&b);時,正確的輸入格式是?()
A.23
B.2;3
C.2,3
D.2和3
【答案】:答案解析:scanf格式串中含逗號分隔符,輸入需嚴格對應(yīng),故選C。31、數(shù)組名作為函數(shù)參數(shù)時,函數(shù)形參的正確寫法是?()
A.inta[]
B.int*a
C.inta[5]
D.以上都是
【答案】:答案解析:數(shù)組形參可寫為inta[]、int*a(指針)、inta[5](長度可忽略),本質(zhì)均為指針,故選D。32、以下哪個表達式可訪問數(shù)組a的第i個元素(i從1開始)?()
A.a[i]
B.a[i-1]
C.*(a+i)
D.*(a+i-1)
【答案】:答案解析:數(shù)組下標從0開始,第i個元素對應(yīng)下標i-1,a[i-1]正確,C、D是指針訪問(對應(yīng)下標i),故選B。33、以下函數(shù)無返回值的是?()
A.intfun(){return0;}
B.voidfun(){printf("hello");}
C.floatfun(){return3.14;}
D.charfun(){return'b';}
【答案】:答案解析:void類型函數(shù)無返回值,A、C、D均有返回值,故選B。34、若inta=4;執(zhí)行if(a--<4)printf("A");elseprintf("B");輸出結(jié)果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:a--是后置自減,條件判斷時a=4,4<4為假,執(zhí)行else(輸出B),后a變?yōu)?,故選B。35、若inti=0;執(zhí)行for(i=0;i<5;i++){if(i%2==0)continue;printf("%d",i);}輸出結(jié)果是?()
A.13
B.024
C.01234
D.無輸出
【答案】:答案解析:i為偶數(shù)(0、2、4)時continue,輸出奇數(shù)1、3,故選A。36、若inta[5]={1,2,3,4,5};則a[5]是?()
A.5
B.0
C.越界訪問
D.無定義
【答案】:答案解析:a[5]下標超出0-4范圍,屬于越界訪問(可能導(dǎo)致程序錯誤),故選C。37、以下if語句的語法正確的是?()
A.if(x>0){printf("a");elseprintf("b");}
B.if(x>0)printf("a");else{printf("b");}
C.if(x>0)printf("a");elseprintf("b");}
D.if(x>0){printf("a");}elseprintf("b");}
【答案】:答案解析:A缺少},C多},D多},B語法正確(else后{}可加可不加),故選B。38、以下哪個賦值語句是正確的?()
A.inta=5;
B.a=5;
C.inta=b=5;
D.a=b=5;
【答案】:答案解析:B、D未定義變量,C不能連續(xù)賦值定義,A定義并賦值正確,故選A。39、指針作為函數(shù)返回值時,不能返回?()
A.靜態(tài)局部變量的地址
B.全局變量的地址
C.動態(tài)分配內(nèi)存的地址
D.局部變量的地址
【答案】:答案解析:局部變量在函數(shù)調(diào)用結(jié)束后釋放,返回其地址會導(dǎo)致野指針,故選D。40、定義整型變量x、y并均賦值10的語句是?()
A.intx=y=10;
B.intx=10,y=10;
C.intx=10;y=10;
D.intx=10;inty=10;
【答案】:答案解析:同一行定義多個變量用逗號分隔,A不能連續(xù)賦值,C缺少int,D是兩行定義,故選B。41、以下if語句中,條件表達式正確的是?()
A.if(x=5)printf("yes");
B.if(x==5)printf("yes");
C.if(x=5;)printf("yes");
D.if(x==5;)printf("yes");
【答案】:答案解析:if條件需是判斷表達式(==),A是賦值,C、D多加分號,故選B。42、以下函數(shù)定義中,參數(shù)為兩個int類型的是?()
A.voidfun(inta,floatb){}
B.voidfun(inta,intb){}
C.voidfun(floata,intb){}
D.voidfun(inta,charb){}
【答案】:答案解析:B中兩個參數(shù)均為int類型,其余選項參數(shù)類型不匹配,故選B。43、continue語句只能用于以下哪種結(jié)構(gòu)?()
A.循環(huán)語句
B.switch語句
C.if語句
D.所有結(jié)構(gòu)
【答案】:答案解析:continue僅用于循環(huán)語句(for/while/do-while),用于跳過本次循環(huán),故選A。44、若charstr[10];執(zhí)行strcpy(str,"hello");后str的長度是?()
A.5
B.6
C.10
D.不確定
【答案】:答案解析:strcpy復(fù)制字符串"hello"(含\0),長度為5(不含\0),故選A。45、以下關(guān)于函
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- (2026年)護理教學(xué)查房規(guī)范與實施課件
- 未來五年新形勢下醫(yī)用敷料行業(yè)順勢崛起戰(zhàn)略制定與實施分析研究報告
- 未來五年脫殼燕麥企業(yè)縣域市場拓展與下沉戰(zhàn)略分析研究報告
- 未來五年聲學(xué)器件企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略分析研究報告
- 未來五年樺樹類樹苗企業(yè)ESG實踐與創(chuàng)新戰(zhàn)略分析研究報告
- 未來五年棉花稈企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級戰(zhàn)略分析研究報告
- 移動通訊安全培訓(xùn)課件
- 風(fēng)機基礎(chǔ)施工施工方案
- 生物九年級《呼吸道病原體檢測》教學(xué)設(shè)計
- 循經(jīng)典敘事練思維表達-外研版八年級英語上冊Module7‘一個著名的故事’單元整體教學(xué)設(shè)計
- 原發(fā)性骨髓纖維化2026
- 半導(dǎo)體廠務(wù)項目工程管理 課件 項目6 凈化室系統(tǒng)的設(shè)計與維護
- 河南省洛陽強基聯(lián)盟2025-2026學(xué)年高二上學(xué)期1月月考英語試題含答案
- 2026年中考數(shù)學(xué)模擬試卷試題匯編-尺規(guī)作圖
- 玻璃鋼水箱安裝詳細技術(shù)方案
- 山東省煙臺市開發(fā)區(qū)2024-2025學(xué)年上學(xué)期期末八年級數(shù)學(xué)檢測題(含答案)
- 桂花香包制作課件
- 社會工作本科畢業(yè)論文
- (2025年)架子工考試模擬題(帶答案)
- 開題報告 建筑工程質(zhì)量管理問題研究
- 清淤工程分包合同范本
評論
0/150
提交評論