計算機等級C語言二級(2008年09月)真題及答案_第1頁
計算機等級C語言二級(2008年09月)真題及答案_第2頁
計算機等級C語言二級(2008年09月)真題及答案_第3頁
計算機等級C語言二級(2008年09月)真題及答案_第4頁
計算機等級C語言二級(2008年09月)真題及答案_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、2008年9月全國計算機等級考試二級筆試試卷C語言程序設計(考試時間90分鐘,滿分100分)注意:解答中所提到的教材是新視野教育培訓使用的教材全國計算機等級考試-二級教程,此教材是由新視野教學組編寫,中國地質(zhì)大學出版社出版。詳情可聯(lián)系長沙新視野0731-1)棧的初始狀態(tài)為空?,F(xiàn)將元素1、2、3、4、5、A、B、C、D、E依次放入棧,然后再依次出棧,則元素的順序是:A) 12345ABCDE B) EDCBA54321C) ABCDE12345 D) 54321EDCBA答案:B詳細解答:該知識點是考查了棧的先進后出,是我們公共基礎的重點考點,在公共基礎的10頁紙上多次強調(diào)。棧和隊列是每年必考的

2、題目。此題與對應教材第三分冊81頁14題。2)下列敘述中正確的是A)循環(huán)隊列有對頭和對尾兩個指針,因此,循環(huán)隊列是非線性結構B)在循環(huán)隊列中,只需要隊列頭指針就能夠反映隊列中元素的動態(tài)變化情況C)在循環(huán)隊列中,只需要隊列頭指針就能夠反映隊列中元素的動態(tài)變化情況D)循環(huán)隊列中的元素的個數(shù)是有隊頭和隊尾指針共同決定的。答案:D詳細解答:該知識點是考查了循環(huán)隊列的知識點,隊列是線性結構。處理隊列的話我們是有兩個指針的,一個是頭指針,一個是尾指針。此題與對應教材第三分冊81頁10題。(類似)3) 在長度為的有序線性表中進行二分查找,最壞的情況下需要比較的次數(shù)是A)O() B)O(2) C)O(log2

3、n) D)O(nlog2n)答案:C詳細解答:該知識點是考查了二分查找。二分查找:對于長度為的線性表,在最壞情況進行l(wèi)og2n次。此題與對應教材第三分冊83頁32題。4)下列敘述中正確的是A)順序存儲結構的存儲一定是連續(xù)的,鏈式存儲結構的存儲空間不一定是連續(xù)的。B)順序存儲結構只針對線性結構,鏈式存儲結構只針對非線性結構。C)順序存儲結構能存儲有序表,鏈式存儲結構不能存儲有序表。D)鏈式存儲結構比順序存儲結構節(jié)省空間。答案:A詳細解答:該知識點是考查了棧數(shù)據(jù)結構特點。此題與對應教材第三分冊81頁18題。5)數(shù)據(jù)流圖中帶有箭頭的線段表示的是A)控制流B)事件驅(qū)動C)模塊調(diào)用D)數(shù)據(jù)流答案:D詳細

4、解答:該知識點是考查了數(shù)據(jù)流圖中的各個知識點。此題與對應教材第三分冊86頁11題。6)在軟件開發(fā)中,需求分析階段可以使用的工具是A)N-S圖B)DFD圖C)PAD圖D)程序流程圖 答案:B此題與對應教材第三分冊87頁12題。7)在面向?qū)ο蠓椒ㄖ?,不屬于“對象”基本特點的是A) 一致性B)分類性C)多態(tài)性D)標識一致性 答案:A詳細解答:該知識點是考查了對象的基本屬性。是我們公共基礎的重點考點,此題與對應長沙新視野考前沖刺07年月題目題。8)一間宿舍可以住多個學生,則實體宿舍和學生之間的聯(lián)系是A ) 一對一 B) 一對多C)多對一D)多對多 答案:B此題與對應教材第三分冊90頁10題。(類似)9

