一、選擇題
1. 設有函數定義:( )。
A. B. C. D. 答:A
則以下對函數sub 的調用語句中,正確的是
【解析】函數的參數有兩個,第一個是整型,第二個是字符類型,在調用函數時,實參必須一個是整型,一個是字符型相容的類型(整型)。A 項中97為字符傳入函數,A 項正確。B 項
的
碼,可以作為字符
不是合法字符,字符單引號里面只能有一個字符,B 項錯誤。
函數sub 返回類型為空,即不返回任何值,故C 項中將函數返回值賦給n 是不正確的調用方法,C 項錯誤。D 項為字符串,也不是合法的字符,D 項錯誤。
2. 若想給已定義為int 型的變量a 、b 、c 、d 賦整數1,以下選項中錯誤的語句是( )。
A.d=c,c=b,b=a,a=l; B.d=c=b=a=l;
C.d=(b=c=(a=l); )D.d=l,c=d>b=c,a=b; 答:A
【解析】賦值是將一個常量的值賦給一個變量,A 項中,變量c 初始值未定義,相當于一個未知數給變量d 賦值,不滿足賦值為1的條件。
3. 有以下程序:
程序的運行結果是( )。
A.15, 2 B.15, 15 C.2, 15 D.8, 8 答:A
【解析】本題求數組的最大值和最小值,首先把數組x 首地址的值賦給指針p , 故*p初始值為8, 而p 是地址值,P+1相當于數組中下一元素的地址,在for 循環,是求數組x 對應的最大值和最小值,fl 為最大值,f2為最小值。因此輸出為15, 2。
4. 有以下程序:
程序運行后的輸出結果是( )。
答:A
【解析】main ( )函數中,首先定義兩個結構體STU 類型的變量a ,b , 并對a 完成初始化,然后將a 賦值給b ,使得結構體a ,b 的值都是的功能是將形參結構體指針c 指向的結構體賦值為結構體就是b , 所以實參b 的值被修改為
5. 有以下程序(其中k 的初值為八進制數):
再調用函數函數
由于形參是指針,C 指向的
而a 的值不變,A 項正確。
程序運行后的輸出結果是( )。 A.12 B.11 C.10 D.9 答:D
【解析】k 的初值是八進制數011,轉換為十進制數就是9,在輸出時自增運算符“++”是作為后綴出現的,因此是先輸出9,然后k 的值再自增1。
6. 有以下程序:
程序運行的結果是( )。 A.1, 2, 3, 4 B.1, 0, 7, 0 C.1, 4, 5, 9 D.3, 4, 8, 0 答:B
【解析】由二維數組x 的定義知,數組x 為4行4列。fun 函數中for 循環的作用是將二維數組前4行的對角線元素賦
給
7. 有以下程序:
程序運行后的輸出結果是( )。 A.1
在主函數中定義二維數組
為
所以可以看出對角線元素為1、0、7、0。