- 案例式C語言程序設計教程實驗指導
- 許薇 王淑艷 黃海鷗主編
- 2019-07-29 16:57:03
第一部分 習題解答
第1章 C語言概述
1.1 填空題
1.一個算法應具有的特點是____、____、有零個或多個輸入、有一個或多個輸出、有效性。
2.用高級語言編寫的源程序必須通過____程序翻譯成二進制程序才能執行。這個二進制程序稱為____程序。
3.廣義地說,為解決一個問題而采用的方法和步驟就稱為____。
4.程序的三種基本結構為____、____和____。
1.2 選擇題
1.一個C程序的執行是從____。
A.本程序的main( )函數開始,到main( )函數結束
B.本程序文件的第一個函數開始,到本程序文件的最后一個函數結束
C.本程序的main( )函數開始,到本程序文件的最后一個函數結束
D.本程序文件的第一個函數開始,到本程序main( )函數結束
2.C語言規定,在一個源程序中,main( )函數的位置____。
A.必須在最開始
B.必須在系統調用的庫函數的后面
C.可以任意
D.必須在最后
3.以下敘述不正確的是____。
A.一個C源程序可由一個或多個函數組成
B.一個C源程序必須包含一個main( )函數
C.C程序的基本組成單位是函數
D.在C程序中,注釋說明只能位于一條語句的后面
4.一個C語言程序由____。
A.一個主程序和若干子程序組成
B.函數組成
C.若干過程組成
D.若干子程序組成
5.以下敘述正確的是____。
A.在C程序中,main( )函數必須位于程序的最前面
B.C程序的每行中只能寫一條語句
C.C語言本身沒有輸入/輸出語句
D.在對一個C程序進行編譯的過程中,可發現注釋中的拼寫錯誤
6.算法具有5個特性,以下選項中不屬于算法特性的是____。
A.有窮性
B.可行性
C.簡潔性
D.確定性
7.以下敘述中正確的是____。
A.用C語言實現的算法必須要有輸入和輸出操作
B.用C語言實現的算法可以沒有輸入但必須要有輸出
C.用C語言實現的算法可以沒有輸出但必須要有輸入
D.用C語言實現的算法可以既沒有輸入也沒有輸出
8.以下敘述中正確的是____。
A.C語言比其他語言高級
B.C語言出現的最晚,具有其他語言的一切優點
C.C語言可以不用編譯就能被計算機識別執行
D.C語言以接近英語國家的自然語言和數學語言作為語言的表達形式
9.以下敘述中正確的是____。
A.C程序中的注釋部分可以出現在程序中任意合適的地方
B.花括號“{”和“}”只能作為函數體的定界符
C.構成C程序的基本單位是函數,所有函數名都可以由用戶命名
D.分號是C語言語句之間的分隔符,不是語句的一部分
10.結構化程序由3種基本結構組成,這3種基本結構組成的算法____。
A.可以完成任何復雜的任務
B.只能完成部分復雜的任務
C.只能完成符合結構化的任務
D.只能完成一些簡單的任務
11.下列4組選項中,均不是C語言關鍵字的選項是____。
A.define IF type
B.getc char printf
C.include scanf case
D.while go pow
12.在計算機中,一個字節所包含二進制位的個數是____。
A.2
B.4
C.8
D.16
13.能將高級語言編寫的源程序轉換為目標程序的軟件是____。
A.匯編程序
B.編輯程序
C.解釋程序
D.編譯程序
14.下列敘述中正確的是____。
A.算法的效率只與問題的規模有關,而與數據的存儲結構無關
B.算法的時間復雜度是指執行算法所需要的計算工作量
C.數據的邏輯結構與存儲結構是一一對應的
D.算法的時間復雜度與空間復雜度一定相關
15.算法中,對需要執行的每一步操作,必須給出清楚、嚴格的規定,這屬于算法的____。
A.正當性
B.可行性
C.確定性
D.有窮性
16.下列敘述中錯誤的是____。
A.計算機不能直接執行用C語言編寫的源程序
B.C程序經C編譯程序編譯后,生成后綴為.obj的文件是一個二進制文件
C.后綴為.obj的文件,經連接程序生成后綴為.exe的文件是一個二進制文件
D.后綴為.obj和.exe的二進制文件都可以直接運行
17.下列敘述中正確的是____。
A.一個算法的空間復雜度大,則其時間復雜度也必定大
B.一個算法的空間復雜度大,則其時間復雜度必定小
C.一個算法的時間復雜度大,則其空間復雜度必定小
D.上述3種說法都不對
18.下列敘述中錯誤的是____。
A.計算機不能直接執行用C語言編寫的源程序
B.C語言源程序經C編譯程序編譯后,生成后綴為.obj的文件是一個二進制文件
C.后綴為.obj的文件,經連接程序生成后綴為.exe的文件是一個二進制文件
D.后綴為.obj和.exe的二進制文件都可以直接運行
19.按照C語言規定的用戶標識符命名規則,不能直接出現在標識符中的是____。
A.大寫字母
B.連接符
C.數字字符
D.下畫線
20.下列敘述中錯誤的是____。
A.C語言是一種結構化程序設計語言
B.結構化程序由順序、分支、循環3種基本結構組成
C.使用3種基本結構構成的程序只能解決簡單問題
D.結構化程序設計提倡模塊化的設計方法
21.要把高級語言編寫的源程序轉換為目標程序,需要使用____。
A.編輯程序
B.目標程序
C.診斷程序
D.編譯程序
22.下列敘述中正確的是____。
A.用C程序實現的算法必須要有輸入和輸出操作
B.用C程序實現的算法可以沒有輸出但必須要有輸入
C.用C程序實現的算法可以沒有輸入但必須要有輸出
D.用C程序實現的算法可以既沒有輸入也沒有輸出
23.下列敘述中錯誤的是____。
A.用戶所定義的標識符允許使用關鍵字
B.用戶所定義的標識符應盡量做到“見名知義”
C.用戶所定義的標識符必須以字母或下畫線開頭
D.用戶所定義的標識符中,大、小寫字母代表不同標識
24.下列敘述中錯誤的是____。
A.C語句必須以分號結束
B.復合語句在語法上被看錯一條語句
C.空語句出現在任何位置都不會影響程序運行
D.賦值表達式末尾加分號就構成賦值語句
25.下列不合法的用戶標識符是____。
A.j2_KEY
B.Double
C.4d_a
D._8_
26.以下選項中合法的用戶標識符是____。
A.long
B._2Test
C.3Dmax
D.A.dat
27.下列敘述中正確的是____。
A.程序設計就是編制程序
B.程序的測試必須由程序員自己去完成
C.程序經調試改錯后還應進行再測試
D.程序經調試改錯后不必進行再調試
28.下列敘述中錯誤的是____。
A.C語言源程序經編譯后生成后綴為.obj的目標程序
B.C程序經過編譯、連接步驟之后才能形成一個真正可執行的二進制機器指令文件
C.用C語言編寫的程序稱為源程序,并以ASCII代碼形式存放在一個文本文件中
D.C語言中的每條可執行語句和非執行語句最終都將被轉化成二進制的機器指令
29.以下敘述中正確的是____。
A.C語言的源程序不必通過編譯就可以直接運行
B.C語言中的每條可執行語句最終都將被轉化成二進制的機器指令
C.C源程序經編譯形成的二進制代碼可以直接運行
D.C語言中的函數不可以單獨進行編譯
參考答案
填空題
1.有窮性 確定性
2.編譯 目標
3.算法
4.順序結構 選擇結構 循環結構
選擇題
1.D 2.B 3.C 4.B 5.C 6.C 7.B 8.D 9.A 10.C 11.A 12.C 13.D 14.B 15.C 16.D 17.D 18.C 19.D 20.D 21.D 22.C 23.A 24.C 25.C 26.B 27.C 28.D 29.B