5、)在數(shù)據(jù)管理技術發(fā)展的三個階段中,數(shù)據(jù)共享最好的是A)人工管理階段B)文件系統(tǒng)階段C)數(shù)據(jù)庫系統(tǒng)階段D)三個階段相同答案:C 此題與對應教材第三分冊90頁7題。10)有三個關系S、R和T如下:由關系R和S通過運算得到關系T,則所使用的運算為A)笛卡爾積B)交C)并D)自然連接答案:D詳細解答:該知識點是考查了關系的運算,是我們公共基礎的??嫉念}目。考試中一般比較多的是考到了笛卡爾積、交。這個地方考了自然連接的運算。此題與對應教材第三分冊91頁21題。11)以下敘述中正確的是( )A) C語言的基本組成單位是語句B) C程序中的每一行只能寫一條語句C) 簡單C語句必須以分號結束D)C語句必須在一

6、行內(nèi)完成答案:C詳細解答:本題考查了C語言的基本概念,基本語法,本題所有選項均可在第一分冊找到原句A)選項錯誤:函數(shù)是C語言的基本組成單位(第一分冊P55)B)、D)選項錯誤: C語言書寫格式自由,一行內(nèi)可以寫多個語句,一個語句可以多行書寫(第一分冊P3)C)選項正確:分號是語句結束的標志,任何一條語句都必須以分號結束.把以一個分號結尾的一句話叫做一個C語言的語句(第一分冊P2,P3)12)計算機能直接執(zhí)行的程序是( )A)源程序 B)目標程序 C)匯編程序 D)可執(zhí)行程序 答案:D詳細解答:根據(jù)我們上機運行的操作步驟,此題就可以選出答案用C語言編寫的程序,稱之為源程序,后綴為.c,通過C語言

7、編譯,變?yōu)楹缶Y為.obj的文件,然后鏈接成后綴為.exe的可執(zhí)行文件,才能交給計算機執(zhí)行,可見計算機能直接執(zhí)行的是可執(zhí)行程序。匯編語言編寫的程序,機器不能直接識別,要翻譯成機器語言(可執(zhí)行語言),才能執(zhí)行(考生即使不知道該知識點,此題也應該選出答案)此題與第三分冊68頁第20題,第23題考查知識點相近。13)以下選項中不能作為C語言合法常量的是 ( )A) cd B) 0.1e+6 C) “a” D)011答案:A詳細解答:本題考查了字符常量,實型常量、字符串常量。字符常量是一對單引號括起來的一個字符,A選項單引號內(nèi)有兩個字符,注意D選項為八進制轉(zhuǎn)移字符(第一分冊P48)此題在第三分冊第2頁,

8、第18題、第20題;第22頁第3題,第5題均有體現(xiàn)14) 以下選項中正確的定義語句是 ( )A)double a;b; B) double a=b=7; C) double a=7,b=7; D)double ,a,b; 答案:C詳細解答:本題考查變量的定義,以及初始化(定義變量的同時賦值,比如C選項)A)選項錯誤:在同一條語句中定義多個變量,變量之間用逗號, eg:double a,b; 如果作為兩條語句定義,變量類型不能省略,eg:double a;double b;B)選項錯誤:變量b未定義,正確格式為 double a,b;a=b=7; D)選項錯誤:變量類型與變量之間不能有逗號,只能

9、是空格 eg: double a,b;此題對應第三分冊第3頁,第28題15) 以下不能正確表示代數(shù)式 的C語言表達式是( )A) 2*a*b/c/d B) a*b/c/d*2 C) a/c/d*b*2 D) 2*a*b/c*d 答案:D詳細解答:本題考查了代數(shù)式在C語言中的書寫格式D)選項相當于代數(shù)式此題并不難理解,但如果題目給出變量a,b,c,d的變量類型,就需要大家細心,可以參考第三分冊第3頁第34題16) C源程序中不能表示的數(shù)制是 ( )A) 二進制 B) 八進制 C) 十進制D) 十六進制 答案:A詳細解答:本題考查了整型常量的三種表示形式整型常量分為十進制整型常量、八進制整型常量、

10、十六進制整型常量,唯獨沒有二進制整形常量,所以源程序中不能表示二進制此題對應第三分冊第2頁,第14題(注意D選項)17) 若有表達式(w)?(-x):(+y),則其中與w等價的表達式是 ( )A)w=1 B) w=0 C) w! =1 D) w! =0答案:D詳細解答:本題考查了邏輯表達式的真假題目中w為1,表達式w表示真,w為0,表達式w表示假,這類題目的做法,把1,0代入選項,找出與w真假條件相符的即可比如:D選項, w為1時,1!=0成立,表達式值為真w為0時,0!=0部成立,表達式值為假此題對應第三分冊第10頁,第2題,第8題,第12頁,第22題18)執(zhí)行以下程序段后,w的值為 ( )

11、 int w=A,x=14,y=15;w=(x|y)&(wa);A)-1 B)NULL C) 1 D)0 答案:C詳細解答:本題考查了邏輯表達式的判斷&兩邊都為真,表達式才為真;|兩邊有一個為真就為真.(x|y)值為真,(wa)成立,也為真,整個表達式(x|y)&(wa)值為1,把1賦值給w, w的值為1此題沒有考察學員容易犯錯的-邏輯運算符的短路現(xiàn)象,可以參考第三分冊11頁,第14題19)若變量已正確定義為int型,要通過語句scanf(“%d,%d,%d”,&a,&b,&c);給a賦值1,給b賦值2,給c賦值3,以下輸入形式中錯誤的是(代表一個空格符)()A)1,2,3 B)123C) 1

12、,2,3 D)1,2,3答案:B詳細解答:本題考查了scanf輸入函數(shù)的格式說明知識輸入函數(shù)的輸入控制(雙引號之間的內(nèi)容),除 %* 外,如果含有其它字符,則在輸入數(shù)據(jù)時一定要一一對應輸入這些字符,此題雙引號之間含有逗號,那么輸入數(shù)據(jù)之間必須輸入逗號,B選項錯誤.此類型的題目還要注意逗號不是分隔符,如果雙引號之間沒有逗號,輸入數(shù)據(jù)時不能用逗號此題對應第三分冊第8頁22題20)有以下程序段int a,b,c;a=10;b=50;c=30;if(ab) a=b,b=c; c=a;printf(“a=%d b=%d c=%d”,a,b,c);程序的輸出結果是 ( )A)a=10 b=50 c=10

13、B)a=10 b=50 c=30 C) a=10 b=30 c=10 D) a=50 b=30 c=50答案:A詳細解答:本題目學員應該注意逗號表達式語句,及if語句的結構屬于if(ab)的只有一條語句a=b,b=c;(逗號表達式語句)咱們強調(diào)如果含有多條語句,必須用大括號 括起,eg:if(ab) a=b,b=c; c=a;如果沒有用 括起,那么只有一條語句,1050不成立,所以a=b,b=c;不執(zhí)行;執(zhí)行后面的語句c=a;此時c的值變?yōu)?0,所以輸出為A選項此題對應第三分冊13頁填空題第3題21) 若有定義語句:intm =5,4,3,2,1,i=4;則下面對m數(shù)組元素的引用中錯誤的是(

14、)A)m-i B)m2*2 C) mm0 D)mmi答案:C詳細解答:本題考查了數(shù)組的下標不能越界,數(shù)組長度由 中的數(shù)據(jù)個數(shù)默認為5,那含有5個數(shù)組元素分別為m0、m1、m2、m3、m4,C)選項為m5,下標越界A) 選項對應m3 B) 選項對應m4 D)選項對應m1此題知識點在 第一分冊72頁第一行 明確表明22) 下面的函數(shù)調(diào)用語句中func函數(shù)的是實參個數(shù)是 ( )func( f2(v1,v2), (v3,v4,v5),(v6,max(v7,v8);A)3 B)4 C) 5 D)8答案:A詳細解答:函數(shù)的參數(shù)列表,不同參數(shù)之間用逗號隔開, func函數(shù)的參數(shù)個數(shù)為3,分別為f2(v1,v

15、2),(v3,v4,v5),(v6,max(v7,v8)。大家可以簡單的理解為以外層逗號間隔為準,其中每個參數(shù)又含有函數(shù)和多個參數(shù),超出本題查考的內(nèi)容23) 若有定義語句:double x5=1.0, 2.0, 3.0, 4.0, 5.0,*p=x; 則錯誤引用x數(shù)組元素的是 ( )A)*p B)x5 C)*(p+1) D)*x答案:B詳細解答:本題考查數(shù)組的下標是否越界,以及指針對變量的引用B)選項x5,下標越界。一維數(shù)組名是地址常量(數(shù)組首地址),始終指向第一個數(shù)組元素,進行賦值p=x,指針變量p也指向第一個數(shù)組元素如下圖: A)選項 *p表示p所指向單元的數(shù)據(jù)即x0 值為1.0C)選項

