




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1.程序流程圖中帶有箭頭的線段表示的是()。A) 圖元關系B) 數(shù)據(jù)流C) 控制流 D) 調用關系 參考答案:C【解析】在數(shù)據(jù)流圖中,用標有名字的箭頭表示數(shù)據(jù)流。在程序流程圖中,用標有名字的箭頭表示控制流。所以選擇C)。2.結構化程序設計的基本原則不包括()。A) 多態(tài)性B) 自頂向下C) 模塊化D) 逐步求精 參考答案:A【解析】結構化程序設計的思想包括:自頂向下、逐步求精、模塊化、限制使用goto語句,所以選擇A)。3.軟件設計中模塊劃分應遵循的準則是()。A) 低內聚低耦合B) 高內聚低耦合C) 低內聚高耦合D) 高內聚高耦合 參考答案:B【解析】軟件設計中模塊劃分應遵循的準則是高內聚低
2、偶合、模塊大小規(guī)模適當、模塊的依賴關系適當?shù)取DK的劃分應遵循一定的要求,以保證模塊劃分合理,并進一步保證以此為依據(jù)開發(fā)出的軟件系統(tǒng)可靠性強,易于理解和維護。模塊之間的耦合應盡可能的低,模塊的內聚度應盡可能的高。 4.在軟件開發(fā)中,需求分析階段產生的主要文檔是()。A) 可行性分析報告 B) 軟件需求規(guī)格說明書C) 概要設計說明書D) 集成測試計劃 參考答案:B【解析】A)錯誤,可行性分析階段產生可行性分析報告。C)錯誤,概要設計說明書是總體設計階段產生的文檔。D)錯誤,集成測試計劃是在概要設計階段編寫的文檔。B)正確,需求規(guī)格說明書是后續(xù)工作如設計、編碼等需要的重要參考文檔。5.算法的有窮性
3、是指()。A) 算法程序的運行時間是有限的B) 算法程序所處理的數(shù)據(jù)量是有限的C) 算法程序的長度是有限的D) 算法只能被有限的用戶使用 參考答案:A【解析】算法原則上能夠精確地運行,而且人們用筆和紙做有限次運算后即可完成。有窮性是指算法程序的運行時間是有限的。6.對長度為n的線性表排序,在最壞情況下,比較次數(shù)不是n(n1)/2的排序方法是()。A) 快速排序B) 冒泡排序C) 直接插入排序D) 堆排序 參考答案:D【解析】除了堆排序算法的比較次數(shù)是,其他的都是n(n1)/2。7.下列關于棧的敘述正確的是()。A) 棧按"先進先出"組織數(shù)據(jù)B) 棧按"先進后出&q
4、uot;組織數(shù)據(jù)C) 只能在棧底插入數(shù)據(jù)D) 不能刪除數(shù)據(jù)【解析】棧是按"先進后出"的原則組織數(shù)據(jù)的,數(shù)據(jù)的插入和刪除都在棧頂進行操作。8.在數(shù)據(jù)庫設計中,將ER圖轉換成關系數(shù)據(jù)模型的過程屬于()。A) 需求分析階段B) 概念設計階段C) 邏輯設計階段D) 物理設計階段【解析】ER圖轉換成關系模型數(shù)據(jù)則是把圖形分析出來的聯(lián)系反映到數(shù)據(jù)庫中,即設計出表,所以屬于邏輯設計階段。9.有三個關系R、S和T如下:由關系R和S通過運算得到關系T,則所使用的運算為()。A) 并 B) 自然連接 C) 笛卡爾積 D) 交【解析】自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必
5、須是相同的屬性組,并且在結果中把重復的屬性列去掉,所以B)錯誤。笛卡爾積是用R集合中元素為第一元素,S集合中元素為第二元素構成的有序對,所以C)錯誤。根據(jù)關系T可以很明顯的看出是從關系R與關系S中取得相同的關系組所以取得是交運算,選擇D)。10.設有表示學生選課的三張表,學生S(學號,姓名,性別,年齡,身份證號),課程C(課號,課名),選課SC(學號,課號,成績),則表SC的關鍵字(鍵或碼)為()。A) 課號,成績B) 學號,成績C) 學號,課號D) 學號,姓名,成績【解析】學號是學生表S的主鍵,課號是課程表C的主鍵,所以選課表SC的關鍵字就應該是與前兩個表能夠直接聯(lián)系且能唯一定義的學號和課號
6、,所以選擇C)。11.以下敘述中錯誤的是()。A) C語言中的每條可執(zhí)行語句和非執(zhí)行語句最終都將被轉換成二進制的機器指令B) C程序經過編譯、連接步驟之后才能形成一個真正可執(zhí)行的二進制機器指令文件C) 用C語言編寫的程序稱為源程序,它以ASCII代碼形式存放在一個文本文件中D) C語言源程序經編譯后生成后綴為.obj的目標程序【解析】C語言中的非執(zhí)行語句不會被編譯,不會生成二進制的機器指令,所以A)錯誤。由C語言構成的指令序列稱C源程序,C源程序經過C語言編譯程序編譯之后生成一個后綴為.OBJ的二進制文件(稱為目標文件);最后要由"連接程序"把此.OBJ文件與C語言提供的各
7、種庫函數(shù)連接起來生成一個后綴為.EXE的可執(zhí)行文件。12.以下選項中,合法的一組C語言數(shù)值常量是()。A) 12.0Xa234.5e0B) 028.5e30xfC) .1774e1.50abcD) 0x8A10,0003.e5【解析】C語言中八進制整型常量的開頭是數(shù)字0,十六進制整型常量的開頭數(shù)字是0x。C語言中的實型常量有兩種表示形式:小數(shù)形式,小數(shù)形式表示的實型常量必須要有小數(shù)點;指數(shù)形式,以"e"或"E"后跟一個整數(shù)來表示以10為底數(shù)的冪數(shù),且規(guī)定字母e或E之前必須要有數(shù)字,且e或E后面的指數(shù)必須為整數(shù)。B)選項中 028錯誤,八進制中沒有數(shù)字8。
8、C)選項中4e1.5中e后面的指數(shù)不是整數(shù)。D)選項中3.e5小數(shù)點后面缺少數(shù)字。13.以下選項中不合法的標識符是()。A) &aB) FORC) printD) 00【解析】C語言中標識符由字母、下劃線、數(shù)字組成,且開頭必須是字母或下劃線。另外,關鍵字不能作為標識符。因為C語言中區(qū)分大小寫,所以B)選項中的"FOR"可以作為標識符來用。A)選項中含有非法字符&,所以選擇A)。14.若有代數(shù)式(其中e僅代表自然對數(shù)的底數(shù),不是變量),則以下能夠正確表示該代數(shù)式的C語言表達式是()。A) sqrt(fabs(pow(n,x)exp(x)B) sqrt(fabs
9、(pow(n,x)pow(x,e)C) sqrt(abs(nxex)D) sqrt(fabs(pow(x,n)exp(x)【解析】B)選項中函數(shù)pow(x,e)錯誤應該直接使用exp(x)函數(shù)。C)選項中函數(shù)abs(nxex)錯誤,應該使用fabs()返回浮點數(shù)的絕對值。D)選項中pow(x,n)參數(shù)順序錯誤。15.若有定義:double a22;int i0,k18;,則不符合C語言規(guī)定的賦值語句是()A) i(ak)<(ik);B) ia%11;C) aa,iD) i!a;【解析】取模運算符"%",二元運算符,具有左結合性,參與運算的量均為整型。選項B中的a變量是
10、double實型,所以B)不符合規(guī)定。16.有以下程序:#include <stdio.h>main() int s,t,A10; double B6;ssizeof(A); tsizeof(B);printf("%d,%dn",s,t);在VC6.0平臺上編譯運行,程序運行后的輸出結果是()。A) 10,6B) 4,4 C) 2,4 D) 4,8【解析】C語言中利用sizeof()函數(shù)判斷數(shù)據(jù)類型長度,在VC6.0平臺中,整型int占有4個字節(jié),double型數(shù)據(jù)占有8個字節(jié)。17.有以下程序:#include <stdio.h>main() ch
11、ar a,b,c,d; scanf("%c%c",&a, &b); cgetchar(); dgetchar(); printf("%c%c%c%cn",a,b,c,d);當執(zhí)行程序時,按下列方式輸入數(shù)據(jù)(從第1列開始,<CR>代表回車,注意:回車也是一個字符)12<CR>34<CR>則輸出結果是()。A) 1234B) 12C) 1234D) 123【解析】按照從鍵盤輸入的數(shù)據(jù)可以判斷字符1給了變量a,字符2給了變量b,字符<CR>即回車給了變量c,字符3給了變量d。所以打印輸出的結果為D
12、)選項。18.下關于邏輯運算符兩側運算對象的敘述中正確的是()。A) 可以是任意合法的表達式B) 只能是整數(shù)0或非0整數(shù)C) 可以是結構體類型的數(shù)據(jù)D) 只能是整數(shù)0或1【解析】C語言的邏輯運算符比較特別,它的操作數(shù)沒有明確的數(shù)據(jù)類型,可以是任意合法的表達式,所以選擇A)。19.有以下程序:#include <stdio.h>main() int a0,b0,c0,d0;if(a1) b1;c2;else d3;printf("%d,%d,%d,%dn",a,b,c,d);程序輸出()。A) 1,1,2,0B) 0,0,0,3C) 編譯有錯D) 0,1,2,0【
13、解析】本題中if(a1)b1;與else d3; 之間多了語句c2;所以會出現(xiàn)else語句的位置錯誤的編譯失敗提示。20.有以下程序:#include <stdio.h>main()int x1, y0, a0, b0; switch (x) case 1:switch(y)case 0: a; break; case 1: b; break; case 2: a; b; break; case 3: a; b;printf("a%d, b%dn", a, b);程序的運行結果是()。A) a2,b2B) a2,b1C) a1,b1D) a1,b0【解析】cas
14、e常量表達式只是起語句標號作用,并不是該處進行條件判斷。在執(zhí)行switch語句時,根據(jù)switch的表達式,找到與之匹配的case語句,就從此case子句執(zhí)行下去,不在進行判斷,直到碰到break或函數(shù)結束為止。所以執(zhí)行內層switch(y)時只執(zhí)行了a,此時a的值為1。然后執(zhí)行外層case 2語句的a;b;a為2,b為1。所以結果為B)。21.以下程序段中的變量已正確定義:for( i0; i<4; i,i )for( k1; k<3; k ); printf("*" );程序段的輸出結果是()。A) *B) *C) * D) *【解析】由于內層循環(huán)for(
15、k1; k<3; k)后面直接跟了空語句";"所以在循環(huán)內部什么操作也不做,跳出外層循環(huán)后執(zhí)行打印語句,所以打印了一個"*",選擇C)。22.有以下程序段:#include <stdio.h>int i, n;for( i0; i<8; i )n rand() % 5;switch (n)case 1:case 3: printf("%d n", n); break;case 2:case 4: printf("%d n", n); continue;case 0: exit(0);prin
16、tf("%d n",n);以下關于程序段執(zhí)行情況的敘述,正確的是()。A) for循環(huán)語句固定執(zhí)行8次B) 當產生的隨機數(shù)n為4時結束循環(huán)操作C) 當產生的隨機數(shù)n為1和2時不做任何操作D) 當產生的隨機數(shù)n為0時結束程序運行【解析】case常量表達式只是起語句標號作用,并不是該處進行條件判斷。在執(zhí)行switch語句時,根據(jù)switch的表達式,找到與之匹配的case語句,就從此case子句執(zhí)行下去,不再進行判斷,直到碰到break或函數(shù)結束為止。簡單的說break是結束整個循環(huán)體,而continue是結束單次循環(huán)。B)選項中當產生的隨機數(shù)n為4時要執(zhí)行打印操作。C)選項中
17、當產生的隨機數(shù)為1和2時分別執(zhí)行case3與case4后面語句的內容。由于存在break語句所以for循環(huán)不是固定執(zhí)行8次,執(zhí)行次數(shù)與產生的隨機數(shù)n有關系。23.有以下程序:#include <stdio.h>int f(int x);main() int n1,m;mf(f(f(n); printf("%dn",m);int f(int x) return x*2; 程序運行后的輸出結果是()。A) 8B) 2C) 4D) 1【解析】第一次調用mf(f(f(1),第二次為mf(f(2),第三次為mf(4),即返回值為8。24.以下敘述中錯誤的是()。A) 可以
18、給指針變量賦一個整數(shù)作為地址值B) 函數(shù)可以返回地址值C) 改變函數(shù)形參的值,不會改變對應實參的值D) 當在程序的開頭包含頭文件stdio.h時,可以給指針變量賦NULL【解析】不能將一個整數(shù)直接賦給指針變量作為地址,所以A)是錯誤的。函數(shù)的返回值可以是地址,即指針。函數(shù)調用中形參值的變化不會傳遞給實參。25.設已有定義:float x;,則以下對指針變量p進行定義且賦初值的語句中正確的是()。A) int *p(float)x;B) float *p&x;C) float p&x;D) float *p1024;【解析】指針是用來存放地址的變量,用 (類型名 *指針變量名)的
19、形式定義。賦值時應將某個變量地址即&x 賦給指針變量,所以選擇B)。26.以下數(shù)組定義中錯誤的是()。A) int x231,2,3,4,5,6;B) int x30;C) int x31,2,3,4,5,6;D) int x231,2,3,4,5,6;【解析】D)選項中x23定義的是一個兩行三列的二維數(shù)組,而在給數(shù)組元素賦值時卻賦成了三行,所以錯誤。27.有以下程序:#include <stdio.h>void fun( int a, int n) int i, t;for(i0; i<n/2; i) tai; aian1i; an1it; main() int k
20、10 1,2,3,4,5,6,7,8,9,10,i;fun(k,5);for(i2; i<8; i) printf("%d",ki);printf("n");程序的運行結果是()。A) 321678B) 876543C) 1098765D) 345678【解析】本題中的函數(shù)fun()的功能是將數(shù)組k中前5個元素倒序,所以返回后數(shù)組k中的元素排列是5,4,3,2,1,6,7,8,9,10。所以打印輸出k2到k7元素的值,即321678,所以選擇A。28.有以下程序:#include <stdio.h>#define N 4void fun
21、(int aN, int b)int i; for (i0; i<N; i) bi aii aiN1i;main()int xNN1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12, 13,14,15,16, yN, i; fun (x, y); for (i0; i<N; i) printf("%d,", yi); printf("n"); 程序運行后的輸出結果是()。A) 3,1,1,3,B) 12,3,0,0,C) 0,1,2,3,D) 3,3,3,3,【解析】本題中由fun函數(shù)可知,b0a00a03143,b1a11
22、12671, b2a222111101, b3a333116133。所以主函數(shù)中打印y數(shù)組元素的值為A)選項。29.設有定義:char s81; int i0;,以下不能將一行(不超過80個字符)帶有空格的字符串正確讀入的語句或語句組是()。A) gets(s);B) while(sigetchar()!'n');si'0';C) scanf("%s",s);D) do scanf("%c",&si); while(si!'n'); si'0';【解析】字符串的輸入不能使用scanf
23、("%s",s);而應該使用gets(s)。30.設有定義:char p'1', '2', '3',*qp; ,以下不能計算出一個char型數(shù)據(jù)所占字節(jié)數(shù)的表達式是()。A) sizeof(p)B) sizeof(char)C) sizeof(*q)D) sizeof(p0)【解析】根據(jù)題目中的定義可以知道sizeof(p),計算的是數(shù)組p中所有元素所占用的字節(jié)數(shù),而不是char型數(shù)據(jù)所占字節(jié)數(shù)。31.有以下程序:#include <stdio.h>#include <string.h>main()ch
24、ar str20"One*World","One*Dream!",*pstr1; printf("%d,",strlen(p); printf("%sn",p);程序運行后的輸出結果是()。A) 10,One*Dream!B) 9,One*Dream!C) 9,One*WorldD) 10,One*World【解析】p是指向二維字符數(shù)組第二行One*Dream!的數(shù)組指針,所以長度是10,打印輸出的也是該字符串。32.有以下程序:#include <stdio.h>main() char s"
25、012xy08s34f4w2";int i, n0;for ( i0; si!0; i ) if(si > '0' && si < '9') n;printf("%dn",n);程序運行后的輸出結果是()。A) 0B) 3C) 7D) 8【解析】本題中遇到""字符循環(huán)結束,所以只統(tǒng)計""之前的數(shù)字字符,所以為3。33.有以下程序:#include <stdio.h>fun(int x, int y) static int m0, i2;im1; mixy
26、; return m;main() int j1, m1, k;kfun(j,m); printf("%d,",k);kfun(j,m); printf("%dn",k);執(zhí)行后的輸出結果是()。A) 5, 11B) 5, 5C) 11, 11D) 11, 5【解析】聲明靜態(tài)局部變量:函數(shù)調用結束后,其占用的存儲單元不釋放,在下次該函數(shù)調用時,該變量保留上一次函數(shù)調用結束時的值。本題子函數(shù)fun中的變量 i和m均為靜態(tài)局部變量。所以第一次調用fun函數(shù),返回m的值為5,第二次再調用fun函數(shù)時,i的值為3,m的值已經是5了,所以執(zhí)行im1,i的值變?yōu)?,
27、mixy91111。34.在C語言中,只有在使用時才占用內存單元的變量,其存儲類型是()。A) auto和staticB) extern和registerC) auto和register D) static和register【解析】auto:函數(shù)中的局部變量,動態(tài)地分配存儲空間,數(shù)據(jù)存儲在動態(tài)存儲區(qū)中,在調用該函數(shù)時系統(tǒng)會給它們分配存儲空間,在函數(shù)調用結束時就自動釋放這些存儲空間。register:為了提高效率,C語言允許將局部變量的值放在CPU中的寄存器中,這種變量叫"寄存器變量",只有局部自動變量和形式參數(shù)可以作為寄存器變量。extern:外部變量(即全局變量)是在函數(shù)
28、的外部定義的,它的作用域為從變量定義處開始,到本程序文件的末尾。如果外部變量不在文件的開頭定義,其有效的作用范圍只限于定義處到文件終了。static:靜態(tài)局部變量屬于靜態(tài)存儲類別,在靜態(tài)存儲區(qū)內分配存儲單元。在程序整個運行期間都不釋放。35.下面結構體的定義語句中,錯誤的是()。A) struct ord int x;int y;int z; struct ord a;B) struct ord int x;int y;int z; struct ord a;C) struct ord int x;int y;int z; a;D) struct int x;int y;int z; a;【解
29、析】A)選項struct ord int x;int y;int z; struct ord a;錯誤,不能在定義結構體的同時,又用結構體類型名定義變量。應該寫成B)選項或者D)選項的格式。36.有以下程序:# include <stdio.h>typedef struct int b, p; A;void f(A c) /* 注意:c是結構變量名 */ int j;c.b 1; c.p2;main() int i;A a1,2;f(a);printf("%d,%dn", a.b, a.p);程序運行后的輸出結果是()。A) 2,4B) 1,2 C) 1,4 D) 2,3【解析】結構體變量可以作為函數(shù)的參數(shù)和返回值。作為函數(shù)的實參時,可以實現(xiàn)函數(shù)的傳值調用。當使用結構體變量作為函數(shù)的形參時,實參也應該是結構體變量名以實現(xiàn)傳值調用,實參將拷貝副本給形參,在被調用函數(shù)中改變形參值對于調用函數(shù)中的實參沒有影響。所以選擇B)。37.以下敘述中正確的是()。A) 在C語言中,預處理命令行都以"#"開頭B) 預處理命令行必須位于C源程序的起始位置C) #include <stdio.h>必須放在C程序的開頭D) C語言的預處理不能實現(xiàn)宏定義和條件編譯的功能【解析】預處理命令是以"#"號開頭的命令,它
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 四川幼兒師范高等??茖W?!洞蟮販y量學實驗》2023-2024學年第二學期期末試卷
- 晉中師范高等??茖W?!毒W(wǎng)絡及其計算》2023-2024學年第二學期期末試卷
- 福建對外經濟貿易職業(yè)技術學院《大學生勞動教育》2023-2024學年第二學期期末試卷
- 天津藝術職業(yè)學院《文獻目錄與信息檢索》2023-2024學年第二學期期末試卷
- 2025海南省安全員A證考試題庫及答案
- 貴州中醫(yī)藥大學時珍學院《安全經濟學》2023-2024學年第二學期期末試卷
- 2024-2025學年遼寧省七校協(xié)作體高一上學期12月月考歷史試卷
- 2025江西省建筑安全員-A證考試題庫及答案
- 漯河醫(yī)學高等??茖W?!秺W林匹克文化》2023-2024學年第二學期期末試卷
- 遼寧輕工職業(yè)學院《阿拉伯文學選讀》2023-2024學年第二學期期末試卷
- 分布式計算平臺設計與實現(xiàn)
- 團聚體與土壤有機質轉化-洞察分析
- 公務車輛定點加油服務投標文件(技術方案)
- 膝關節(jié)鏡手術后康復
- 安徽工程大學《回歸分析》2023-2024學年第一學期期末試卷
- 人教版物理八年級下冊 專項訓練卷 (一)力、運動和力(含答案)
- T-YACX 002-2024 梔子花茶團體標準
- 口腔科放射防護制度
- 2024年公開招聘事業(yè)單位工作人員報名登記表
- 2024年河南鄭州航空港經濟綜合實驗區(qū)招考高頻500題難、易錯點模擬試題附帶答案詳解
- 風動和電動工具市場洞察報告
評論
0/150
提交評論