版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、二級 C語言分類模擬題 548選擇題1、下列敘述中正確的是A. 順序存儲結構的存儲一定是連續(xù)的,鏈式存儲結構的存儲空間不一定是連續(xù)的B. 順序存儲結構只針對線性結構,鏈式存儲結構只針對非線性結構C. 順序存儲結構能存儲有序表,鏈式存儲結構不能存儲有序表D. 鏈式存儲結構比順序存儲結構節(jié)省存儲空間2、設x、y和z是int 型變量,且 x=4 ,y=6 ,z=8 ,則下列表達式中值為 0的是A x&.y B x =yC x|y+z&y-z D !(x y)&!z|1)3、下面程序的運行結果是 。for(i=3;i 7;i+)printf(i%2)?(*%dn):(#%dn),i); A *3#4*
2、5*6B #3*4#5*6C #3*4#5#6D *3#4*5#6 4、有以下程序:#include int fun()static int x=1;x*=2;return x;main()int i, s=1;for(i=1; i =3; i+) s*=fun();printf(%dn, s);程序運行后的輸出結果是 。A 30 B 10 C 0 D 645、有以下程序#includeint fun(int (*s)4,int n,int k) int m,i;m=s0kl;for(i=1;i m) m=sik;return m;main() int a44=1,2,3,4,11,12,13
3、,14, 21,22,23,24, 31,32,33,34;printf(%dn,fun(a,4,0); 程序的運行結果是 。A. 4 B. 34 C. 31 D. 326、有以下程序:#include#includestruct Aint a;char b10;double c;void f(struct A t);main()struct A a=1001,ZhangDa,1098.0;f(a);printf(%d,%s,%6.lfn,a.a,a.b,a.c);void f(struct A t)t.a=1002;strcpy(t.b,ChangRong);t.c=1202.0; 程序運行
4、后的輸出結果是 。A 1002,ZhangDa,1202.0 B 1002,ChangRong,1202.0C 1001,ChangRong,1098.0 D 1001,ZhangDa,1098.07、對于下列定義,不正確的敘述是 ( ) 。union data int a ;char b ;double c ;x=y ;A. 變量x 所占內(nèi)存的長度等于成員 c的長度B. 變量x 的地址和它的各成員地址都是相同的C. 可以在定義時對 x 初始化D. 不能對變量 x 賦值,故 x=y 非法8、若變量已正確定義,在 if(W)printf(%dn,k);中,以下不可替代 W的是 A a b+c B
5、 ch=getchar() C a=b+c D a+9、有以下程序:#includemain() int c,d;c=13&5;d=10&5;printf(%d,%dn,c,d); 程序的運行結果是 。A 5,1 B 1,1 C 18 ,1 D 13,110 、有以下程序: #include main() int x=8; for(;x 0;x-) if(x%3) printf(%d,x-); contmue;printf(%d,-x); 程序運行后的輸出結果是 。8,5,4,2,A 7,4,2, B 8,7,5,2, C9,7,6,4, D11 、若有以下程序: #includemain(
6、) int c; c=105; printf(%dn, c); 則程序的輸出結果是 。A 5 B 15 C 10000 D 10512 、在數(shù)據(jù)結構中,從邏輯上可以把數(shù)據(jù)結構分為 。A. 動態(tài)結構和靜態(tài)結構 B. 緊湊結構和非緊湊結構C.線性結構和非線性結構 D. 內(nèi)部結構和外部結構13 、以下正確的說法是 。A 定義函數(shù)時,形參的類型說明可以放在函數(shù)體內(nèi)B return 后邊的值不能為表達式C 如果函數(shù)值的類型與返回值類型不一致,以函數(shù)值類型為準D 如果形參與實參類型不一致,以實參類型為準14 、有以下程序:#include main() int i;for(i=1; i =5; i+)if
7、(i%2)printf(*);else continue;printf(#);printf($n);程序的輸出結果是 。A*#*#*#$B#*#*#*$C*#*#$D#*#*$15 、有如下程序:#include main()int a=1,b;b=(a 2)%3;printf(%d,%d,a,b); 程序運行后的輸出結果是 。A1,1B 2,0C1,0D2,116 、若各選項中所用變量已正確定義,函數(shù) fun 中通過 return 語句返回一個函數(shù)值,以下選項中錯 誤的程序是 。Amain()x=fun(2,10);float fun(int a,int b)Bfloat fun(int a
8、,int b)main()x=fun(i,j);Cfloat fun(int,int);main()x=fun(2,10);float fun(int a,int b)Dmain()float fun(int i,int j);x=fun(i,j); float fun(int a,int b)17 、下述程序的輸出結果是 #include void main()char a=1,b=2;char c=ab 2; printf(n%d,c);A9 B10 C 12 D218 、負責數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是 。D數(shù)據(jù)控制語言A數(shù)據(jù)定義語言 B數(shù)據(jù)管理語言 C數(shù)據(jù)操縱語言19 、有以下程序:
9、#include main()int a44=1,4,3,2,8,6,5,7,3,7,2,5,4,8,6,1;int i,j,k,t;for(i=0;i 4;i+)for(j=0;j 3;j+)for(k=j+1;kaki)t=aji;aji=aki;aki=t;/* 按列排序 */for(i=0;i 4;i+)printf(%d,aii);程序運行后的輸出結果是 。A1,6,2,1,B 8,7,3,1,C4,7,5,2,D1,6,5,7,20 、在軟件開發(fā)中,需求分析階段可以使用的工具是 。AN-S 圖 BDFD圖 C PAD圖 D程序流程圖21 、以下選項中,能定義 s為合法的結構體變量的
10、是 ( ) 。A. typedef struct abc double a;char b10; s;B. struct double a;char b10;s;C. struct ABC double a;char b10;ABC s;D. typedef ABC double a;char b10;ABC s;22 、以下敘述中正確的是AC程序中各函數(shù)之間既允許直接遞歸調(diào)用,也允許間接遞歸調(diào)用BC程序中各函數(shù)之間不允許直接遞歸調(diào)用,也不允許間接遞歸調(diào)用CC程序中各函數(shù)之間允許直接遞歸調(diào)用,不允許間接遞歸調(diào)用DC程序中各函數(shù)之間不允許直接遞歸調(diào)用,允許間接遞歸調(diào)用23 、以下程序中 C的二進制
11、值是 char a=2,b=4,c; c=ab 2 A00000011B00010100C00011100D 0001100024、設有變量說明 int(*p)m,其中的標識符 p是( ) 。A. m 個指向整型變量的指針B. 指向 m個整型變量的指針C. 一個指向具有 m個整型元素的一維數(shù)組的指針D. 具有 m個指針元素的一維指針數(shù)組,每個元素都指向整型變量25 、 軟件 ( 程序 ) 調(diào)試的目標是A. 診斷和改正程序中的錯誤 B. 盡可能多地發(fā)現(xiàn)程序中的錯誤 C. 發(fā)現(xiàn)并改正程序中的所有錯誤 D. 確定程序中錯誤的性質26 、結構化程序設計的 3種結構是 A順序結構、選擇結構、轉移結構B分
12、支結構、等價結構、循環(huán)結構 C多分支結構、賦值結構、等價結構 D順序結構、選擇結構、循環(huán)結構27、 fgetc 函數(shù)的作用是從指定文件讀入一個個字符,該文件的打開方式必須是 A. 只讀 B. 追加 C. 讀或讀寫 D. 以上均正確28 、對于下列定義,不正確的敘述是 ( ) 。 union data int a ;char b ;double c ;x=y ;A. 變量x 所占內(nèi)存的長度等于成員 c 的長度B. 變量x 的地址和它的各成員地址都是相同的C. 可以在定義時對 x 初始化D. 不能對變量 x賦值,故x=y 非法29 、下列敘述中正確的是 。A循環(huán)隊列中的元素個數(shù)隨隊頭指針與隊尾指針
13、的變化而動態(tài)變化B循環(huán)隊列中的元素個數(shù)隨隊頭指針的變化而動態(tài)變化C循環(huán)隊列中的元素個數(shù)隨隊尾指針的變化而動態(tài)變化D以上說法都不對30 、下面不屬于軟件需求分析階段主要工作的是 。A需求變更申請 B需求分析 C需求評審 D需求獲取31 、下列運算符中優(yōu)先級最低的算符是 A|B!=C = D+32 、有以下程序:#include main() int a=1, b=0;if(-a)b+;else if(a=0) b+=2;else b+=3;printf(%dn, b);程序運行后的輸出結果是 。A0 B1C2 D333 、有以下程序#include #define S(x)4*(x)*x+1ma
14、in() int k=5,j=2; printf(%dn,S(k+j);程序運行后的輸出結果是 。A143B 197C33 D2834 、 if 語句的基本形式是: if( 表達式 ) 語句,以下關于 “表達式 ”值的敘述中正確的是 A必須是邏輯值B必須是整數(shù)值C必須是正數(shù)D可以是任意合法的數(shù)值35 、在下列選項中,沒有構成死循環(huán)的程序段是 。Aint i=100;while(1) i=i%100+1 ;if(i 100)break ;Bfor(;);Cint k=1000 ;do+k ;while(k =1000) ;D int s=36 :while(s); -s ;36 、 C語言源程序
15、名的后綴是 。A.C B.exeC.objD.cp37 、若有以下程序#include void fun(int a,int n) intt,i,j;for(i=1;i n;i+=2)for(j=i+2;j aj)t=ai;ai=aj;aj=t;main() int c10=10,9,8,7,6,5,4,3,2,1,i; fun(c,10);for(i=0;i sex);D scanf(%d,ps-age);39 、C語言中標準庫函數(shù) fputs(str,fp) 的功能是 。A從 str 指向的文件中讀一個字符串存入 fp 指向的內(nèi)存B把 str 所指的字符串輸出到 fp 所指的文件中C從 f
16、p 指向的文件中讀一個字符串存入 str 指向的內(nèi)存D把 fp 指向的內(nèi)存中的一個字符串輸出到 str 指向的文件40 、若有以下程序#include int f(int a, int n)if(n 1)int t;t=f(a, n-1);returnt an-1?t:an-1;elsereturn a0;main() int a=8, 2, 9, 1, 3, 6, 4, 7, 5; printf(%dn, f(a, 9); 則程序的輸出結果是 。A1 B9 C8 D 5答案:選擇題1、A 解析 順序存儲方式是把邏輯上相鄰的結點存儲在物理上相鄰的存儲單元里,結點之間的關系由存 儲單元的鄰接關系
17、來體現(xiàn)。其優(yōu)點是占用最少的存儲空間。所以選項D錯誤。順序存儲結構可以存儲如二叉樹這樣的非線性結構,所以選項 B錯誤。鏈式存儲結構也可以存儲線性表,所以選項 C錯誤。2、D 解析 本題考查邏輯運算符的使用。 當“&”的兩個運算對象都是邏輯 1時,表達式返回值才是 1;“| 的兩個運算對象至少有一個是邏輯 1時,表達式返回值也是 1,x y 為1,!z 為0,1&0為1,0| 為 1,因此, !1 為0 。3、D解析 本題考查printf 函數(shù)的輸出格式和條件表達式 “?: ”的使用。printf 函數(shù)輸出時 “*%d n” 和“#%dn”中的“#”和“* ”都是直接輸出。條件表達式的基本格式為:
18、 “a?b:c ”。它的運算規(guī) 則為:當 a為非0時,整個表達式的值取 b的值,當 a為0時,整個表達式取 c的值。4、D 解析 分析程序可知, main 函數(shù)中初始化 s=1 ,然后根據(jù) i 的值 1、2、3執(zhí)行 3次for 循環(huán),每次將 s當前值與函數(shù) fun() 的返回值相乘,并將乘積賦給 s,所以 for 循環(huán)等價于: s=s*fun()*fun()*fun();可見 s 的值取決于 fun() 函數(shù)的返回值。在 fun() 函數(shù)中,定義了一個靜態(tài)局部變量 x并初始化為1,再將x的值乘以2返回,因為靜態(tài)局部變量 x在編譯時賦初值, 并且只 賦值一次,下一次調(diào)用時都是保留上一次的值,所以
19、 fun() 函數(shù)每次被調(diào)用,返回值都是上一次的 2 倍,所以 s=1248=64。故答案選 D選項。5、C解析 在主函數(shù)中,定義并初始化了 4行4列的二維數(shù)組 a,并通過調(diào)用fun 函數(shù),將fun 函數(shù)中指向 一維數(shù)組的指針變量 s指向了二維數(shù)組 a的首地址,使得指針變量 s與數(shù)組a共用同一存儲單元。 在fun 函數(shù)中,通過 for 循環(huán),求得了數(shù)組 a 第0 列中最大的值,并賦給 m返回主函數(shù)。由于數(shù)組 a 第0列的值 分別為1、11 、21 、31 ,故其最大值是 31 。6、D 解析 本題考查結構體的相關操作以及傳值、傳址的區(qū)別,該題中調(diào)用 f 函數(shù)后,會生成參數(shù) a 的一 個副本,而
20、不會改變 a的值,所以 a值維持原值,選項 D正確。7、C 解析 本題主要考查的知識點是聯(lián)合體的內(nèi)存使用。聯(lián)合體所占用的內(nèi)存空間為最長的成員所占用 的空間,各個成員分量全部是從低地址方向開始使用內(nèi)存單元。 不能在定義共用體變量時對它初始化。8、A 解析 選項 A是非法的表達式, C語言中沒有運算符。9、A 解析 “ &”按位與運算, 13=1101B , 5=101B ,執(zhí)行語句 c=13&5 ;結果為 101B=5 ,即 c=5 ?!?&” 邏輯與運算, 10與5均為真,結果為真,即 d=1 。故A選項正確。10、D 解析 coutinue 的作用是跳出循環(huán)體中剩余的語句而進行下一次循環(huán)。第
21、一次循環(huán)x 的值為 8 ,循環(huán)體中if 條件成立,打印 x的值8后將x減1,再執(zhí)行 continue 語句,跳出本次循環(huán)。第二次判斷循 環(huán)條件時, x的值變?yōu)?,不滿足循環(huán)體內(nèi) if 條件,執(zhí)行打印 -x 的操作,即打印 5后跳出循環(huán)。第三 次判斷循環(huán)條件時 x的值為4,滿足循環(huán)體中 if 條件,執(zhí)行打印 x- 的操作,即打印4,后將x值減一, 執(zhí)行 continue 語句,跳出本次循環(huán)。第四次判斷循環(huán)條件時 x的為 2,滿足循環(huán)體中 if 條件,打印 x- ,即打印 2后將x 減一,執(zhí)行 continue 語句,跳出本次循環(huán)。在進行 for 條件表達式中第三個表 達式c- 的操作后 x的值為
22、0,不滿足條件結束循環(huán)。所以打印結果為 “8,5,4,2, ”。11、B 解析 本題考查位運算中的按位異或運算符。異或運算只有在兩個比較的位不同時其結果是1,否則結果為 0,10 用二進制表示為 00001010 ,5用二進制表示為 00000101 ,異或運算后結果為 00001111 ,即15 ,選項 B正確。12、C 解析 邏輯結構反映數(shù)據(jù)元素之間的邏輯關系,線性結構表示數(shù)據(jù)元素之間一對一的關系,非線性 結構表示數(shù)據(jù)元素之間一對多或多對一的關系。 13 、 C14、A 解析 #include stdio.h int main()int i;for(i=1; i =5; i+)if(i%2
23、)printf(*);elsecontinue;printf(#);printf($n);/*i=1*#*i=3*#*i=5*#$所以輸出為 *#*#*#$ 和一個換行符 */ ,因此正確答案為 A。15、C 解析 “”是右移運算符,功能是將一個數(shù)的各個二進制位右移若干位,本題中將變量a( 二進制: 00000001) 右移2位, a 2的結果為 0,再對3求余,結果為 0,賦給 b的值為 0、a的值不變, 輸出結果為: 1,0 。故本題答案為 C選項。16、A 解析 在函數(shù)調(diào)用前,需要定義或聲明, A選項錯誤。 17、A18、C 解析 數(shù)據(jù)定義語言:負責數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構建;數(shù)
24、據(jù)操縱語言:負責數(shù)據(jù)的操 縱,包括查詢及增加、刪除、修改等操作;數(shù)據(jù)控制語言:負責數(shù)據(jù)完整性、安全性的定義與檢查以 及并發(fā)控制、故障恢復等功能。因此本題答案為 C。19、D 解析 首先對二維數(shù)組進行賦值操作, a00 、a0l1 a32 、a33 的值為 1、46、 1。通過 for 語句和 if 語句,對二維數(shù)組各列元素進行由小到大的排序操作,程序最后通過 for 語句 輸出二維數(shù)組對角線上的元素。因此 D選項正確。20、B 解析 在需求分析階段可以使用的工具有數(shù)據(jù)流圖 (DFD圖) 、數(shù)據(jù)字典 (DD) 、判定樹與判定表, 所 以選擇 B選項。21、B 解析 定義一個結構體類型的變量,可采
25、用三種方法: 先定義結構體類型,再定義變量名。在定義類型的同時定義變量。直接定義結構體類型變量,即不出現(xiàn)結構體名。選項B) 符合第三種定義方法。 22、A23 、A24、C 解析 本題考查指向數(shù)組的指針變量的聲明。 這里的 p表示一個指向數(shù)組的指針: *p 表示指針 p 指向 地址的內(nèi)容。25、A 解析 軟件測試與軟件調(diào)試是兩個不同的概念:軟件測試的目的是發(fā)現(xiàn)錯誤,而軟件調(diào)試的目的是 發(fā)現(xiàn)錯誤或導致程序失效的原因,并修改程序以修正錯誤,調(diào)試是測試之后的活動。26、D 解析 結構化程序設計的基本要點: 采用自頂向下、逐步求精的程序設計方法; 任何程序都可由 順序、選擇和循環(huán) 3種基本控制結構構造。27、D 解析 fgetc 函數(shù)是指從指定的文件讀入一個字符,該文件必須是以讀
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年四川省成都市公開招聘警務輔助人員輔警筆試自考題1卷含答案
- 2023年甘肅省酒泉市公開招聘警務輔助人員輔警筆試自考題2卷含答案
- 2024年湖北省孝感市公開招聘警務輔助人員輔警筆試自考題2卷含答案
- 2022年青海省西寧市公開招聘警務輔助人員輔警筆試自考題1卷含答案
- 2024年廣東省韶關市公開招聘警務輔助人員輔警筆試自考題1卷含答案
- 頒獎晚會發(fā)言稿
- 個人借條范本整合
- 霸氣押韻的班級口號
- 湖北省省直轄行政單位(2024年-2025年小學六年級語文)部編版質量測試(下學期)試卷及答案
- 廣東省陽江市(2024年-2025年小學六年級語文)部編版階段練習(上學期)試卷及答案
- 中國超重肥胖醫(yī)學營養(yǎng)治療指南
- 嚴重精神障礙患者家屬護理教育
- 汽車4S店市場部工作計劃
- 現(xiàn)代營銷學原理課件
- 德語語言學導論智慧樹知到期末考試答案2024年
- 拒絕早戀主題班會 課件(34張)2023-2024學年主題班會
- 離婚協(xié)議書完整版Word模板下載
- 招標代理機構內(nèi)部監(jiān)督管理制度
- 初中周末安全教育課件
- 2024年度醫(yī)院骨肌肉康復科醫(yī)務人員述職報告課件
- 小學四年級綜合實踐活動《羊毛氈化制作》教學公開課課件
評論
0/150
提交評論