16、*(p+1)表示p+1所指向單元的數(shù)據(jù)即x1 值為2.0D)選項 *x表示x所指向單元的數(shù)據(jù)即x0 值為1.0此題目在第三分冊40頁第九章的的題目中均有體現(xiàn),比如第3題24)若有定義語句: char s10=”00”; ,則strlen(s)的值是 ( )A)7 B)8 C) 9 D)10答案:A詳細解答:本題目考查字符串結束標志0。字符串從第一個字符開始,遇到第一個結束符0為止,注意0不占字符串長度,所以此題選A此題對應第三分冊60頁填空題第29題25) 以下敘述中錯誤的是 ( )A)用戶定義的函數(shù)中可以沒有return 語句B) 用戶定義的函數(shù)中可以有多個return語句,以便可以調(diào)用一次

17、返回多個函數(shù)值C) 用戶定義的函數(shù)中若沒有return語句,則應當定義函數(shù)為void類型D)函數(shù)的return語句中可以沒有表達式答案:B詳細解答:1、如果函數(shù)返回值類型為void,則可以不用return語句,所以A正確;2、如果函數(shù)沒有return語句,函數(shù)返回值類型必須是void3、如果函數(shù)沒有返回值,可以用return語句,此時表達式應該為空,D正確4、函數(shù)可以根據(jù)需要返回一個確定的值,程序中可以出現(xiàn)多個return語句,但當程序執(zhí)行到第一個return語句時,就會結束當前函數(shù)的運行,不會執(zhí)行后面的語句,所以用return語句只能返回一個函數(shù)值,B錯誤此題對應第一分冊56頁:return

18、說明部分26) 以下關于宏的敘述中正確的是 ( )A)宏名必須用大寫字母表示B) 宏定義必須位于源程序中所有語句之前C) 宏替換沒有數(shù)據(jù)類型限制D)宏調(diào)用比函數(shù)調(diào)用耗費時間答案:C詳細解答:本題考查宏的基本定義A)選項錯誤:宏名一般習慣用大寫,但可以用小寫B(tài))選項錯誤:預處理命令可以出現(xiàn)在任何位置,但習慣上應盡可能地寫在源程序的開頭.C) 選項正確:宏定義時形參不能指定類型,即沒有數(shù)據(jù)類型限制D) 選項錯誤:宏替換在編譯時由預處理程序完成,所以宏替換不占用運行時間;而函數(shù)調(diào)用是在程序運行中處理的,要臨時分配存儲單元,占用一系列時間此題對應第三分冊66頁第8題,及第一分冊99頁和100頁相關知識

