第 1 頁:選擇題 |
第 3 頁:程序填空題 |
第 4 頁:程序修改題 |
第 5 頁:程序設計題 |
一、選擇題(每小題1分,共40分)
1 [單選題] 以下選項中不能在c語言程序中用作用戶標識符的是( )。
A.auto
B.scanf
C.Float
D._3_14
參考答案:A
參考解析:
c語言的標識符是由字母、數字和下劃線組成,第一個字符不能是數字,只能是字母或下劃線;A、B、C、D都是合法的標識符;auto是C語言的關鍵字,不能用作用戶標識符,故選項A錯誤;scanf是標準庫函數名,可以用作用戶標識符,只是在使用標識符的地方不能包含stdio.h頭文件,故選項B正確;C語言的標識符區(qū)分大小寫,F1oat與關鍵字f1oat不同,可以用作用戶標識符,故選項C正確;j-14是合法的用戶標識符,故選項D正確;因此答案選A。
2 [單選題] 下面描述中錯誤的是( )。
A.系統總體結構圖支持軟件系統的詳細設計
B.軟件設計是將軟件需求轉換為軟件表示的過程
C.數據結構與數據庫設計是軟件設計的任務之一
D.PAD圖是軟件詳細設計的表示工具
參考答案:A
參考解析:
詳細設計的任務是為軟件結構圖中而非總體結構圖中的每一個模塊確定實現算法和局部數據結構,用某種選定的表達工具表示算法和數據結構的細節(jié),所以A錯誤。
3 [單選題] 有以下程序:
程序運行后的輸出結果是( )。
A.1002,ZhangDa,1202.0
B.1002,ChangRong,1202.0
C.1001,ChangRong,1098.0
D.1001,ZhangDa,1098.0
參考答案:D
參考解析:
本題考查結構體的相關操作以及傳值、傳址的區(qū)別,該題中調用f函數后,會生成參數a的一個副本,而不會改變a的值,所以a值維持原值,選項D正確。
4 [單選題] 下列數據結構中,不能采用順序存儲結構的是( )。
A.非完全二叉樹
B.堆
C.隊列
D.棧
參考答案:A
參考解析:
根據完全二叉樹的性質6,滿二叉樹和完全二叉樹可以按層序進行順序存儲,但一般的二叉樹不適用。堆可以用一維數組來存儲也可以用完全二叉樹來直觀地表示堆的結構。隊列、棧本身就是順序存儲的。故本題答案為A選項。
5 [單選題] 以下關于C語言的敘述中正確的是( )。
A.C語言的數值常量中夾帶空格不影響常量值的正確表示
B.C語言中的變量可以在使用之前的任何位置進行定義
C.在C語言算術表達式的書寫中,運算符兩側的運算數類型必須一致
D.C語言中的注釋不可以夾在變量名或關鍵字的中間
參考答案:D
參考解析:
C語言的數值常量中不能夾帶空格,所以A錯誤。C語言中的變量都必須先定義再使用,對變量的定義通常放在函數體內的前部,但也可以放在函數外部或復合語句的開頭,不能隨便放置,所以B錯誤。在C語言中運算符兩側的運算數據類型可以不一致,且結果與精度較高的保持一致,所以C錯誤。
6 [單選題] 若有定義:
float x=1.5;
int a=1,b=3,c=2;
則正確的switch語句是( )。
參考答案:A
參考解析:
switch語句的一般形式為: switch(表達式){
case常量表達式1:語句1;
ease常量表達式2:語句2;
default:語句n;
}
其中switch后的表達式只能是整型或字符型,故C選項錯誤;ease后面必須是常量表達式,所以D選項錯誤;switch()右括號后面不能有分號,放選項B錯誤,因此答案選A。
7 [單選題] 有以下程序:
運行時,若輸入123450<回車>,則輸出結果是( )。
A.66656
B.6566456
C.66666
D.6666656
參考答案:B
參考解析:
switch語句的執(zhí)行流程是:首先計算switch后面圓括號中表達式的值,然后用此值依次與各個case的常量表達式比較,若圓括號中表達式的值與某個case后面的常量表達式的值相等,就執(zhí)行此case后面的語句,執(zhí)行后遇break語句就退出switch語句;若圓括號中表達式的值與所有case后面的常量表達式都不等,則執(zhí)行default后面的語句。然后退出。所以輸入l時打印65,輸入2時打印6,輸入3時打印64,輸入4時打印5,輸入5時打印6。
8 [單選題] 有以下程序:
程序執(zhí)行后的輸出結果是( )。
A.Prphsbn
B.Prohsbn
C.Progsbn
D.Program
參考答案:B
參考解析:
(*q)++是q所指的字符加l,q++就是指針移到下一個字符。因此B選項正確。
9 [單選題] 有以下程序:
程序運行后的輸出結果是( )。
A.9,18
B.8,11
C.7,11
D.10,14
參考答案:D
參考解析:
第一次循環(huán)a的值為1,滿足條件,執(zhí)行b+=a,與a+=2,則b的值變?yōu)?,a的值變?yōu)?。執(zhí)行a++,a的值為4,滿足條件進入第二次循環(huán),執(zhí)行完循環(huán)體后b的值為7,a的值為6。執(zhí)行a++,a的值為7,滿足條件進入第三次循環(huán),執(zhí)行完循環(huán)體后b的值為14,a的值為9。執(zhí)行a++.a的值變?yōu)?0,不滿足條件,循環(huán)結束。所以選擇D選項。
10 [單選題] 定義無符號整數類為UInt,下面可以作為類UInt實例化值的是( )。
A.-369
B.369
C.0.369
D.整數集合{1,2,3,4,5}
參考答案:B
參考解析:
只有B選項369可以用無符號整數來表示和存儲。A選項-369有負號,選項C 0.369是小數都不能用無符號整數類存儲。選項D是一個整數集合得用數組來存儲。
11 [單選題] 若有定義:
double a=22:int i=0,k=18;
則不符合C語言規(guī)定的賦值語句是( )。
A.a:a++,i++;
B.i=(a+k)<=(i+k);
C.i=a%11;
D.i=!a;
參考答案:C
參考解析:
自增、自減操作符適用于char、short、int、long、float、double等類型,故選項A正確;賦值操作符 “=”的優(yōu)先級小于比較操作符“<=”,所以選項B等價于:i=((a+k)<=(i十k));,即將后面比較操作符的結果賦值給i,故選項B也正確;“!”是邏輯非運算符,i=!a表示將a表達式的值取反,賦值給i,故選項D也正確;求模運算符“%”的操作數只能是整數,故選項C錯誤,因此答案選C。
12 [單選題] 軟件按功能可以分為應用軟件、系統軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是( )。
A.學生成績管理系統
B.C語言編譯程序
C.UNIX操作系統
D.數據庫管理系統
參考答案:A
參考解析:
軟件按功能可以分為:應用軟件、系統軟件、支撐軟件。操作系統、編譯程序、匯編程序、網絡軟件、數據庫管理系統都屬于系統軟件。所以B、C、D都是系統軟件,只有A是應用軟件。
13 [單選題] 在下列模式中,能夠給出數據庫物理存儲結構與物理存取方法的是( )。
A.外模式
B.內模式
C.概念模式
D.邏輯模式
參考答案:B
參考解析:
數據庫系統的三級模式是概念模式、外模式和內模式。概念模式是數據庫系統中全局數據邏輯結構的描述,是全體用戶公共數據視圖。外模式也稱子模式或用戶模式,它是用戶的數據視圖,給出了每個用戶的局部數據描述。內模式又稱物理模式,它給出了數據庫物理存儲結構與物理存取方法,所以選擇B。
14 [單選題] 設有語句:printf(“%2d\n”,2010);,則以下敘述正確的是( )。
A.程序運行時輸出2010
B.程序運行時輸出20
C.程序運行時輸出10
D.指定的輸出寬度不夠,編譯出錯
參考答案:A
參考解析:
printf()函數格式化字符串的一般形式為:[標志][輸出最小寬度][精度][長度]類型。對于”-\n”表示結果以十進制形式輸出帶符號的整數,數字2表示輸出的最小寬度為2,若實際位數多于2,則按實際位數輸出,所以程序輸出2010,故答案選A。
15 [單選題] 有以下程序:
程序運行后的輸出結果是( )。
A.2344
B.4332
C.1234
D.1123
參考答案:B
參考解析:
在for(i=0;i<12;i++)c[s[i]]++中,數組元素s[i]的值作為數組c的下標,當退出循環(huán)時,數組c的4個元素的值分別為4、3、3、2。因此B選項正確。
16 [單選題] 有三個關系R、S和T如下:
則由關系R和S得到關系T的操作是( )。
A.自然連接
B.交
C.投影
D.并
參考答案:A
參考解析:
自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且在結果中把重復的屬性列去掉,所以根據T中元組可以判斷R和S做的是自然連接操作。
17 [單選題] 有以下程序(strcat函數用于連接兩個字符串):
程序運行后的輸出結果是( )。
A.IJK
B.ABCDE\OFG\OIJK
C.ABCDIJK
D.EFGIJK
參考答案:C
參考解析:
a中包含兩個‘\0’,遇到第一個‘\0’時就表示字符串a結束。字符串處理函數strcat(字符數組a,字符數組b),功能是連接兩個字符數組中的字符串,把字符串b連接到a的后面,結果放在字符數組a中。連接時將字符串a后的‘\0’取消,只在新串最后保留一個‘\0’。本題相當于將“ABCD”和“UK”連接。因此C選項正確。
18 [單選題] 有以下程序:
程序運行后的輸出結果是( )。
A.1.6.2,1,
B.8,7,3,1,
C.4,7,5,2,
D.1,6,5,7,
參考答案:D
參考解析:
首先對二維數組進行賦值操作,a[0][0]、a[0][1]、…、a[3][2]、a[3][3]的值為1、4、…、6、l。通過for語句和if語句,對二維數組各列元素進行由小到大的排序操作,程序最后通過for語句輸出二維數組對角線上的元素。因此D選項正確。
19 [單選題] 下面描述中.不屬于軟件危機表現的是( )。
A.軟件過程不規(guī)范
B.軟件開發(fā)生產率低
C.軟件質量難以控制
D.軟件成本不斷提高
參考答案:A
參考解析:
軟件危機主要表現在:軟件需求的增長得不到滿足;軟件開發(fā)成本和進度無法控制;軟件質量難以保證;軟件不可維護或維護程度非常低;軟件的成本不斷提高;軟件開發(fā)生產率的提高趕不上硬件的發(fā)展和應用需求的增長。所以選擇A。
20 [單選題] 以下選項中,與k=n++完全等價的表達式是( )。
A.k=n,n=n+1
B.n=n+1,k=n
C.k=++n
D.k+=n+1
參考答案:A
參考解析:
本題考查后綴自增++運算符,n++表示n的當前值參與運算后,再自增1,所以表達式k=n++等價于k=n,n=n+1,故答案選A。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: