1、一個C程序的執行是從() B A、本程序文件的第一個函數開始,到本程序文件的最后一個函數結束 B、本程序的main函數開始,到main函數結束 C、本程序的main函數開始,到本程序文件的最后一個函數結束 D、本程序文件的第一個函數開始,到本程序main函數結束 解析: 通常情況下,函數的命名沒有限制,但main是一個特殊的函數名——每個程序都從main函數的起點開始執行,這意味著每個程序都必須在某個位置包含一個main函數?疾斐绦虻膱绦许樞,答案為B。
2、一個C語言程序是由() D A、若干子程序組成 B、若干過程組成 C、一個主函數和若干子程序組成 D、函數和變量組成 解析: 一個c語言程序,無論其大小如何,都是由函數和變量組成。函數中包含一些語句,已指定所要執行的計算操作;變量用于存儲計算過程中使用的值。函數是C語言編程最小的單位,所以答案為D。
3、以下敘述正確的是() D A、在對一個C程序進行編譯的過程中,可發現注釋中的拼寫錯誤 B、在C程序中,main函數必須位于程序的最前面 C、C程序的每行中只能寫一條語句 D、C語言本身沒有輸入輸出語句 解析: 略
4、一個C程序的編譯過程是() B A、編譯,預處理,匯編,連接 B、預處理,編譯,匯編,連接 C、預處理,匯編,編譯,連接 D、預處理,編譯,連接,匯編 解析: 具體解答請查看 c語言程序編譯過程 ) 50% 50% no-repeat;" height="95" border="0" width="512"> 5以下敘述不正確的是() D A、一個C源程序可由一個或多個函數組成 B、一個C源程序必須包含一個main函數 C、C程序的基本組成單位是函數 D、在C程序中,注釋說明只能位于一條語句的后面 解析: 略
c語言練習題解答-2、c語言運算符、表達式
1、如下所示,執行以下程序段后,變量a,b,c的值分別是() B int x =10, y = 9; int a, b, c; a = (--x == y++)? –-x : ++y; b = x++; c = y; A、a = 9, b = 9, c = 9 B、a = 8, b = 8, c = 10 C、a = 9, b = 10, c = 9 D、a = 1, b = 11, c = 10 解析:本題目主要考察對于自增/自減運算符的理解,自增/自減運算符的使用原則:運算符在變量前則先對變量進行運算,再取變量的值使用;運算符在變量后則先取變量的值使用再進行相應的運算。所以本題目中,--x == y++表達式中,首先將x的值自減再與y值相比較,再對y進行自增,則表達式值為真,所以在三目運算符中要取冒號前的表達式值即—x的值作為終值,++y不予執行,所以a的值為8,此時x的值也為8,則b獲取的是x自增前的值,所以變量b值為8,y值在本段中只自增了一次,所以c的值為10。
2、若有以下定義,int k = 7, x = 12; 則能使值為3的表達式是() D A、x% = (k%=5) B、x% = (k - k%=5) C、x% = k - k%5 D、(x%=k) - (k%=5) 解析:本題目考察運算符的優先級問題。
3、在宏定義#define PI 3.14159中,用宏名PI代替一個() D A、常量 B、單精度數 C、雙精度數 D、字符串 解析:本題目考察對于宏定義的理解,宏定義不檢查語法,在使用上是用宏體替換宏名的操作,所以此處用宏名代替了一個字符串。
4、設有說明:char w; int x ; float y; double z; 則表達式w*x+z-y值的數據類型為() d A、float B、char C、int D、double 解析:不同數據類型間的數據作混合運算時,默認由精度低的向精度高的數據類型進行轉換。
5、有關宏替換的敘述不正確的是() b A、宏替換不占用運行時間 B、宏名無類型 C、宏替換只是字符替換 D、宏名必須用大寫字母表示 解析:宏名與類型是兩個不同的概念
|