19、27) 有以下程序#iinclude main() int i,j;for(i=3; i=1; i-) for (j=1;j=2;j+) printf(“%d”,i+j); printf(“n”);程序的運行結果是 ( )A) 2 3 4 B) 4 3 2 C) 2 3 D) 4 53 4 5 5 4 3 3 4 3 4 4 5 2 3答案:D詳細解答:本題考查雙層for循環(huán)嵌套i值為3時, j為1,輸出4 j為2,輸出5 j為3時,不滿足條件退出內(nèi)層循環(huán),執(zhí)行后面的語句換行i值為 2時, j為1,輸出3 j為2,輸出4 j為3時,不滿足條件退出內(nèi)層循環(huán),執(zhí)行后面的語句換行i值為 1時, j為

20、1,輸出2 j為2,輸出3 j為3時,不滿足條件退出內(nèi)層循環(huán),執(zhí)行后面的語句換行i值為 0時,不滿足判斷條件退出整個for循環(huán)此題對應第一分冊44頁 例4.628) 有以下程序#include main() int x=1,y=2, z=3; if(xy) if (yz) printf(“%d”,+z); else printf(“%d”,+y); printf(“%dn”,x+);程序運行結果是A)331 B)41 C) 2 D)1答案:D詳細解答:本題考查if ,if-else結構首先搞清楚此題目的結構,本題含有一個if結構,屬于if的語句是一個if-else結構,if (yy不成立,那么

21、屬于if(xy)的語句不執(zhí)行,直接執(zhí)行后面的語句printf(“%dn”,x+);輸出1(本題還有一個考查點就是+在前在后的問題,如果題目改為+x,輸出2)此題對應第一分冊31頁 例3.1029) 有以下程序#include main() int i=5; do if (i%3= =1) if (i%5= =2) printf(“*%d”,i); break; i+;while(i!=0);printf(“n”);程序的運行結果是A)*7 B)*3*5 C) *5 D)*2*6答案:A詳細解答:此題頭考查了break的用法,遇到break退出整個循環(huán)明確循環(huán)體中的語句,當i的值滿足(i%3=

22、=1) 并且滿足(i%5= =2)時,輸出*i. 并且break;退出整個循環(huán),如果不滿足就i+本題目題意就是:輸出第一個滿足(i%3= =1) 并且滿足(i%5= =2)的i值當i自加到7時,滿足題目要求,輸出*7,然后退出整個循環(huán),執(zhí)行后面的語句聯(lián)想此題還要注意continue的用法可以參考第三分冊18頁15題,19頁 19題30) 有以下程序#include int fun(int a, int b) if(b= =0) return a; else return(fun(-a,-b) ;main() printf(“%dn”,fun(4,2); 程序的運行結果是A)1 B)2 C) 3

23、 D)4答案:B詳細解答:此題考查了函數(shù)的簡單遞歸調(diào)用主函數(shù)中調(diào)用fun(4,2),fun(4,2)中調(diào)用fun(3,1),fun(3,1)中調(diào)用fun(2,0)可以總結為以下結構main( ) fun(4,2) -fun(3,1) -fun(2,0)輸出2 返回2 返回2 返回2此題對應參考第三分冊66頁第7題,第6題(31) 有如下程序: #include #include int fun(int n) int *p; p=(int *)malloc(sizeof(int); *p=n; return *p;main()int a;a=fun(10); printf(%dn,a+fun(1

24、0);程序的運行結果是 A)0 B)10 C)20 D)出錯答案:C詳細解答:該知識點考察的是函數(shù)的調(diào)用以及引用指針存儲單元,也是我們平時上課強調(diào)了的知識點。在主函數(shù)調(diào)用fun函數(shù),實參10單向值傳遞給形參n,在fun定義了指針變量p并用malloc函數(shù)給p分配了存儲空間,然后下一條語句把n的值賦給p所指向的存儲單元,最后是返回存儲單元的值到主函數(shù)。所以調(diào)用fun(10)的返回值為10,a的值也為10, 選C此題與對應教材類似第三分冊25頁6題。(32)有如下程序: #include void fun(int a,int b) int t; t=a;a=b;b=t; main() int c1

