版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
C語言期末試題北京卷第一部分單選題(50題)1、shortint類型的有符號取值范圍是?()
A.0~65535
B.-32768~32767
C.-2147483648~2147483647
D.無固定范圍
【答案】:答案解析:16位shortint有符號取值標準為-32768~32767,無符號為0~65535,故選B。2、邏輯表達式!0的結果是?()
A.0
B.1
C.真
D.假
【答案】:答案解析:C語言中非0為真,!是邏輯非,!0(假)結果為1(真),故選B。3、若charstr[10];執(zhí)行strcpy(str,"hello");后str的長度是?()
A.5
B.6
C.10
D.不確定
【答案】:答案解析:strcpy復制字符串"hello"(含\0),長度為5(不含\0),故選A。4、以下關于指針的說法正確的是?()
A.野指針是指向無效地址的指針
B.空指針是野指針的一種
C.避免野指針需初始化并及時置空
D.以上都正確
【答案】:答案解析:A、B、C均是野指針的核心知識點,故選D。5、若charstr[10]="abcde";則str[5]的值是?()
A.'e'
B.'\0'
C.隨機值
D.無定義
【答案】:答案解析:字符串自動在末尾加\0,str[5]是\0,故選B。6、以下關于指針數(shù)組的定義正確的是?()
A.int*arr[5];
B.int(*arr)[5];
C.intarr[5];
D.intarr[];
【答案】:答案解析:A是指針數(shù)組(5個int指針),B是指向數(shù)組的指針,C是普通數(shù)組,D缺少長度,故選A。7、若inti=0;執(zhí)行for(;;){if(i==4)break;printf("%d",i);i++;}輸出結果是?()
A.0123
B.01234
C.無限循環(huán)
D.無輸出
【答案】:答案解析:for(;;)是無限循環(huán),i=4時break,輸出0123,故選A。8、以下if語句中,邏輯運算符使用正確的是?()
A.if(x>3&&x<7)
B.if(x>3&x<7)
C.if(x>3|||x<7)
D.if(x>3||x<7)
【答案】:答案解析:邏輯與用&&,邏輯或用||,B是按位與,C多寫||,D邏輯錯誤(x>3或x<7恒為真),故選A。9、若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。10、若intx=6;執(zhí)行以下代碼后輸出結果是?()if(x<5){printf("A");}elseif(x<8){printf("B");}else{printf("C");}
A.A
B.B
C.C
D.無輸出
【答案】:答案解析:x=6<8,執(zhí)行第二個分支,輸出B,故選B。11、指針與數(shù)組的關系,以下說法正確的是?()
A.數(shù)組名是常量指針,不能自增
B.指針可指向數(shù)組元素,通過指針遍歷數(shù)組
C.p[i]等價于*(p+i)
D.以上都正確
【答案】:答案解析:數(shù)組名是首元素地址(常量,不可自增),指針可遍歷數(shù)組,p[i]與*(p+i)等價,故選D。12、以下關于數(shù)組的說法正確的是?()
A.數(shù)組長度可動態(tài)修改
B.數(shù)組元素可不同類型
C.數(shù)組在內(nèi)存中連續(xù)存儲
D.數(shù)組名可作為左值賦值
【答案】:答案解析:A數(shù)組長度定義后固定,B元素必須同類型,D數(shù)組名是常量(不可賦值),C正確,故選C。13、若inta[5]={10,20,30,40,50};則a[2]的值是?()
A.10
B.20
C.30
D.40
【答案】:答案解析:數(shù)組下標從0開始,a[2]是第三個元素30,故選C。14、while循環(huán)的語法格式正確的是?()
A.while(條件)語句;
B.while條件語句;
C.while(條件);語句;
D.while(條件){語句}
【答案】:答案解析:while后條件需加括號,語句可是單條(加分號)或代碼塊(用{}),D缺少分號,故選A。15、若inta[5]={1,2,3,4,5};則a[5]是?()
A.5
B.0
C.越界訪問
D.無定義
【答案】:答案解析:a[5]下標超出0-4范圍,屬于越界訪問(可能導致程序錯誤),故選C。16、函數(shù)的形參在______時分配內(nèi)存?()
A.函數(shù)定義
B.函數(shù)聲明
C.函數(shù)調用
D.程序編譯
【答案】:答案解析:形參是局部變量,函數(shù)調用時分配內(nèi)存,調用結束釋放,故選C。17、函數(shù)參數(shù)的默認值在______指定?()
A.函數(shù)定義時
B.函數(shù)聲明時
C.函數(shù)調用時
D.C語言不支持默認參數(shù)
【答案】:答案解析:標準C語言不支持函數(shù)參數(shù)默認值(C++支持),故選D。18、以下函數(shù)返回值類型為int的是?()
A.voidfun(){return;}
B.intfun(){return3.14;}
C.floatfun(){return5;}
D.charfun(){return'a';}
【答案】:答案解析:A返回值類型void(不能return表達式),B返回類型int(3.14強制轉為3),C返回類型float,D返回類型char,故選B。19、以下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。20、以下關于函數(shù)遞歸的說法錯誤的是?()
A.必須有終止條件
B.可能導致棧溢出
C.效率比循環(huán)高
D.代碼簡潔
【答案】:答案解析:遞歸調用會創(chuàng)建棧幀,效率低于循環(huán),A、B、D正確,C錯誤,故選C。21、以下for循環(huán)的循環(huán)變量初始化表達式為“i=5”的是?()
A.for(i=0;i<5;i++)
B.for(i=5;i>0;i--)
C.for(i=2;i<=5;i++)
D.for(i=5;i<10;i+=2)
【答案】:答案解析:初始化表達式是for循環(huán)第一個部分,B中i=5符合,其余初始化非5,故選B。22、若inta=4;執(zhí)行if(a--<4)printf("A");elseprintf("B");輸出結果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:a--是后置自減,條件判斷時a=4,4<4為假,執(zhí)行else(輸出B),后a變?yōu)?,故選B。23、若int*p=(int)malloc(sizeof(int));則p的值是?()
A.0
B.隨機值
C.1
D.無定義
【答案】:答案解析:malloc分配的內(nèi)存未初始化,值為隨機值,故選B。24、數(shù)組名的本質是?()
A.數(shù)組第一個元素的地址
B.數(shù)組最后一個元素的地址
C.數(shù)組元素的個數(shù)
D.數(shù)組的大小
【答案】:答案解析:數(shù)組名是首元素地址(常量,不可修改),故選A。25、以下數(shù)組定義中,長度為5的是?()
A.inta[5];
B.inta[]={1,2,3,4,5};
C.charstr[]="abcd";
D.以上都是
【答案】:答案解析:A長度5,B長度5,C字符串"abcd"含\0共5個字符,故選D。26、以下定義指向字符串的指針正確的是?()
A.char*str="hello";
B.charstr[]="hello";
C.char(*str)[]="hello";
D.charstr[5]="hello";
【答案】:答案解析:A是指向字符串常量的指針,B是字符數(shù)組,C是數(shù)組指針(類型不匹配),D長度不足(含\0需6字節(jié)),故選A。27、putchar()函數(shù)的功能是?()
A.讀取一個字符
B.輸出一個字符
C.讀取字符串
D.輸出字符串
【答案】:答案解析:putchar()用于輸出單個字符,getchar()讀取單個字符,puts()輸出字符串,故選B。28、若inta=7,*p=&a;執(zhí)行++*p;后a的值是?()
A.7
B.8
C.&a
D.無定義
【答案】:答案解析:++*p等價于++(*p),先解引用取a的值,再加1(a=8),故選B。29、若inti=0;執(zhí)行do{printf("%d",i);i++;}while(i<0);輸出結果是?()
A.0
B.無輸出
C.無限循環(huán)
D.01
【答案】:答案解析:do-while先執(zhí)行一次(輸出0,i=1),判斷i<0為假,循環(huán)結束,故選A。30、若inta=3;執(zhí)行if(++a>3)printf("A");elseprintf("B");輸出結果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:++a是前置自增,a變?yōu)?>3,條件為真,輸出A,故選A。31、若intx=2;執(zhí)行switch(x){default:printf("0");case1:printf("1");break;case2:printf("2");case3:printf("3");}輸出結果是?()
A.01
B.23
C.0123
D.無輸出
【答案】:答案解析:x=2匹配case2,無break,穿透到case3,輸出23,故選B。32、若intx=1;執(zhí)行switch(x){case1:printf("1");case2:printf("2");break;case3:printf("3");}輸出結果是?()
A.1
B.12
C.123
D.無輸出
【答案】:答案解析:x=1匹配case1,無break,穿透到case2(執(zhí)行后break),輸出12,故選B。33、以下for循環(huán)中,用于計算1到5的平方和的是?()
A.s=0;for(i=1;i<=5;i++)s+=ii;
B.s=0;for(i=1;i<=5;i++)s+=i2;
C.s=1;for(i=1;i<=5;i++)s*=i;
D.s=0;for(i=1;i<=5;i++)s+=i+i;
【答案】:答案解析:平方和是12+22+32+42+52=1+4+9+16+25=55,A的邏輯正確,故選A。34、若inti=1;執(zhí)行do{printf("%d",i);i++;}while(i<=0);輸出結果是?()
A.1
B.無輸出
C.無限循環(huán)
D.12
【答案】:答案解析:do-while先執(zhí)行一次(輸出1,i=2),再判斷i<=0為假,循環(huán)結束,故選A。35、break語句不能用于以下哪種結構?()
A.for循環(huán)
B.while循環(huán)
C.do-while循環(huán)
D.if語句
【答案】:答案解析:break可用于循環(huán)(for/while/do-while)和switch語句,不能用于if語句,故選D。36、函數(shù)調用時,實參的順序必須與形參的順序?()
A.一致
B.相反
C.無關
D.部分一致
【答案】:答案解析:實參和形參需按順序一一對應(類型、個數(shù)、順序匹配),否則可能導致邏輯錯誤,故選A。37、指針的自增運算(p++)的含義是?()
A.指針值加1
B.指針指向的變量值加1
C.指針指向地址偏移一個類型大小
D.指針指向地址偏移1字節(jié)
【答案】:答案解析:p++使指針指向地址偏移“指向類型大小”(如int指針+4字節(jié)),故選C。38、若inta=3;執(zhí)行if(++a==4)printf("A");elseprintf("B");輸出結果是?()
A.A
B.B
C.AB
D.無輸出
【答案】:答案解析:++a使a=4,條件為真,輸出A,故選A。39、若inta=10,*p=&a,q=p;則q的值是?()
A.10
B.&a
C.p
D.無定義
【答案】:答案解析:q=p使q指向a,*q=10,故選A。40、二維數(shù)組a[2][3]在內(nèi)存中存儲的順序是?()
A.a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2]
B.a[0][0],a[1][0],a[0][1],a[1][1],a[0][2],a[1][2]
C.隨機順序
D.按列存儲
【答案】:答案解析:二維數(shù)組按行優(yōu)先連續(xù)存儲,順序為第一行所有元素,再第二行,故選A。41、指針變量的大小取決于?()
A.指向變量的類型
B.編譯器和系統(tǒng)(32位4字節(jié),64位8字節(jié))
C.指針變量的名稱
D.變量的值
【答案】:答案解析:指針大小與指向類型無關,取決于系統(tǒng)位數(shù)(32位4B,64位8B),故選B。42、若inti=0;執(zhí)行for(i=1;i<=5;i++){if(i%3==0)continue;printf("%d",i);}輸出結果是?()
A.1245
B.12345
C.3
D.無輸出
【答案】:答案解析:i=3時continue,跳過printf,輸出1、2、4、5,故選A。43、若inta[4]={1,2,3,4},p=a;執(zhí)行p++后,*p的值是?()
A.1
B.2
C.3
D.4
【答案】:答案解析:*p++先解引用(值為1),再p自增(指向a[1]),*p=2,故選B。44、以下指針運算中,結果為值的是?()
A.*p
B.p+1
C.&a
D.p-2
【答案】:答案解析:*p是解引用,獲取指針指向變量的值,B、C、D結果均為指針,故選A。45、以下數(shù)組定義中,正確的是?()
A.inta[5];
B.inta[5]={1,2,3,4,5};
C.inta[]={1,2,3,4,5};
D.以上都是
【答案】:答案解析:A、B、C均符合數(shù)組定義規(guī)則,故選D。46、函數(shù)定義的格式是?()
A.返回類型函數(shù)名(參數(shù)列表){函數(shù)體}
B.函數(shù)名(返回類型,參數(shù)列表){函數(shù)體}
C.函數(shù)名(參數(shù)列表)返回類型{函數(shù)體}
D.返回類型函數(shù)名{參數(shù)列表,函數(shù)體}
【答案】:答案解析:函數(shù)定義標準格式為“返回類型函數(shù)名(參數(shù)列表){函數(shù)體}”,故選A。47、以下if語句語法正確的是?(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全國大學生就業(yè)創(chuàng)業(yè)知識競賽試題庫及答案
- 安全生產(chǎn)應知應會采煤部分模擬試題(含參考答案)
- 銀行業(yè)務員考試題及答案
- 低頻電療法操作考試題及答案
- 大修電廠安全試題及答案
- 2026黑龍江鶴崗市鶴北人民法院招聘聘用制人員3人參考題庫必考題
- 豐城市行政事業(yè)單位編外人員招聘【5人】備考題庫附答案
- 興國縣2025年招聘城市社區(qū)專職網(wǎng)格員【23人】參考題庫附答案
- 四川能投高縣綜合能源有限公司2025年招聘工作人員備考題庫必考題
- 廣安區(qū)2025年社會化選聘新興領域黨建工作專員的備考題庫附答案
- 工廠驗收測試(FAT)
- 麻醉藥品、精神藥品月檢查記錄
- 高職單招數(shù)學試題及答案
- 基礎化學(本科)PPT完整全套教學課件
- 蕉嶺縣幅地質圖說明書
- 玻璃幕墻分項工程質量驗收記錄表
- 電梯控制系統(tǒng)論文
- (完整word版)人教版初中語文必背古詩詞(完整版)
- 湖北省地質勘查坑探工程設計編寫要求
- GB/T 4310-2016釩
- GB/T 28799.3-2020冷熱水用耐熱聚乙烯(PE-RT)管道系統(tǒng)第3部分:管件
評論
0/150
提交評論