25、0=1,2,3,4,5,6,7,8,9,0,i; for(i=0;k10;i+=2) fun(ci,ci+1);for(i=0;k10;i+)printf(%d,ci);printf(n); 程序的運行結果是 A)1,2,3,4,5,6,7,8,9,0, B)2,1,4,3,6,5,8,7,0,9, C)0,9,8,7,6,5,4,3,2,1, D)0,1,2,3,4,5,6,7,8,9,答案:A詳細解答:該知識點考察的是函數(shù)實際參數(shù)與形式參數(shù)的傳遞過程,是我們上課強調(diào)的重點內(nèi)容。該題沒有涉及到指針,實參單向的值傳遞給形參,形參反過來不能傳遞給實參。在主函數(shù)中把數(shù)組元素作為實參進行傳遞給形參a

26、和b,在fun中交換了形參a和b的值,但形參a和b值的改變并不影響實參。所以數(shù)組C中的元素沒有改變。選A此題與對應教材類似第三分冊47頁9題.(33)有如下程序:#include struct stint x,y; data2=1,10,2,20;main()struct st *p=data;printf(%d,p-y);printf(%dn,(+p)-x);程序的運行結果是 A)10,1 B)20,1 C)10,2 D)20,2答案:C詳細解答:該知識點考察的是結構體成員的引用,是我們上課強調(diào)的重點內(nèi)容。在主函數(shù)中把一維數(shù)組名data賦給了指針變量p,則p指向數(shù)組元素data0,且每一個數(shù)

27、組元素含有兩個成員x和y,所以表達式p-y 是引用data0的成員y,即等于10;(+p)-x是先讓指針值自增,往下移動指向了data1,然后引用data1的成員x, 即等于2。選C此題與對應教材類似第三分冊71頁5題.(34)有如下程序:#include void fun(int a,int n) int i,t;for(i=0;in/2;i+) t=ai;ai=an-1-i;an-1-i=t;main()int k10=1,2,3,4,5,6,7,8,9,10,i;fun(k,5);for(i=2;i8;i+) printf(%d,ki);printf(n);程序的運行結果是A) B) C

28、) D)答案:D詳細解答:該知識點考察的是一維數(shù)組名作為實參進行參數(shù)傳遞,是我們上課強調(diào)的重點內(nèi)容。在主函數(shù)中調(diào)用了fun函數(shù),實參為數(shù)組名k和整數(shù)5,這樣對應定義fun函數(shù)首部有三種形式(教材P84),這里采用了第二種形式。這樣在fun函數(shù)對ai操作實際上就是對主函數(shù)中的ki操作,即 k0與k4 、k1與k3值交換了,所以選D此題與對應教材類似第三分冊46頁7題.(35)有如下程序:#include #define N 4void fun(int aN,int b) int i; for(i=0;iN;i+) bi=aii;main() int xN=1,2,3,4,5,6,7,8,9,10

29、,yN,i;fun(x,y);for(i=0;iN;i+)printf(%d,yi);printf(n);程序的運行結果是 A)1,2,3,4, B)1,0,7,0, C)1,4,5,9, D)3,4,8,10,答案:B詳細解答:該知識點考察的是二維數(shù)組名和一維數(shù)組名作為實參進行參數(shù)傳遞,是我們上課強調(diào)的重點內(nèi)容。在主函數(shù)中調(diào)用了fun函數(shù),實參為二維數(shù)組名x和一維數(shù)組名y,這樣對應定義fun函數(shù)首部也有三種形式(教材P84、P86),這里采用了第二種形式。這樣在fun函數(shù)對aij、bi進行操作實際上就是對主函數(shù)中的xij、yi進行操作,即把 x00、x11、x22和x33分別賦給y0 、y1

30、、y2和y3,所以選B此題與對應教材類似第三分冊49頁17題.(36)有如下程序:#include int fun(int (*s)4,int n,int k)int m,i;m=s0k;for(i=0;im) m=sik;return m;main()int a44=1,2,3,4,11,12,13,14,21,22,23,24,31,32,33,34;printf(%dn,funa,4,0);程序的運行結果是 A)4 B)34 C)31 D)32答案:C詳細解答:該知識點考察的是二維數(shù)組名作為實參進行參數(shù)傳遞,是我們上課強調(diào)的重點內(nèi)容。在主函數(shù)中調(diào)用了fun函數(shù),實參為二維數(shù)組名a和兩個整

31、數(shù)4、0,這樣對應定義fun函數(shù)首部也有三種形式(教材P86),這里采用了第一種形式,也就是行指針。這樣在fun函數(shù)對sij進行操作實際上就是對主函數(shù)中的aij進行操作,再分析fun函數(shù)的作用便可知,是求二維數(shù)組第0列中的最大那個元素,所以選C此題與對應教材類似第三分冊50頁3題.(37)有如下程序:#include main ()struct STU char name9; char sex; double score2;struct STU a=“Zhao”,m,85.0,90.0, b=“Qian”,f,95.0,92.0;b=a;printf(“%s,%c,%2.0f,%2.0fn”,

32、,b.sex,b.score0,b.score1);程序的運行結果是A)Qian,f,95,92 B)Qian,m,85,90 C)Zhao,f,95,92 D)Zhao,m,85,90答案:D詳細解答:該知識點考察的是結構體初始化賦值以及成員的引用問題,是我們上課強調(diào)的重點內(nèi)容。在main中分別定義了兩個結構體變量a 和b,雖然有語句b=a;但是并不影響結構體b中個成員的值,要改變成員的值必須要正確的引用成員,結構體成員的引用有三種方法(教材P115),因此選D此題與對應教材類似第三分冊72頁1題.(38)假定已建立以下鏈表結構,且指針p和q已指向如圖所示的結點:則以下選項中可將

33、q所指的結點從鏈表中刪除并釋放該結點的語句組是A)(*p).next=(*q).next;free(p); B)p=q.next; free(q);C)p=q;free(q); D)p-next=q-next; free(q);答案:D詳細解答:該知識點考察的是用結構體初構成鏈表的相關問題,是我們上課強調(diào)的重點內(nèi)容。要刪除q所指向的結點,只需要把q所指向結點的next成員中的地址賦給p所指向的結點中的next成員,讓p跳過q所指向的結點,直接指向下一個結點即可,因此選D此題與對應教材類似第三分冊71頁7題.(39)有如下程序:#include main()char a=4;printf(%dn

34、,a=a1);程序的運行結果是 A)40 B)16 C)8 D)4答案:C詳細解答:該知識點考察的是位運算,是我們上課強調(diào)的重點必考內(nèi)容。左移n位相當與乘以2n,所以4*21=8 因此選C此題與對應教材類似第三分冊23頁13題.(40)有如下程序: #include main() FILE *pf;char *s1=China,*s2=Beijing;pf=fopen(abc.dat,wb+);fwrite(s2,7,1,pf);rewind(pf);fwrite(s1,5,1,pf);fclose(pf); 程序的運行結果是 A)China B)Chinang C)ChinaBeijing

35、D)BeijingChina答案:B詳細解答:該知識點考察的是幾個文件指針函數(shù),是我們上課強調(diào)的重點內(nèi)容。此題和我們的教材P133上的一道例題幾乎是一樣的,首先定義了2個指針字符串,fwrite(s2,7,1,pf)表示把從地址s2開始的7個字符寫到pf所指的文件中,即把Beijing 寫到了文件中;rewind(pf)表示把文件的位置移動到文件的開頭;fwrite(s1,5,1,pf)表示把從地址s1開始的5個字符寫到pf所指的文件中,即又把China寫到文件中,于是覆蓋了s2 所指字符串的前5個字符,所以最后文件中的內(nèi)容是Chinang 選B此題與對應教材類似第三分冊78頁14題.二、填空

36、題目:1) 對下列二叉樹進行中序遍歷的結果是:答案:DBXEAYFZC詳細解答:該知識點考察的是二叉樹的遍歷,是我們上課強調(diào)的重點必考內(nèi)容。二叉樹的中序遍歷是先訪問左子樹,再訪問根結點,最后訪問右子樹。(請回顧前序和后序遍歷的原則)把握了這點原則的話很容易得出答案DBXEAYFZC此題與對應教材類似第三分冊82頁28題.2) 按照軟件測試的一般步驟,集成測試應在 之后進行。答案:單元詳細解答:該知識點考察的是軟件測試的4個步驟,是我們的總結上強調(diào)內(nèi)容。是軟件測試的4個步驟包括單元測試、集成測試、確認測試和系統(tǒng)測試。所以答案為單元測試。此題與對應教材類似第三分冊87頁23題.3)軟件工程三要素方

37、法包括工具、方法和過程,其中 支持軟件開發(fā)的各個環(huán)節(jié)的控制和管理答案:過程詳細解答:該知識點考察的是軟件工程三要素的具體內(nèi)容,是我們總結上強調(diào)的考試內(nèi)容。在我們的教材上P26有確切的解釋。工具:完成軟件工程項目的技術手段;工具:支持軟件的開發(fā)、管理、文檔生成;過程:支持軟件開發(fā)的各個環(huán)節(jié)的控制和管理此題與對應教材類似第三分冊86頁3題.4)數(shù)據(jù)庫設計包括概念設計、 和物理設計。答案:邏輯設計詳細解答:該知識點考察的是數(shù)據(jù)庫設計階段的內(nèi)容,是我們總結上強調(diào)的重點考試內(nèi)容。數(shù)據(jù)庫設計包括需求分析階段、概念設計階段、邏輯設計階段和物理設計階段。但題目強調(diào)的是設計包括的內(nèi)容,所以答案為邏輯設計。此題與

38、對應教材類似第三分冊92頁25題.5)在二維表中,元組的 不能再分成更小的數(shù)據(jù)項。答案:分量詳細解答:該知識點考察的是元組的有關內(nèi)容,是我們總結上強調(diào)的重點內(nèi)容。一個實體的所有屬性值叫元組,而一個元組是由n個元組分量組成的,由此可知元組的分量是不能再分成更小的數(shù)據(jù)項。此題與對應教材類似第三分冊91頁14題.6)設變量a和b已正確定義并賦初值。請寫出與a-=a+b等價的賦值表達式_。答案:a=-b詳細解答:該知識點是考查了復合賦值表達式的運算,原表達式等價于:a=a-(a+b),即a=-b.此題與對應教材第三分冊9頁8題。7)若整型變量a和b中的值分別為7和9,要求按以下格式輸出a和b的值:a=

39、7b=9請完成輸入語句:printf(“【7】”,a,b);答案:a=%dnb=%dn詳細解答:該知識點是考查數(shù)據(jù)的輸入輸出格式,屬于識記內(nèi)容,在課堂上多次強調(diào)。此題與對應教材第三分冊9頁5題。8)以下程序的輸出結果【8】。.#include main() int i,j,sum; for(i=3;i=1;i-) sum=0;for(j=1;j=i;j+) sum+=i*j;printf(“%dn”,sum);答案:1詳細解答:該知識點是考查了循環(huán)的嵌套,由于對于i的每一輪循環(huán),sum都重新初始化為0,所以sum的值是i為1這一輪的值,即i為1,j為時,sum的值是0.此題與對應教材第三分冊20頁6題。9)以下程序的輸出結果是【9】。#include main() int j,a=1,3,5,7,9,11,13,15,*p=a+5; for(j=3;j;j-) switch(j) case 1: case 2: printf(%d,*p+); break; case 3: printf(%d,*(-p); 答案: 9911詳細解答:指針p開始指向a5,第一輪循環(huán),j值為3,匹配case 3,打印*(-p),即a4的值

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論